Thông báo

Collapse
No announcement yet.

Lỗi mạch rs485 với stm32

Collapse
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • Lỗi mạch rs485 với stm32

    Hix, chiêu nay em vừa test cái mạch 485,

    Stm32->max485(1)->max485(2)->comusb( )->máy tính

    Truyền uart chuẩn rồi đã test

    Max485(1) chân 3, 4 cho lên +5v để send

    Max485(2) chân 3, 4 cho xuống gnd để nhận

    Cả 2 max đều có điện trở 120 ôm đầu cuối.

    Truyền gửi đúng dữ liệu luôn, thế nhưng khi mạng rỗi thì max485(2) luôn đưa lên máy tính ký tự rỗng, em cũng đã thử phân cực đường truyền rồi nhưng ko được. Kiểu như thế này, điện trở đầu cuối là 120 ôm còn R có giá trị 470 ôm, nguồn 5+V

    +5v->R(470 ôm)->R đầu cuối(120 ôm)->R(470 ôm)->gnd

    Thêm nữa là khi em cho chân 4 của max485 không nối gì thì tất nhiên mức logic của nó ko xác định dẫn đến mạch 485 truyền lung tung, ký hiệu gửi lên máy tính cũng lung tung. như vậy là đúng rồi
    Khi nối chân 4 của max485 lên nguồn hoặc xuóng đất lập tức mạch đúng ko truyền gì
    Còn khi nối vào chân TX của chip thì cứ ko truyền thì tự động max485 truyền liên tục byte 0. ( chẳng hiểu vì sao nữa) vì truyền mỗi uart thì chuẩn 100% rồi, ko biết lỗi kiểu gì

    Còn đây là hình ảnh trên terminal nhận( em ko biết cách post ảnh trên diễn đàn)

    ttnghiabk.bmp

    Vậy mọi người cho em hỏi là làm thế nào để max485(2) không nhận dữ liệu lung tung khi mạng rỗi,nghĩa là mạch của em có gì sai sót hay tính hiệu truyền uart( quên chân truyền tx của uart em khởi tạo ở chế độ output push pull)

  • #2
    hix, ko ai trả lời chắc tại thấy đơn giản quá. Đành tự xử vậy, tại mình cứng nhắc quá
    sau khi truyền xong cho chân 2,3 xuống 0 thế là dừng truyền, tuy nhiên mất byte cuối, truyền thêm 1 byte nữa khỏi mất cái trước

    Comment

    Về tác giả

    Collapse

    ttnghiabk Tìm hiểu thêm về ttnghiabk

    Bài viết mới nhất

    Collapse

    Đang tải...
    X