Thông báo

Collapse
No announcement yet.

xin giúp đỡ sưa lỗi khi lập trình PIC bị lỗi #include <16F877A.h>

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

  • xin giúp đỡ sưa lỗi khi lập trình PIC bị lỗi #include <16F877A.h>

    Mình mới vừa học PIC nên mình xin các bạn chỉ lỗi cho mình .minh viết đoạn cdoe như sau
    #include <main.h>
    #include <16F877A.h>
    #include <def_877a.h>
    #FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT
    #use delay(clock=20000000)
    #byte PORTB=0x06
    void main()
    {
    TRISB = 0x00;
    PORTB = 0xFF;
    While(1)
    {
    PORTB = 0;
    delay_ms(250);
    PORTB = 0xFF;
    delay_ms(250);
    }
    }

    nhưng khi dịch nó báo lỗi như sau:

    ***Error23"c:\porgram file\PICC\divices\16F877A.h"line 2(8,9):Can not change device type this far into the code
    ***Error48"c:\porgram file\PICC\divices\16F877A.h"line 179(2,6):Expecting a(
    ***Error48"c:\porgram file\PICC\divices\16F877A.h"line 179(21,26):Expecting a(
    ***Error48"c:\porgram file\PICC\divices\16F877A.h"line 179(0,1):Expecting a declaration

    lỗi đầu tiên no chỉ vào: #device PIC16F877A
    lỗi thứ 2: #word CCP_1 = getenv("SFR:CCPR1L") (nó chỉ vào tử "Word")
    lỗi thứ 3: #word CCP_1 = getenv("SFR:CCPR1L") (nó chỉ vào dấu "=")
    lỗi thứ 4: #define CCP_PWM_PLUS_3 0x3c(nó chỉ vào cuối dòng)
    mong các bác chỉ giúp cho. file hex dịch ra mình để ở link sau: pic.docx

  • #2
    trong file main.h bạn khai báo những gì, tôi nghĩ trong đó bạn đã có khai báo include một dòng PIC nào rồi nên nó mới báo lỗi "Can not change device type this far into the code" .Trong chương trình của bạn đã khai báo đầy đủ các cấu hình rồi nên dòng #include <main.h> không cần thiết cũng được. Các lỗi sau là lỗi cú pháp, nhưng tôi đã thử rồi, phần phía sau của bạn không lỗi cú pháp, lỗi này gây ra đều do lỗi đầu tiên của bạn cả.

    Comment


    • #3
      Nếu bạn đã dùng Pic_Wizard thì thiết nghĩ các file header bạn nên khai báo trong file main.h cho dễ quản lý. Còn không dùng pic_wizard chắc sẽ không mắc phải lỗi này khi mà các header được bạn quản lý 1 cách chặt chẽ.

      Giải pháp điện tử của bạn

      Comment


      • #4
        cảm ơn các bác nhiều em đã làm được rồi.
        bây giờ em xin các bác chỉ giúp thêm.hi. em có làm 1 bài mô phỏng nháy led nhiều chế độ nhưng mà nó chạy không có đúng. em xem mãi mà không biết nó sai ở đâu cả. mong các bác xem hộ em.
        file mô phỏng như sau http://www.mediafire.com/?vdhpiqvgux330e0
        chân thành cảm ơn!
        Last edited by buituyen89th; 17-07-2012, 17:29.

        Comment


        • #5
          bạn cần xem các examples trong CCS để làm theo. CCS không cho bạn định nghĩa lại thư viện của nó.

          Comment

          Về tác giả

          Collapse

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

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

          Collapse

          Đang tải...
          X