Nguyên văn bởi kitty511
Xem bài viết
#include <mega16.h> //khai báo thư viện cho atmega16
#include<delay.h> //khai báo thư viện cho hàm delay
// Declare your global variables here
char num[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x9 0};
// các mã hex ứng với các số từ 0-9
char dv;
char ch;
char i;
void main(void)
{
// Declare your local variables here
PORTA=0x00; // PORTA la 8 output
DDRA=0xFF;
PORTB=0x00; //PORTB la 2 input để điều khiển việc quét led
DDRB=0x03;
dv=0; //biến đơn vị gán bằng 0
ch=0; //biến chục gàn bằng 0
while (1) //vòng lặp vô hạn
{
// Place your code here
if(ch>9) //đặt điều kiện nếu số đó lớn hơn 100 thì quay trở về đếm bắt đầu từ 0
{
dv=0;
ch=0;
}
else
{
if( dv>9) nếu biến đơn vị >9 thì tăng lên biến hàng chục lên 1 đơn vị
{
ch++ ;
dv=0 ;
}
else
{
for(i=0;i<=240;i++)
{
PORTB.0=0;
PORTA=num[dv];
PORTB.1=1;
delay_us(300);
PORTB.1=0;
PORTA=num[ch];
PORTB.0=1;
delay_us(300);
}
dv++;
}
}
};
}
Comment