스위치 누를 때마다 1 증가하는 카운터
스위치를 누를때마다 1씩 증가하는 카운터입니다.
전체 소스 Codevision 용
/********************************************* 버튼 누를 때마다 카운터 1 증가 PORTA ==> FND1 에 출력
PORTB.0 스위치 입력
Tools : Codevision http://watsim.tistory.com *********************************************/
#include <mega128.h>
void FndDisplay1(char byteData); void FndDisplay1(char byteData){
switch( byteData){ case 0: PORTA = 0b10001000; break; case 1: PORTA = 0b11101011; break; case 2: PORTA = 0b01001100; break; case 3: PORTA = 0b01001001; break; case 4: PORTA = 0b00101011; break; case 5: PORTA = 0b00011001; break; case 6: PORTA = 0b00011000; break; case 7: PORTA = 0b11001011; break; case 8: PORTA = 0x00| 0x08; break; case 9: PORTA = 0x01|0x08; break; default : PORTA = 0b11111000; break; }
}
void main(void) { unsigned char chLastPinB=0; char byteA=0;
DDRA=0xFF; DDRB=0x00;
while (1) { // 키가 눌러지면 if(0x01 != (PINB & 0x01) ) { if( 0x01 != (chLastPinB & 0x01) ) { byteA ++ ; } chLastPinB = 1; } else { chLastPinB = 0; }
FndDisplay1(byteA%10); } } |
주요 부품
ATMEGA128 TACT SWITCH |
'CodeVision 용 소스' 카테고리의 다른 글
LED 순차 점등 하기 PORTC.0 => PORTC.7 순서로 (2) | 2011.02.05 |
---|---|
1초마다 1칸씩 LED 시프트하기 (0) | 2011.01.28 |
스위치 누르면 ‘2’, 떼면 ‘1’ 을 FND에 표시 (0) | 2011.01.27 |
0000 ~ 9999 까지 FND 4 자리 출력하기 (0) | 2011.01.26 |
000 ~ 999 까지 FND 3개 출력하기 (0) | 2011.01.26 |