PIC Vietnam

PIC Vietnam (http://www.picvietnam.com/forum/index.php)
-   Cơ bản về vi điều khiển và PIC (http://www.picvietnam.com/forum/forumdisplay.php?f=8)
-   -   dùng 10 nut nhấn điêu khiển xuất led 7 đoạn dùng pic 16F877 (http://www.picvietnam.com/forum/showthread.php?t=9672)

nguoiyeudt 05-06-2011 12:14 PM

dùng 10 nut nhấn điêu khiển xuất led 7 đoạn dùng pic 16F877
 
em đang làm đồ án dùng 10 nút nhấn.ứng với 1 nút nhấn là xuất 1 giá trị la led 7 đoạn. em đang gặp vấn đề trong việc cần tới 10 input nên dùng ngắt hay sử dụng PSP hay co cách nào khác mong các bác giúp đỡ. em sắp phải nộp báo cáo rồi cac pro giup em với. đa tạ cac pro trước

ngochoicd112 05-06-2011 05:12 PM

Bạn hãy dùng ngắt timer or ngắt ngoài rồi trong ct ngắt sẽ gọi hàm kiểm tra nut nhấn ra(cái này kết nối phần cứng hơi phức tạp 1 tí thôi).
Nhung vs yêu cầu của bạn thì mình nghĩ không cần dùng ngắt vẫn thuuwcj hiện được thôi.
While(true)
{
if(!input1)
{ portd=ma[0]};
else if(!input2)
{ portd=ma[1]}
else if(!input3)
{ portd=ma[2]};
else if(!input4)
{ portd=ma[3]};
else if(!input5)
{ portd=ma[4]};
else if(!input6)
{ portd=ma[5]};
else if(!input7)
{ portd=ma[6]};
else if(!input8)
{ portd=ma[7]};
else if(!input9)
{ portd=ma[8]};
else if(!input10)
{ portd=ma[9]};

}

nguoiyeudt 05-06-2011 05:45 PM

ừm thks bạn vấn đề chính của mình là ở phần cứng có tới 10input mà mỗi port có tối đa 8pin => phai dung tới 2 port. nhân tiện cho mình hỏi lệnh này int n; n=porta ; ko hiêu tai sao lai bao lỗi

nguyeson 05-06-2011 06:35 PM

chỉ cần 4 đầu vào là bạn có thể kiểm tra dc 10 nut bấm của bạn mà. nếu đầu vào của bạn là portd đầu ra là portb chẳng hạn bạn so sánh nếu portd =1 thi portb =1 cứ như thế bạn có thể so sánh đến 10 hay bao nhiểu tùy ý!!!
còn lệnh n = porta bao lỗi có thể do ban chưa khai báo porta là đầu vào
chúc thành công!

hein_ts 07-06-2011 01:21 AM

Một port có 8 chân. quét ma trận phím 4X4 được 16 công tác đó bạn?

truonghuy21 25-11-2011 12:09 PM

nút nhấn ở đây là nhấn rồi thả.nếu viết code như trên nhấn mới xuất còn thả thì k xuất.Có cách nào nhấn rồi thả mà vẫn hiểi thị k bạn


Múi giờ GMT. Hiện tại là 03:14 AM.

Tên diễn đàn: vBulletin Version 3.8.11
Được sáng lập bởi Đoàn Hiệp.
Copyright © PIC Vietnam