Mình dùng cổng COM để truyền dữ liệu từ PC xuống AVR và ngược lại. Sử dụng các checkbox để tắt mở các led (8led tương ứng 8 checkbox), tập hợp trạngt thái các checkbox được 1 chuỗi 8 kí tự (0101...); đồng thời gắn thêm 1 kí tự "a" vào để báo cho AVR biết là kết thúc việc truyền.
Ở code AVR mình nhận từng kí tự "0", "1" rồi đưa vào mảng char[8], sau khi kết thúc nhận thì xuất tín hiệu ra 8led. Nhưng xảy ra hiện tượng trễ: truyền lần 2 xuống thì led hiện thị kết quả của lần 1.
Mình có sử dụng 1 biến để getchar() rồi putchar() để truyền từ AVR->PC thì thấy bình thường và không có hiện tượng trễ như trên.
Mọi người cho mình ý kiến tham khảo xem sửa lỗi trễ kia thế nào?
và có nhất thiết cần gắn thêm kí tự "a" rồi mới truyền từ PC xuống AVR không?
Ở code AVR mình nhận từng kí tự "0", "1" rồi đưa vào mảng char[8], sau khi kết thúc nhận thì xuất tín hiệu ra 8led. Nhưng xảy ra hiện tượng trễ: truyền lần 2 xuống thì led hiện thị kết quả của lần 1.
Mình có sử dụng 1 biến để getchar() rồi putchar() để truyền từ AVR->PC thì thấy bình thường và không có hiện tượng trễ như trên.
Mọi người cho mình ý kiến tham khảo xem sửa lỗi trễ kia thế nào?
và có nhất thiết cần gắn thêm kí tự "a" rồi mới truyền từ PC xuống AVR không?
Comment