8051키트를 이용한 사거리 신호등 구현
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
해당 자료는 10페이지 까지만 미리보기를 제공합니다.
10페이지 이후부터 다운로드 후 확인할 수 있습니다.

소개글

8051키트를 이용한 사거리 신호등 구현에 대한 보고서 자료입니다.

목차

8 Introduction

8 상태동작 순서도

8 각 기능 블록 모형

8 각 주요기능 검증방안

8 결론

본문내용

ED 소등
C_8255_B=0x0;
C_8255_B=0x0;
DisplayTemp();
CdsFunc();
}
}
void state2()
{
if(state_var==2){
state_var=3;
Command(C_DD_ADDR_SET|0x1E);
Cput(0x32);
Glcd1_Yaddr_Set(0);
Glcd2_Yaddr_Set(0);
for(PageX=0;PageX<8;PageX++){
Glcd1_Xaddr_Set(PageX);
Glcd2_Xaddr_Set(PageX);
for(AddrY=0;AddrY<128;AddrY++){
if(AddrY<64) Glcd1_Bput(0x0); // 좌측 패널 디스플레이
else Glcd2_Bput(0x0); // 우측 패널 디스플레이
}
}
for(PageX=0;PageX<8;PageX++){
Glcd1_Xaddr_Set(PageX+1);
Glcd2_Xaddr_Set(PageX+1);
Glcd1_Yaddr_Set(0);
Glcd2_Yaddr_Set(0);
for(AddrY=0;AddrY<128;AddrY++){
if(AddrY<64) // 좌측 패널 디스플레이
Glcd1_Bput(West_Left[PageX][AddrY]);
else // 우측 패널 디스플레이
Glcd2_Bput(West_Left[PageX][AddrY]);
}
}
for(ch_loop=0;ch_loop<500;ch_loop++){//동-서 방향의 세번째 상태
if(Timer_OverFlow_Number>=3610*10 | KeyFlag==1 | serial_flag==1){
TR0=0;
KeyFlag=0;
serial_flag=0;
Timer_OverFlow_Number=0;
TR0=1;
Line4();
Put_String(\" \");
break;
}
for(loop=0;loop<100;loop++){
C_8255_B=0x00;
C_8255_A=0x04;
C_8255_C=0x02;
delay_ms(1);
C_8255_A=0x00;
if(ch_loop%2==0)
{
C_8255_B=0x40;
C_8255_C=0x10;
delay_ms(1);
}
C_8255_B=0x40;
C_8255_C=0x20;
delay_ms(1);
C_8255_B=0x00;
C_8255_A=0x02;
delay_ms(1);
C_8255_A=0x20;
C_8255_C=0x40;
delay_ms(1);
}
}
for(ch_loop=0;ch_loop<3;ch_loop++){//동-서 방향의 세번째 노란색
if(Timer_OverFlow_Number>=3610*3 ){
TR0=0;
Timer_OverFlow_Number=0;
TR0=1;
Line4();
Put_String(\" \");
break;
}
for(loop=0;loop<100;loop++){
C_8255_B=0x00;
C_8255_A=0x04;
C_8255_C=0x02;
delay_ms(1);
C_8255_A=0x40;
C_8255_B=0x40;
C_8255_C=0x08;
delay_ms(1);
C_8255_A=0x00;
if(ch_loop%2==0){
C_8255_B=0x40;
C_8255_C=0x10;
delay_ms(1);
}
C_8255_B=0x40;
C_8255_C=0x20;
delay_ms(1);
C_8255_B=0x00;
C_8255_A=0x02;
delay_ms(1);
C_8255_A=0x20;
C_8255_C=0x40;
delay_ms(1);
}
}
C_8255_A=0x0; // 도트 메트릭스 내의 모든 LED 소등
C_8255_B=0x0;
C_8255_B=0x0;
DisplayTemp();
CdsFunc();
}
}
void state3()
{
if(state_var==3){
state_var=4;
Command(C_DD_ADDR_SET|0x1E);
Cput(0x33);
Glcd1_Yaddr_Set(0);
Glcd2_Yaddr_Set(0);
for(PageX=0;PageX<8;PageX++){
Glcd1_Xaddr_Set(PageX);
Glcd2_Xaddr_Set(PageX);
for(AddrY=0;AddrY<128;AddrY++){
if(AddrY<64) Glcd1_Bput(0x0); // 좌측 패널 디스플레이
else Glcd2_Bput(0x0); // 우측 패널 디스플레이
}
}
for(PageX=0;PageX<8;PageX++){
Glcd1_Xaddr_Set(PageX+1);
Glcd2_Xaddr_Set(PageX+1);
Glcd1_Yaddr_Set(0);
Glcd2_Yaddr_Set(0);
for(AddrY=0;AddrY<128;AddrY++){
if(AddrY<64) // 좌측 패널 디스플레이
Glcd1_Bput(South_Left[PageX][AddrY]);
else // 우측 패널 디스플레이
Glcd2_Bput(South_Left[PageX][AddrY]);
}
}
for(ch_loop=0;ch_loop<500;ch_loop++){//남-북 방향의 첫번째 상태
if(Timer_OverFlow_Number>=3610*10 | KeyFlag==1 | serial_flag==1){
TR0=0;
KeyFlag=0;
serial_flag=0;
Timer_OverFlow_Number=0;
TR0=1;
Line4();
Put_String(\" \");
break;
}
for(loop=0;loop<100;loop++){
C_8255_A=0x00;
C_8255_B=0x20;
C_8255_C=0x02;
delay_ms(1);
if(ch_loop%2==0){
C_8255_B=0x10;
C_8255_C=0x02;
delay_ms(1);
}
C_8255_B=0x00;
C_8255_A=0x40;
C_8255_C=0x04;
delay_ms(1);
C_8255_A=0x02;
C_8255_C=0x20;
delay_ms(1);
C_8255_A=0x20;
C_8255_C=0x40;
delay_ms(1);
}
}
for(ch_loop=0;ch_loop<3;ch_loop++){// 남-북

키워드

  • 가격3,000
  • 페이지수44페이지
  • 등록일2011.01.02
  • 저작시기2007.6
  • 파일형식한글(hwp)
  • 자료번호#416700
본 자료는 최근 2주간 다운받은 회원이 없습니다.
다운로드 장바구니