BASIC4MCU | 질문게시판 | 아트메가 7세그먼트 질문입니다!
페이지 정보
작성자 프리덤E 작성일2022-12-02 11:38 조회650회 댓글0건본문
첫 번째 버튼을 누르면 7세그먼트가 9999까지 표시되고
두 번째 버튼을 누르면 7세그먼트가 상수값 만큼만 작동되고 꺼지도록 설정하고 싶은데 계속 오류가 걸립니다 도와주세요 ㅠㅠ
#include <io.h>
#include <delay.h>
void main(void){
int k;
int seg_data[10]={63,9,91,79,102,109,126,39,127,103};
unsigned int one, two, three, four, count=0;
unsigned int i, speed=10;
DDRA=0xff;
DDRC=0xff;
DDRD=0x00;
while(1){
if(PIND==0x01){
four = (count%10000)/1000;
three = (count%1000)/100;
two = (count%100)/10;
one = (count%10);
for (i=1;i<speed;i++){
delay_ms(5);
PORTA=seg_data[four];
PORTC=0x0e;
delay_ms(5);
PORTA=seg_data[three];
PORTC=0x0e;
delay_ms(5);
PORTA=seg_data[two];
PORTC=0x0e;
delay_ms(5);
PORTA=seg_data[one];
PORTC=0x0e;
}
count++;
if(count>=10000) count =0;
}
else if(PIND==0x02){
for(k=0;k<25;k++){
four = (count%10000)/1000;
three = (count%1000)/100;
two = (count%100)/10;
one = (count%10);
for (i=1;i<speed;i++){
delay_ms(5);
PORTA=seg_data[four];
PORTC=0x0e;
delay_ms(5);
PORTA=seg_data[three];
PORTC=0x0e;
delay_ms(5);
PORTA=seg_data[two];
PORTC=0x0e;
delay_ms(5);
PORTA=seg_data[one];
PORTC=0x0e;
}
count++;
if(count>=10000) count =0;
}
}
}
}
댓글 0
조회수 650등록된 댓글이 없습니다.