|
Tài trợ cho PIC Vietnam |
Cơ bản về vi điều khiển và PIC Những bài hướng dẫn cơ bản nhất để làm quen với vi điều khiển PIC |
|
Ðiều Chỉnh | Xếp Bài |
15-05-2009, 05:20 PM | #2 |
Đệ tử 6 túi
Tham gia ngày: Jul 2007
Bài gửi: 146
: |
bạn có thể dùng ngắt ngoài cộng với timer để biết được độ rộng xung, khi có ngắt ngoài bạn hãy set cho timer chạy và tràn trong khoảng 20ms, 600us<<20ms<25ms, trong trình xử lý ngắt của timer bạn có thể xóa cờ ghi rằng mình đã nhận dữ liệu để loại bỏ các xung nhiễu, khi kết thúc xung bạn hãy đọc giá trị timer,đừng tắt timer nhé và ghi lại bit đó vào mảng, đầy mảng dữ liệu thì tắt timer đi và dựng cờ nhận đủ dữ liệu lên. bạn sẽ thấy là timer được dùng vào 2 việc, 1 là để biết độ rộng xung(cứ mỗi lần có ngắt ngoài ta lại set lại 1 lần mà) => giá trị bit, 2 là dùng để làm time out với những xung nhiễu (vì nếu nó truyền ko đủ 12 bit trong 20 ms là cho nó biến luôn ). trả lời thế này hơi khó hiểu nhỉ, nhưng cố chịu khó tư duy một chút nhé.
__________________
mạch nạp - kit phát triển - linh kiện điện tử www.PNLabvn.com |
|
|