View Single Post
Old 20-09-2010, 09:04 AM   #4
namqn
Trưởng lão PIC bang
 
Tham gia ngày: Feb 2006
Nơi Cư Ngụ: Tp. HCM, Việt Nam
Bài gửi: 3,025
:
Send a message via Yahoo to namqn
Trích:
Nguyên văn bởi 0903579509 View Post
Tôi đang sử dụng 2 con PIC6F877A truyền dữ liệu cho nhau. Để chống vấn đề sai số khi truyền và nhận thường kiểm tra như sau:

putc(1 ký tự);
c = getc();

Trong trường hợp việc truyền và nhận không hoàn hão thì pic bị treo tại dòng lệnh C = getc()
Bác nào có cách nào giải quyết điều này xin chỉ giáo
Cám ơn nhiều.
Bạn có thể thay dòng c = getc() bởi một đoạn code, trong đó bạn kiểm tra cờ nhận trong 1 khoảng thời gian cho trước (100 ms chẳng hạn), nếu hết thời gian mà bạn không thấy cờ nhận được bật thì thoát, còn nếu cờ nhận được bật thì việc dùng hàm getc() để nhận ký tự là an toàn.

Thân,
__________________
Biển học mênh mông, sức người có hạn.

Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau:
http://www.picvietnam.com/forum/showthread.php?t=1263
namqn vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn