|
Tài trợ cho PIC Vietnam |
Cơ bản về vi điều khiển và PIC Những bài hướng dẫn cơ bản nhất để làm quen với vi điều khiển PIC |
|
Ðiều Chỉnh | Xếp Bài |
30-08-2011, 02:43 AM | #1 |
Đệ 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 |
|
|