17-02-2014, 04:43 PM | #2 |
Đệ tử 1 túi
Tham gia ngày: Oct 2013
Bài gửi: 20
: |
bài toán của mình giờ đơn giản thế này!! mong mọi người giúp cho.
porB 3pin đầu dc treo qua điện trở 10K nối với VCC + và nối với 3 hàng, 3pin tiếp theo nối với 3 cột của bàn phím 3X3 mình muốn code sao cho khi nhấn 1 nút bất kỳ thì một trong 3 pin đầu về 0V, hiển thị lên LED. #include <main.h> #define row1 pin_b0 #define row2 pin_b1 #define row3 pin_b2 #define col1 pin_b3 #define col2 pin_b4 #define col3 pin_b5 const char m[10]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x9 0}; int nghin, tram, chuc, donvi; int16 d; void hienthiso(int c) ............ void main() { set_tris_b(0x07);// row1=row2=row3=1; col1=col2=col3=0 int a; while(true) { if((pin_b0==0)|(pin_b1==0)|(pin_b2==0))a=30; else a=10; hienthiso(a); delay_ms(1000); } } chả hiểu mình code kiểu gì mà nó chỉ hiện a=10 mặc dù đã nhấn nút bàn phim, đo điện áp thì đúng khi có nhấn nút thì 1 trong các pin(0=>>2) băng 0V. vậy tại sao?? nó phải hiển thị 30 khi nhấn 1 nút chứ?? |
|
|