View Single Post
Old 30-08-2011, 02:43 AM   #1
nangvang
Đệ tử 1 túi
 
Tham gia ngày: Nov 2010
Bài gửi: 23
:
quét 4 led 7 đoạn dùng delay

các bác ơi em đang làm ví dụ về quét 4 con led đoạn nhưng khi hiển thị lên nó k theo ý muốn.
em định quet4 con led tăng dần đếm từ 0 - 9999 nhưng k hiểu sao khi nạp chương trình và mô phỏng thì tất cả 4con led đều hiển thị cùng 1 số và nó tăng giống nhau
các bác sửa code giúp em với

#include <16F877A.h>
#device *=16
#use delay(clock = 20M)
#FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT

#use fast_io(b)
#byte portb=0x6
#use fast_io(d)
#byte portd=0x8


int8 font[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x9 0};
int ch,dv,tr,ng;

void main ()
{
int i;
set_tris_b(0);
set_tris_d(0);

portd=255;

ng= i/1000;
tr= (i%1000)/100;
ch= (i%100)/10;
dv= i%10 ;

portb=(font[dv]);
portd=(0x01);
delay_us(1000);
portd=(0x00);
portb=(font[ch]);
portd=(0X02);
delay_us(1000);
portd=(0x00);
portb=(font[tr]);
portd=(0x04);
delay_us(1000);
portd=(0x00);
portb=(font[ng]);
portd=(0X08);
delay_us(1000);
portd=(0x00);

while(1)
{
for (i=0;i<=9999;i++)
{
portd=0x00;
portb=(font[i]);
delay_ms(200);
}

}

}



em cảm ơn các bác rất nhiều
File Kèm Theo
File Type: rar mach.rar (9.7 KB, 185 lần tải)
nangvang vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn