![]() |
|
Tài trợ cho PIC Vietnam |
RTOS và Thuật toán với PIC RTOS và Các thuật toán dùng cho PIC/dsPIC/PIC32 Mod: phamminhtuan |
|
Ðiều Chỉnh | Xếp Bài |
![]() |
#7 |
Đệ tử 1 túi
Tham gia ngày: Jul 2007
Bài gửi: 15
: |
Mình chưa bao giờ giao tiếp với bàn phím cả nhưng còn việc chống nảy hay deal with chattering thì mình cũng làm vài lần rồi. Ở các đoạn code trên mình thấy các bạn đều sử dụng delay để chống chattering thực sự mà nói thì cách này không chính xác lắm trong mọi thời điểm. Mình đã có lần được nghe qua một người Nhật trong lúc training H8 micro đã nói về cách chống chattering dùng cho máy in đó là sử dụng biến đếm count chứ không dùng delay. Sau này khi sử dụng count thay vì dùng delay mình thấy cách của người Nhật đó thật mới là cách tốt. Các bạn hãy thử cách xây dựng một hàm đại loại như sau:
bit checkbutton () { unsigned int i=0; while (input==1) { i++; if (i>=precount) {return(1);goto exit;} else return(0); } i=0; return(0); exit:{} } //precount là giá trị đặt trước giới hạn cho biến đếm count //input là đầu vào. Nếu ấn nút thì là 1 //hàm checkbutton sẽ chỉ trả về giá trị 1 khi ấn nút thực sự. thay đổi nội dung bởi: Tuấn Anh CVN, 21-08-2007 lúc 11:42 PM. Lý do: post khi chưa viết xong |
![]() |
![]() |
|
|
![]() |
||||
Ðề tài | Người gửi | Chuyên mục | Trả lời | Bài mới |
Góp ý: Kỹ thuật và trình bày | falleaf | Đóng góp ý kiến | 6 | 03-03-2008 09:36 PM |
Hỏi về kỹ thuật bảng | mechanics | Cơ bản về vi điều khiển và PIC | 1 | 05-10-2006 10:58 AM |
Thuật toán với PIC | falleaf | dsPIC - Bộ điều khiển tín hiệu số 16-bit | 3 | 16-02-2006 09:22 AM |
Diễn đàn nhìn luộm thuộm quá | noisePIC | Đóng góp ý kiến | 2 | 13-07-2005 11:58 PM |
Kỹ thuật bảng | falleaf | Cơ bản về vi điều khiển và PIC | 0 | 06-07-2005 05:49 PM |