Page 196 - 3-3
P. 196
/**** 정의문****/
// 첫번째 FND(0.01 초 단위 정의)
#define FND1 0xfe
// 두번재 FND(0.1 초 단위 정의)
#define FND2 0xfd
// 세번째 FND(1 초 단위 정의)
#define FND3 0xfb
// 네번째 FND(10 초 단위 정의)
#define FND4 0xf7
// 시작점 센서 정의
#define SENS_START PINF.0
// 도착점쪽 센서 정의
#define SENS_END PINF.1
/**** 변수 정의****/
/* 기본 동작 제어 변수*/
// 시간 저장 변수
unsigned int sec = 0;
// 동작 제어 변수
bit run = 0;
// 중지 제어 변수
bit stop = 0;
//RFID 태그 상태 저장 변수
bit rfid_status = 0;
/**** 함수 정의****/
//FND 출력 함수
void fndOut(void)
{
//fnd 새그먼트 0~9 저장 배열
static unsigned char fnd[] =
{0xc0, 0xf9, 0xa4, 0xb0, 0x99, 0x92, 0x82, 0xd8, 0x80, 0x90};
//fnd FAIL 출력 위한 배열
static unsigned char fail[] = {0xc7, 0xcf, 0x88, 0x8e};
// 네 번째 FND(10 초 단위 선택)
PORTA = FND4;
//stop 이 1 이면 fail, 아니면 10 초 단위 출력
PORTC = (stop)?fail[3]:fnd[sec/1000];
// 딜레이
delay_us(2476);
- 196 -