Trích:
Nguyên văn bởi nhanh0112
Mình viết lại đoạn code lấy từ trang chaokhun và có chỉnh sửa một chút nhé 
Nếu bạn sử dụng thì chỉnh sửa lại cho phù hợp (ở đây mình chỉ viết dưới dạng thuật toán)
Code:
key[]=-1//xoa mang key[] ve -1
for(i=0;i<4;i++) /* 4-DIGIT scanning */
{
position = digit;
bus_led = buffer[i];//data_led
delay_ms(5)
bus_led = off;
/*phan lay ma phim*/
if (RB5==1)
key[i] = 1; //cac phim dc bam se dc set len 1 trong mang key
digit<<=1;
}
if (key[] != -1)//kiem tra mang key[i], co cai nao khac -1 thi thuc hien
{
if(flag1== 0)
{
flag1=1;
delay = 50;//thiet lap thoi gian delay phim
for(i=0;i<4;i++)
{
switch(key[i])
{
case (0): /* key position 0*/
break;
case (1): /* key position 1*/
break;
case (2): /* key position 2*/
break;
case (3): /* key position 3*/
break;
}
}
}
}
if (flag1 !=0)//sau khi bam nut thi delay phim
{
delay--;
if(delay==0)flag1=0;
}
tham khảo http://www.kmitl.ac.th/~kswichit/clock/clock.htm
|
cám ơn bạn rất nhiều,mình đã tìm cái này liên tục gần 2 tháng nay rùi mệt mỏi vô cùng.
bạn có thể để lại yahoo hoặc mail để có gì thì mình trao đổi được ko?
p/s:theo mình hiểu thì mảng key[]={0,1,2,3}
thế dòng lệnh này mình ko hiểu lém:key[]=-1//xoa mang key[] ve -1
giá trị của mảng =-1 khi nào?
cám ơn!