Thông báo

Collapse
No announcement yet.

LPC2214 không bị treo khi xảy ra ngắt !

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

  • LPC2214 không bị treo khi xảy ra ngắt !

    Em gặp phải vấn đề là con ARM LPC2214 của em có một số chân nối vời FPGA, nếu FPGA ko làm gì thi không sao, nhưng khi nạp bit file vào FPGA thì khi em reset ARM cứ đến ngắt bất kỳ ARM sẽ bị treo( treo và không vào được hàm ngắt), các chân nối với FPGA đều là GPIO đa phần đều được là input, và CLOCK do ARM cấp cho FPGA hoạt động, chân reset chương trình trong FPGA cũng do ARM điều khiển. Khi ARM bị treo thì nó vẫn cấp xung cho FPGA ở chân XCLK. Nhưng nếu rút nguồn ra rồi cắm lại thì chạy ngon, còn nếu nạp lại chương trình ARM thì sẽ xảy ra hiện tượng như trên. Mọi người giúp em với !
    Last edited by thienlong198; 20-07-2011, 22:31.

  • #2
    1* FPGA và ARM muốn chạy đoàng hoàng thì sau khi lập trình phải tái khởi động cho nó (reset, rút nguồn ra rồi cắm lại).

    2* Lỗi này có thể xẩy ra ở cả phần cứng lẫn mềm. Nếu không cụ thể hơn thì khó có thể đoán nổi do cái gì !.
    Có hai hướng thông dụng như sau:
    * Có cái jtag debug nào đó cắm vào để debug phần mềm. Không có thì chịu khó cài sâu cuốc bẵm test từng phần một của mã.
    * Xem xét lại thiết kế phần cứng một cách cục bộ, đôi khi lỗi rất vớ vẩn như là không đủ dòng nuôi 2 con đó dẫn đến xụt áp, nguồn bị can nhiễu....
    Từ chối trách nhiệm:
    Mọi thông tin từ ITX cung cấp với hi vọng nó có ích và không đi kèm với bất kì sự bảo đảm nào.
    Blog: http://mritx.blogspot.com

    Comment


    • #3
      Cảm ơn anh itx đã đọc và reply. Nếu em reset kiểu rút nguồn ra rồi cắm lại thì chạy OK, nếu reset kiểu ấn nút reset thì chương trình ARM sẽ chạy khi ta ko enable ngắt gì, nếu dùng một ngắt bất kỳ thì khi ngắt đó xảy ra chương trình ARM sẽ bị treo trước khi có thể vào được hàm ngắt. Tiếc là em ko có cái JTAG debug nào nên chỉ dùng rs-232 printf nên thôi, em có thử dùng ngắt timer0 nháy led, tức là một ngắt hoàn toàn bên trong ARM không liên quan đến chân nào nối với FPGA cả( các port em set GPIO input hết chừ 2 chân dùng UART0 thôi) nhưng vẫn vậy cứ phải reset cứng mới được ko thì khi ngắt xảy ra sẽ treo chương trình ARM.

      Comment


      • #4
        Vậy khả năng cao là do phần cứng, khu vực giữa FPGA và ARM có vấn đề. FPGA đòi hỏi phải được reset cứng.
        Đoán mò theo mô tả của em thì do khi reset ARM (kiểu ấn nút ) thì FPGA vẫn còn hoạt động và gây rối loạn ARM trong quá trình này.
        Từ chối trách nhiệm:
        Mọi thông tin từ ITX cung cấp với hi vọng nó có ích và không đi kèm với bất kì sự bảo đảm nào.
        Blog: http://mritx.blogspot.com

        Comment

        Về tác giả

        Collapse

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

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

        Collapse

        Đang tải...
        X