Thông báo

Collapse
No announcement yet.

Gán chân Uart cho Pic24 bằng MikroC

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

  • Gán chân Uart cho Pic24 bằng MikroC

    Hiện mới tìm hiểu về Pic24, mọi thứ đều lạ lẫm xin được chỉ giáo
    Hiện em dùng MikroC for Pic24 để viết chương trình giao tiếp qua Uart (hardware)nhưng không được vì không gán chân cho URX và UTX, nên trình dịch không biết chân xuất và chân nhận. Đọc datasheet thì thấy cần phải:
    1 - unlock thanh ghi trước khi gán
    2 - gán xong chân cần phải lock thanh ghi lai thong qua bit lock của OSCON
    Trong mikro C em đã viết ASM như datasheet cho việc Lock và UnLock này, tuy biên dịch được nhưng không thành công.
    Mong mọi người giúp đỡ, vì tốn khá nhiều thời gian với Uart này
    Thân
    01226789221 (Kiên)

    (đang cập nhật)
    Yahoo: trongkien86

  • #2
    cậu cứ thử mặc định gán cho UART cho chân cậu cần.
    Việc lock hay unlock có ý nghĩa cho lần cấu hình thứ 2 trong khi đang hoạt động.

    // Assign U1Rx To Pin RP20
    //***************************
    _U1RXR = 20;
    //***************************
    // Assign U1TX To Pin RP21
    //***************************
    _RP21R = 3; //

    Sông dài, Thuyền lớn, Biển rộng bao la.
    Tháo neo ngôn ngữ, lèo lái con thuyền kiến thức nhân loại.

    Comment


    • #3
      cảm ơn bạn nhưng thật sự mình đã thử nhiều cách rồi, để mặc định gán chân như bạn đã làm , thậm chí mình không dùng MikroC và thư viện có sẵn mà tự làm bộ Uart_init, UartGet(),... giống trong tài liệu C30 nhưng hoàn toàn không có kết quả, nó không nhận được chân gán.
      unsigned rx1;

      void main() {
      RPINR18bits.U1RXR1 = 1; // chân nhận
      RPINR18bits.U1RXR4 = 1; // là 10 (0b1010)
      RPOUTR4bits.RP9R0 = 1; // chân truyền
      RPOUTR4bits.RP9R1 = 1; // là 9
      TRISBbits.TRISB9 = 0;
      TRISBbits.TRISB10 = 1;

      Uart1_Init(9600);
      Uart1_Write_Char('s');

      while(1)
      {
      if (Uart1_Data_Ready()) {
      rx1 = Uart1_Read_Char();
      Uart1_Write_Char(rx1);
      }
      }
      }
      Code màu đỏ là mình thêm vào, còn màu đen là code mẫu của MikroC
      01226789221 (Kiên)

      (đang cập nhật)
      Yahoo: trongkien86

      Comment

      Về tác giả

      Collapse

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

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

      Collapse

      Đang tải...
      X