Page 421 - 완) I MDP 프로젝트 작품 보고서(전체과 1학년)1.6
P. 421
나. 전역변수 및 초기 설정
#include <mega128.h> //Atmega128 사용시 필요한 헤더
#include <delay.h> //딜레이 사용시 필요한 헤더
#include <stdio.h> //c언어의 전반적인 기능을 사용시 필요한 헤더
#define MAX_CARD 7 //NFC태그의 수. 3층 4층 5층용 2개씩에 모든층 1개로 총 7개예정
#define ALL_FLOOR 5 //총 층의 수. 1~5층이므로 5개층
#define UPDW PORTF.6 //올라갈지 내려갈지 신호를 F6포트로 출력
#define OPCL PORTF.7 //열지 닫을지 신호를 F7포트로 출력
#define ST_FLOOR PORTD.7 //그 층에 멈출지 움직일지 신호를 D7포트로 출력
#define ECT PIND.4 //권한 부여를 시작하는 스위치가 달린 포트.
unsigned char card_enable[MAX_CARD][ALL_FLOOR]={ //카드가 갈 수 있는 층의 배열.
{1,1,1,0,0},{1,1,1,0,0}, //3층카드. (1,2,3층 갈 수 있음)
{1,1,0,1,0},{1,1,0,1,0}, //4층카드. (1,2,4층 갈 수 있음)
{1,1,0,0,1},{1,1,0,0,1},{1,1,1,1,1}}; //5층카드와 모든층 카드 (1,2,5층),(모든층)
unsigned char car_enable[ALL_FLOOR]={1,1,0,0,0}; //차가 갈 수 있는 층들.(3,4,5층태그필요)
char up_go_out[ALL_FLOOR]={0,0,0,0,0}; //층별로 달려있는 올라가는 버튼의 배열. 눌리면 1
char dw_go_out[ALL_FLOOR]={0,0,0,0,0}; //층별로 달려있는 내려가는 버튼의 배열. 눌리면 1
char up_go_in[ALL_FLOOR]={0,0,0,0,0}; //카 안에 있는 올라가는 버튼의 배열. 눌리면 1
char dw_go_in[ALL_FLOOR]={0,0,0,0,0}; //카 안에 있는 내려가는 버튼의 배열. 눌리면 1
char up_go[ALL_FLOOR]={0,0,0,0,0}; //층별 버튼과 카 버튼의 합계. 총 올라가는 배열
char dw_go[ALL_FLOOR]={0,0,0,0,0}; //층별 버튼과 카 버튼의 합계. 총 내려가는 배열
char card_number[MAX_CARD][9] ={ {'1','8','E','F','E','5','3','D'}, //NFC태그들의 값 저장.
{'0','8','B','9','C','E','F','C'},
{'1','8','E','4','C','6','2','9'},
{'0','C','7','3','C','E','8','E'},
{"00000000"},{"00000000"},{"00000000"}}; //태그
//추가로 받으면 추가예정.
char data[9]; //시리얼 통신으로 받을 데이터. 문자열이므로 배열사용
unsigned char dw_led=0x80; //내려갈 때 켜지는 LED. 액티브 로우 사용. OR게이트 사용
unsigned char int5en=0; //권한부여시 사용하는 변수. 1이면 권한부여 스위치 활성화
unsigned char al1=10,al2=10,al3=10; //권한부여시 사용하는 변수
unsigned char now_floor=0,up=0,dw=0,udstop=0,rlstop=0,i; //모터제어시 사용하는 변수.
unsigned char getch_USART0(void); //NFC리더기로 값 읽어오는 함수
void set_USART0(void); NFC리더기로 값을 읽어 올 때 호출하는 함수
void key (void); //키메트릭스를 이용하여 모든 버튼의 값을 읽어오는 함수
void door_open(void); //문을 여는 함수
void door_close(void); //문을 닫는 함수
void set_leds(void); //LED의 점등 점멸을 제어하는 함수
void set_go(void); //세팅하는 함수
인천전자마이스터고등학교
- 414 -