Thông báo

Collapse
No announcement yet.

Truyền dữ liệu bằng usart thông qua max232

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

  • Truyền dữ liệu bằng usart thông qua max232

    Em đang làm một mạch đo nhiệt độ bằng cách sử dụng ATmega16 và LM35. Em muốn truyền số liệu tới máy tính nên em dùng thêm 1 con max232 để điều chỉnh điện áp. Tuy nhiên, khi mô phỏng trên Proteus, nếu em ko truyền qua max232 thì truyền đúng dữ liệu tới virtual terminal, nhưng truyền qua max232 thì dữ liệu lại bị thay đổi.
    Mọi ng có thể giải thích cho em được ko ạ, em xin cám ơn!
    Code:
    while (1)
          {
          // Place your code here
               char *text1 = "Bienvenue^_^";
               char *text2 = "Sinh vien TP-K51"; 
               //Doc gia tri ADC kenh 0
               NhietDo=adc_data[0];
               //Tinh toan nhiet do
               NhietDo=NhietDo/2-1;
               //Dua ra terminal
               sprintf(str,"%d \n\r",NhietDo);
               puts(str);
               delay_ms(500);
          };
    }
    Code và mạch mô phỏng (proteus 7.5) em để trong file đính kèm
    Attached Files

  • #2
    Hic, ko có ai giúp em ạ

    Đây là mạch lúc chưa nối với max232, hiển thị đúng ký tự mình muốn hiển thị:


    Đây là mạch khi nối với max232, ký tự hiện ra không đúng với mong muốn:


    Liệu có phải là em chưa điều chỉnh thông số gì trong ATmega16 hay max232 ko ạ?

    Comment


    • #3
      mình cũng đang vướng chỗ này không hiểu ghép nối MAX232 có gì cần lưu ý không?

      Comment


      • #4
        Mình tìm được lý do rồi bạn à, COMPIN của Proteus đã bao gồm con Max232 vì thế khi add thêm tín hiệu ra sẽ không như mong muốn . còn mạch thật thì cứ mắc như thế là OK

        Comment


        • #5
          nhưng mình có nối với COMPIM đâu bạn ?

          Comment


          • #6
            Virtual Terminal cung the ban a`

            Comment


            • #7
              vậy hả bạn, thế cám ơn bạn nhé

              Comment


              • #8
                Chơi mạch thật đi mấy bác_Đảm bảo sướng hơn nhiều.Cắm test board cũng đc mà.


                Add: 97 Quán Nam - Lê Chân - Hải Phòng.
                Tel: 031 518648 Phone: 0904 283 505

                Comment


                • #9
                  Bài viết này củ rồi, nhưng muốn trả lời bạn để biết. Ở trong proteus, bấm phiếm phải vào Virtual Terminal, edit properties, đổi normal to inverted, thì sẽ được.

                  Comment

                  Về tác giả

                  Collapse

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

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

                  Collapse

                  Đang tải...
                  X