BASIC4MCU | 질문게시판 | 박옥현님 네이버 질문에 답달아주신거 추가질문입니다 .ㅠ
페이지 정보
작성자 힘듭니다힘이 작성일2018-12-01 17:15 조회3,452회 댓글0건
https://www.basic4mcu.com/bbs/board.php?bo_table=gac&wr_id=6124
본문
// DateTime : 2018-12-01 오후 4:46:02// by Ok-Hyun Park//#include <avr/io.h>#define F_CPU 16000000UL#include <util/delay.h>//char seg[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7c,0x07,0x7f,0x67};//char RX0_char(void){ while(!(UCSR0A&0x80)); return UDR0; }//char RX1_char(void){ while(!(UCSR1A&0x80)); return UDR1; }//void TX0_char(char c){ while(!(UCSR0A&0x20)); UDR0=c; }//void TX1_char(char c){ while(!(UCSR1A&0x20)); UDR1=c; }//void TX0_STR(char*s){ while(*s)TX0_char(*s++); }//void TX1_STR(char*s){ while(*s)TX1_char(*s++); }//void init(){ i=0; count=3000; PORTB=0; PORTC=0; PORTG=0; }//int main(void){char mode=0,r,c; int i=0,count=0;DDRC=0x0ff; DDRG=0x0f; DDRB=0x10;UCSR0B=0x18; UBRR0L=103; // 9600//UCSR1B=0x18; UBRR1L=103; // 9600while(1){if(UCSR0A&0x80){r=UDR0;if(r=='1'){ mode=1; init(); }if(r=='2'){ mode=2; init(); }if(r=='3'){ mode=3; init(); }}//if(count){if(mode==1){if(++i>=250){ i=0; PORTB^=0x10; }}if(mode==2){PORTC=seg[c+1]; PORTG=8>>c; if(++c>3)c=0;}if(mode==3){if(++i>=250){ i=0; PORTB^=0x10; }}if(--count==0)init();}_delay_ms(1);}}이 코드에 외부 콘솔 telnet같은거에서
1.Test LED // LED 모두 3초 On 후 Off
2.Test FND // FND 3초동안 ‘1234’ 디스플레이 후 Off
3.Test Buzzer // Buzzer 소리 3초 동안 On 후 Off
4.Test All // 위, 1, 2, 3번 프로그램 한꺼번에 실행위 글로 질문드렸었는데 ㅠ.. 코드가 너무 고급스러워서
어디까지 해주신건지 알수가 없습니다.. 혹시 시간 괜찮으시다면 해설좀 가능해주셨으면 합니다..
자꾸 염치불구없이 죄송하네요
댓글 0
조회수 3,452등록된 댓글이 없습니다.