Ðề tài: LCD va HEx
View Single Post
Old 28-04-2011, 02:22 PM   #2
tdm
Đệ tử 7 túi
 
Tham gia ngày: May 2005
Bài gửi: 258
:
Trích:
Nguyên văn bởi tomato2711 View Post
void hienthi()
{
lcd_putcmd(0xc0); //xóa
printf(lcd_putchar," "); //xóa
lcd_putcmd(0xc0); //xóa
lcd_putchar(a);// doc gia tri nut nhan lên man hinh LCD
}

Em vừa xóa thử 3 dòng trong hienthi của tdm, thì LCD hiển thị nút nhấn nhanh hơn, nên ko bit2 3 dòng có tác dụng gì? (biết là có 1 lệnh ép con trỏ về đầu dòng)
Em sửa lại code hiển thị để LCD hiển thị 11 số,
void hienthi()
{

lcd_putchar(a);// doc gia tri nut nhan lên man hinh LCD
i=i+1;
if (i>12)
{
i=0;
lcd_putcmd(0x01);
printf(lcd_putchar,"gia tri phim:");
lcd_putcmd(0xc0);
}
}
nhưng ko hiểu sao:
1/ số đầu tiên lại ko hiển thị ngay ô đầu dòng, mà hiển thị ô kế bên (khi nhập lần 2 mới đc đầu dỏng)
2/ phím nhấn có lúc lại hiển thị số double( khi nhấn 1 lần nhưng lại hiển thị liên tục 2 số, thỉnh thoảng bị )
int a,i=0x00;//gán i=0x00 ngay tại đầu ct sẽ hết lỗi (1)
lỗi (2):
viết lại như sau:
while(bit_test(PORTB,4))
{
}
delay_ms(10);//chong nay phim
while(bit_test(PORTB,5))
{
}
delay_ms(10);//chong nay phim
while(bit_test(PORTB,6))
{
}
delay_ms(10);//chong nay phim
while(bit_test(PORTB,7))
{
}
delay_ms(10);//chong nay phim
chèn thêm lệnh delay_ms(10) sau mỗi lần thoát khỏi while
__________________
viết chương trình cho vdk chạy ổn định là cả một vấn đề.
tdm vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn