Vấn đề truyền thông PSoC

Collapse
X
 
  • Giờ
  • Show
Clear All
new posts
  • Tiamo148
    Thành viên mới
    • Oct 2007
    • 4

    #1

    Vấn đề truyền thông PSoC

    Chào tất cả mọi người. Mình đang nghiên cứu PSoC. Đọc trong diễn đàn mà chưa thấy nói nhiều về mảng giao tiếp với máy tính và truyền thông giữa các PSoC với nhau. Hiện tại mình đang muốn truyền dữ liệu giữa 2 PSoC với nhau. Mình mở ra luồng này rất mong được sự ủng hộ và giúp của tất cả mọi người. Thanks so much!
  • Hatran318
    Thành viên mới
    • Aug 2007
    • 20

    #2
    Truyền thông của PSoC có một số block
    Tx, Rx : Truyền nhận dữ liệu nối tiếp chuẩn RS232.
    UART : nt
    I2C.
    Mọi thứ đều đã có, không biết bạn muốn bàn luận về cái gì?

    Comment

    • mactruong
      Thành viên mới
      • Jan 2008
      • 10

      #3
      Có bác nào cho biết cách đấu nối SM0038 với PSoC không nhỉ. Mình sử dụng 1 con OR để kết nối 2 đầu ra của khối "TX" và "BITTIMER" ở mạch phát rồi đưa ra chân phát SM0038. Ở mạnh thu mình dùng 1 con AND kết nối đầu ra của "BitTimerOutputPin" và tin hiệu nhận được ở chân thu của SM0038 rồi đưa vào "RXInputPin". Mình dùng con CY8C29xxx lên không dùng bộ Inverter. Nhưng khi chạy thử thì không thu phát được, bác nào có cao kiếm chỉ bảo hộ Mình cái. Với BitTimerAutoSet mình chọn là 9600b/s tương đương với inClk=24MHz/13 thì "BaudClk" được tính như thế nào cho phù hợp. Mong sớm nhận được sự chỉ giáo của các bác.
      mactruong is online now Report Post Edit/Delete Message

      Comment

      • vietbk
        Thành viên mới
        • Sep 2007
        • 23

        #4
        Dùng bộ RX, TX là ok rồi. Cái khó là đồng bộ giữa các bộ truyền nhận. Theo mình nếu bạn làm truyền nhận thì nên có một cơ chế để truyền nhận tránh mất dữ liệu truyền. Viết trong ngắt là tốt nhất

        .--------------------------
        chúc thành công
        ----------------------------------------------
        Hạnh phúc là mang lại hạnh phúc cho người khác!

        Comment

        • leoteo
          Thành viên mới
          • Oct 2009
          • 4

          #5
          Các bạn cho mình hỏi tại sao với code sau thì mình gửi kí tự nào thì động cơ cũng vẫn quay vậy:
          #include <m8c.h> // part specific constants and macros
          #include "PSoCAPI.h"
          #include "ports.h"
          #include "dieukhien1.h"

          // UART_PutCRLF();
          void Delay1(void)
          {
          unsigned int x;
          unsigned char y;
          for(y = 0; y <80; y++)
          {
          for (x = 0; x<200; x++);
          }
          }



          void main()
          {
          BYTE kk;
          char docRX;
          PWM8_Start();
          UART_Start(UART_PARITY_NONE); // Enable UAR
          M8C_EnableGInt;

          while (1)
          {
          kk= UART_bReadRxStatus();// doc trang thai cua thanh ghi RX
          if (kk==0x11)//neu co data tren COM
          {
          Delay1();
          docRX=UART_bReadRxData(); //doc data
          UART_CmdReset();

          if (start == "S")//neu la ky tu "S"
          {
          //Out ra cong o vi tri dau tien
          DC2tinhtien_nghich1(200);
          UART_CPutString("GUI LEN");
          }
          }

          }
          }

          Comment

          • nbb3i
            Thành viên tích cực
            • Dec 2007
            • 540

            #6
            Nghe nói PSoC truyền RS232 kém (đối với những bản tin lớn). Bro nào có kinh nghiệm cho xin ý kiến xem có phải thật như vậy không và nếu đc thì mong chia sẻ luôn kinh nghiệm khắc phục . Thanx!
            123...

            Comment

            • encoder
              Thành viên tích cực
              • Dec 2005
              • 264

              #7
              MÌnh thì không có thấy vậy. Nói chung mình dùng PSoC với UART ít dùng các lệnh High Level API (thường truyền nhận dạng String) mà dùng ác lệnh Low Level (thường truyền nhận Binary và sử dụng các ngắt truyên thông). Mình thấy rất ổn, sử dùng PSoC làm slave trong mạng Modbus RTU thấy OK không vấn đề gì cả.
              CUNG CẤP PSOC, MẠCH NẠP
              CHUYỂN ĐỔI USB <-> RS485 AutoBaud
              RS232 <-> RS485 MultiBaud
              MẠCH NẠP USBPPI S7-200
              Mobile: 0906076116
              Email:

              Comment

              Về tác giả

              Collapse

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

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

              Collapse

              Đang tải...