View Single Post
Old 01-10-2010, 08:32 PM   #7
phamtrongvn
Nhập môn đệ tử
 
Tham gia ngày: Jan 2010
Bài gửi: 8
:
Em có đoạn code này, không biết nó sai ở đâu?

Em viết xong, và thử mô phỏng nó thì nó chạy lung tung hết, mọi người xem hộ nó sai ở đâu cái. em muốn sử dụng phương pháp quét led đẻ đỡ tốn chân

// viet chuong trinh cho led 7 doan hien thi tu 00 - 99 dieu khien bang RC0 va RC1 noi PORTB.
#include <16F877A.h>
#include <def_16f877a.h>
#bit RC0 = 0x07.0
#bit RC1 = 0x07.1
#use delay(clock=20000000)
const char ma7seg[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x9 0};
char giaima (char x)
{
char y;
y = ma7seg[x];
return (y);
}
void hienthi(char chuc,dv)
{
PORTB=chuc; //hien thi hang chuc
RC1=1; //chon led hang chuc
delay_ms(10); //thoi gian tre
PORTB=dv; //hien thi hang don vi
RC0=1;
delay_ms(10);
}
void main()
{
char i=0; //khai bao bien dem
char chuc=0;
char dv=0;
char chuc7s;
char dv7s;
int j=0;
// khai bao PORTB va RC0 va RC1 la dau ra
TRISB=0;
TRISC0=0;
TRISC1=0;
while (true)
{
while (i<=99)
{
for (j=0;j<=99;j++)
{
chuc = i/10;
dv = i%10;
chuc7s = giaima(chuc);
dv7s = giaima(dv);
hienthi(chuc7s,dv7s );
}
j=0;
i++;
}
}
}


Các bác sửa giúp em với . nếu được thì mô phỏng luôn giúp em
Thanks!
phamtrongvn vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn