- Ở đây mình sử dụng AVR Atmega8, Cảm biến hồng ngoại, hiển thị bằng led 7 thanh
- Nguồn sử dụng 5V
- Cảm biến hồng ngoại
- Led Phát hồng ngoại
Code Mạch Đếm Sản Phẩm
#include
#include"delay.h"
unsigned char led[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
unsigned int i=0;
void led7seg(int number)
{
unsigned char n,t,c,dv;
unsigned char Co = 0;
n=number/1000;
t=(number%1000)/100;
c=(number%100)/10;
dv=number%10;
// ban data vao so hang nghin
PORTC=0x00;
if(n==0)
{
PORTD=0xff;
}
else
{
Co = 1;
PORTD = led[n];
}
PORTC.2=1;
delay_ms(1);
// ban data vao so hang tram
PORTC=0x00;
if((Co==0)&(t==0))
PORTD=0xff;
else
{
Co = 1;
PORTD=led[t];
}
PORTC.3=1;
delay_ms(1);
// ban data vao so hang chuc
PORTC=0x00;
if((Co==0)&(c==0))
PORTD=0xff;
else
{
Co = 1;
PORTD=led[c];
}
PORTC.4=1;
delay_ms(1);
// ban data vao so hang don vi
PORTC=0x00;
PORTD=led[dv];
PORTC.5=1;
delay_ms(1);
}
void main(void)
{
PORTB=0xFF;
DDRB=0x00;
PORTC=0x00;
DDRC=0xff;
PORTD=0xFF;
DDRD=0xFF;
while (1)
{
if(PINB.0==0)
{
delay_ms(10);
if(PINB.0==0)
{
while(PINB.0==0)
{
led7seg(i);
}
i++;
if(i==9999)
{
i=0;
}
}
}
led7seg(i);
}
}
Chúc các bạn thành công!
Like và Chia sẻ cho bạn bè nếu bạn thấy hay và hữu ích
( Nguyên lý + Code chuẩn) Link Mediafire
Khi nhấn nút "Tải Về Máy", bạn sẽ vào trang quảng cáo, vui lòng chờ 5 giây. Nút hiện ra ở góc phải phía trên, nhấn vào để đến trang download
Theo dientuphancung chia sẻ