Page 564 - 2
P. 564
{
min = min - 1;
sec = 59;
}
}
count = 0;
}
}
interrupt [EXT_INT4] void ext_int4(void)
{
if(flag == 0) // 외부인터럽트가 허용되면
{
flag = 1; // 외부인터럽트 불허
if(i > 0) // 목숨이 0 을 넘었으면 목숨 - 1;
i--;
else
i = 0; // 아니면 0
if(i == 0) // 목숨이 0 이면 타이머 0
{
sec = 0;
min = 0;
}
life = seg[i]; // 목숨표시
}
}
< 게임장 코드>--------------------------------------------
/* LCD 핀 설정 : RS(PORTG.0) RW(PORTG.1) E (PORTG.2) */
#include <mega128.h>
#include <delay.h>
#define CL 0x01 // 초기화
#define L2 0xC0 // 2 번 라인
#define CC 0x02 // 커서 초기화
#define RFT 0x1C // Display 우측 시프트
#define LFT 0x18 // " 좌측 시프트
#define DON 0x0c // " 켜기
#define DOFF 0x08 // " 끄기
#define GR PORTA.1 // 초록불을 PORTA.1 로 설정
#define RED PORTA.2 // 삘간 불을 PORTA.2 로 설정
#define MEL PORTA.0 // 멜로디모듈을 PORTA.0 으로 설정
#define motor PORTA.3 // 서보모터의 신호핀을 PORTA.3 으로 설정
void lcd_cmd(unsigned char cmd);
void lcd_init();
void lcw(unsigned char ch);
void lcd_str(unsigned char *str);
- 564 -