Добавил:
lelik
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Лабораторные МПр / код / lab3 / Lab - automat / src / eint
.c/***************************************
*
* LETI traning 2011
*
***************************************/
#include "LPC17xx.h"
#include "eint.h"
#include "leds.h"
#include "GLCD.h"
#include "states.h"
extern int led;
int state;
extern char* c="Hello";
char* cc="Goodbye";
//--external interrupt:
void eint0_init(void) {
LPC_PINCON->PINSEL4 |= (1<<20); //connect eint0 to pin
LPC_SC->EXTMODE = 1;
NVIC_EnableIRQ((IRQn_Type) EINT0_IRQn);
}
//---
void EINT0_IRQHandler (void) __irq {
LPC_SC->EXTINT = 1;
GLCD_Clear(White);
switch (state){
case STATE_HELLO:
GLCD_SetTextColor(Black);
GLCD_DisplayString(1,1,(unsigned char*)cc);
state= STATE_GOODBYE;
break;
case STATE_GOODBYE:
GLCD_SetTextColor(Black);
GLCD_DisplayString(1,1,(unsigned char*)c);
state= STATE_HELLO;
break;
case STATE_HELLO_CV:
GLCD_SetTextColor(Blue);
GLCD_DisplayString(1,1,(unsigned char*)cc);
state= STATE_GOODBYE;
break;
default:break;
} }