BASIC4MCU | 질문게시판 | 답변 : atmega16 빨리누르기 게임
페이지 정보
작성자 master 작성일2019-12-09 20:24 조회3,197회 댓글0건
https://www.basic4mcu.com/bbs/board.php?bo_table=gac&wr_id=11101
본문
// MCU BASIC: https://www.basic4mcu.com// DateTime : 2019-12-09 오후 8:24:16// by Ok-Hyun Park//#include <avr/io.h>#include <util/delay.h>//int main(void){char sw1_flag=0 ,sw2_flag=0; // 스위치 누름 체크용 프래그char dir1_flag=1,dir2_flag=1; // 초기값 왼쪽 쉬프트int i=1,dir1=1,u=1,dir2=1,cnt1=0,cnt2=0;DDRA=0xff; PORTA=0xff; DDRB=0xff; PORTB=0xff;DDRD=0x0C; PORTD=0x0C; // LEDwhile(1){if((PIND&0x01)==0){if(sw1_flag==0){ sw1_flag=1; // 하강엣지 검출PORTA=0xFF<<i;i+=dir1;if(i==8)dir1=-1;if(i==1)dir1=1;if(++cnt1>=57){PORTD=0x04; while(1); // LED1 점등, 종료}_delay_ms(1);}}else{if(sw1_flag){ sw1_flag=0; _delay_ms(1); } // 상승엣지 검출}//-----------------------------------------if((PIND&0x02)==0){if(sw2_flag==0){ sw2_flag=1;PORTB=0xFF<<u;u+=dir2;if(u==8)dir2=-1;if(u==1)dir2=1;if(++cnt2>=57){PORTD=0x08; while(1); // LED2 점등, 종료}_delay_ms(1);}}else{if(sw2_flag){ sw2_flag=0; _delay_ms(1); } // 상승엣지 검출}}}
댓글 0
조회수 3,197등록된 댓글이 없습니다.