Thông báo

Collapse
No announcement yet.

Giúp em với pic

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

  • Giúp em với pic

    e mới tập học pic thôi
    thấy trên mạng có code nháy port B như
    #include <htc.h>
    __CONFIG(XT & WDTDIS & PWRTEN & MCLREN & UNPROTECT & SWBOREN & IESODIS & FCMDIS & LVPDIS & DEBUGDIS);
    __CONFIG(BORV21);
    #define _XTAL_FREQ 4000000
    void main(void)
    {
    ANSEL=0;
    ANSELH=0;
    TRISB=0x00;
    PORTB=0xFF;
    while(1)
    {
    PORTB=0x00;
    __delay_ms(300);
    PORTB=0xFF;
    __delay_ms(300);
    };
    }

    mà ko hiểu sao ấn ctrl+F10 mà nó hiện ra lỗi là

    Clean: Deleting intermediary and output files.
    Clean Warning: File "D:\pic\project\project1\main.p1" doesn't exist.
    Clean: Done.
    Build D:\pic\project\project1\tapsu1 for device 16F877
    Using driver C:\Program Files\HI-TECH Software\PICC\9.83\bin\picc.exe

    Executing: "C:\Program Files\HI-TECH Software\PICC\9.83\bin\picc.exe" --pass1 D:\pic\project\project1\main.c -q --chip=16F877 -P --runtime=default --opt=default -D__DEBUG=1 -g --asmlist "--errformat=Error [%n] %f; %l.%c %s" "--msgformat=Advisory[%n] %s" "--warnformat=Warning [%n] %f; %l.%c %s"
    Error [192] D:\pic\project\project1\main.c; 7.1 undefined identifier "ANSEL"
    Error [192] D:\pic\project\project1\main.c; 8.1 undefined identifier "ANSELH"

    ********** Build failed! **********

    mọi người giúp em với ạ.e cảm ơn.hjhi

  • #2
    thế anh cho e hỏi phần khai báo mặc định là sao ạ?
    nghĩa là bất kì chương trình nào mình cũng chép y nguyên thế ấy ạ?
    có phải là dạng
    #include <16f887.h> //khai bao chip cho trinh dich biet
    #device *= 16 ADC = 10 //khai bao con tro chuong trinh la 16bit
    #fuses HS, NOWDT, NOPROTECT,NOPUT, NOBROWNOUT, NODEBUG //config
    #use delay

    ko ạ?

    Comment


    • #3
      Nguyên văn bởi Fireflies Xem bài viết
      thế anh cho e hỏi phần khai báo mặc định là sao ạ?
      nghĩa là bất kì chương trình nào mình cũng chép y nguyên thế ấy ạ?
      có phải là dạng
      #include <16f887.h> //khai bao chip cho trinh dich biet
      #device *= 16 ADC = 10 //khai bao con tro chuong trinh la 16bit
      #fuses HS, NOWDT, NOPROTECT,NOPUT, NOBROWNOUT, NODEBUG //config
      #use delay

      ko ạ?
      tùy chương trình mà các lệnh tiền xử lý lý nó khác nhau. Cái bạn viết là trên là HTC. Còn cái leson87 post là CCS C. Bạn phải chọn 1 trình dịch sài cho biết rồi thích thì chuyển qua cái khác. CCS thì khi tạo project mới mặc định nó cho phép chọn các khai báo tiền xử lý cần thiết, vì thế sau khi tạo xong chỉ cần viết code thôi.

      Comment


      • #4
        Nguyên văn bởi chung1608 Xem bài viết
        tùy chương trình mà các lệnh tiền xử lý lý nó khác nhau. Cái bạn viết là trên là HTC. Còn cái leson87 post là CCS C. Bạn phải chọn 1 trình dịch sài cho biết rồi thích thì chuyển qua cái khác. CCS thì khi tạo project mới mặc định nó cho phép chọn các khai báo tiền xử lý cần thiết, vì thế sau khi tạo xong chỉ cần viết code thôi.
        uh.hay quá,cảm ơn a nhé,hihi
        e cứ tưởng cái kia sai.mà nó có sai thật ko a?sao nó hiện lỗi vậy?
        muốn tạo ra file hex từ file .c thì làm sao hả anh?

        Comment


        • #5
          Nguyên văn bởi Fireflies Xem bài viết
          uh.hay quá,cảm ơn a nhé,hihi
          e cứ tưởng cái kia sai.mà nó có sai thật ko a?sao nó hiện lỗi vậy?
          muốn tạo ra file hex từ file .c thì làm sao hả anh?
          nó báo lỗi hai biến:
          ANSEL
          ANSELH
          ko đc định nghĩa trong thư viện, có thể người post code này định nghĩa 2 biến này trong file header mà ko up file header lên.Mình chưa sài HTC ko rõ lắm

          Comment


          • #6
            hì.thanks a nhé

            Comment


            • #7
              Nguyên văn bởi chung1608 Xem bài viết
              nó báo lỗi hai biến:
              ANSEL
              ANSELH
              ko đc định nghĩa trong thư viện, có thể người post code này định nghĩa 2 biến này trong file header mà ko up file header lên.Mình chưa sài HTC ko rõ lắm
              cái này viết đúng rồi nhưng bị báo lỗi là do chọn MCU không đúng loại .... Đó là các thanh ghi chế độ ANALOG/DIGITAL I/O chứ không phải header
              Module RF chuyên dụng điều khiển, truyền dữ liệu, thiết kế đề tài, dự án điện tử - chuyển giao công nghệ... ĐT: 0904964977 - email: dientuqueduong@yahoo.com

              Comment


              • #8
                thế giờ e phải làm sao ạ?
                e cài HTC ạ

                Comment


                • #9
                  Một số dòng PIC mới, ví dụ PIC16F182x, không có thanh ghi ANSEL và ANSELH, thay vào đó là ANSELA, ANSELB, ANSELC ...

                  Bạn cần vào thư mục include của phần mềm Hitech, tìm đúng tập tin include của PIC bạn dùng (ví dụ bạn dùng PIC16F1828 thì tìm tập tin pic16f1828.h) mở ra và đọc xem nó dùng thanh ghi ANSEL... nào. Việc này dễ mà.
                  Phần mềm tự do hoặc không dùng máy tính nữa !.

                  Comment


                  • #10
                    Nguyên văn bởi Fireflies Xem bài viết
                    thế giờ e phải làm sao ạ?
                    e cài HTC ạ
                    Còn sao nữa ... mình nghĩ bạn đã chọn con 877 mà con 877 thì không có ANSEL ... bạn thử chọn con 887 xem.

                    --- còn nữa ... cái delay kia của bạn mà không có thư viện nó sẽ tiếp tục báo lỗi thôi !

                    --- Bạn nên học cơ bản 1 tý về MCU thì mới được .
                    HTC là trình biên dịch khó ( cần có kiến thức sâu , thuật giải tốt ...) và không có sẵn các thư viện .
                    Với bạn mình nghĩ bạn nên tìm đến 1 trình biên dịch fast food , nhẹ gánh ... nhiều thư viện hơn như MikroC , CCS , IAR, flow code ...

                    --- trong mấy cái trên mình đánh giá cao MikroC về mức độ chuyên nghiệp , quá nhiều thư viện, dễ hoạt động , chạy nhanh ... dễ học ... support tốt, giá rẻ... Nó là trình dịch No 1 trong những năm trở lại đây !

                    HTPIC - CCS cũng một thời oanh liệt nhưng giờ người ta đã không mặn mà nữa !
                    Module RF chuyên dụng điều khiển, truyền dữ liệu, thiết kế đề tài, dự án điện tử - chuyển giao công nghệ... ĐT: 0904964977 - email: dientuqueduong@yahoo.com

                    Comment


                    • #11
                      cái code trên kia bạn lấy trên trang PIF (payitforward) chắc luôn. uhm, HT-PIC là trình biên dịch mà đòi hỏi bạn phải có kiến thức về phần cứng nữa.nếu bạn là dân điện tử thì nên theo cái này. với lại bạn hình như chưa có hướng học 1 con MCU nữa. nếu thích thì cứ theo những cái TUT mà câu lạc bộ đưa lên. viết rất dễ hiểu. Tutorials

                      Comment


                      • #12
                        cảm ơn các anh.hihi
                        e đang thử Mikro C mà ko có tài liệu

                        Comment


                        • #13
                          thì đúng là e học theo cái đó thật.có video nữa,hi
                          nhưng mà nó vẫn ko chạy
                          nên e theo a queduong chuyển sang mikro c xem sao,chạy rồi,hihi
                          thực sự là e tự mò nên chả tiến bộ được,híc híc

                          Comment


                          • #14
                            tự mò có 1 cái ưu điểm là nhớ dai, sai nhiều, mà sai nhiều nên nhớ dai. thực tế là mình cùng đang lọ mọ với con pic16f887 theo các tut trên payitforward, tut khá rõ và hay, mình cũng dùng ht pic như trong tut, thấy nó cũng gần gần với keilc, mikro c thì chưa thử bao giờ, nhưng web của nó thì có mấy cuốn sách khá hay

                            Comment


                            • #15
                              Nếu bạn đã có kiến thức lập trình + 1 người thầy tốt chỉ hướng dẫn mikroC cho bạn 1 ngày thôi bạn cũng sẽ biết cách khai thác sử dụng nó tốt thậm chí còn tốt hơn những người học HTPIC cả năm , vài năm
                              bạn có tin không ? ( Tôi cũng đã dùng HTPIC rất lâu ) ... sau này viết trên nền ứng dụng tôi dùng microC Pro hết .

                              bạn học 1 năm , 2 năm với HTPIC thử viết 1 giao tiếp với USB xem , thử viết 1 giao tiếp etherner ( TCP/IP ) xem ... hay FAT32 ... thẻ MMC ??? tôi tin đều rất vất vả và vật vã chứ không nhàn hạ gì !!!

                              --- Với MikroC pro ... nó đã có tất cả những cái đó ... chỉ việc mang ra mà dùng .... Những cái không có bạn vẫn tự viết giải thuật , làm việc như HTPIC.

                              --- Công việc của bạn là viết ứng dụng và ra sản phẩm ... kết quả một cách nhanh chóng và OK . Ít tốn sức lực ... chứ với việc ra đời chóng mặt của các vi xử lý , MCU ... như hiện nay ... mà cứ ngồi am hiểu tất thì 1 đời người chắc không đủ .


                              --- mikroC thì rất đơn giản ... ít thấy tài liệu ( vì đơn giản mà ) ... bạn có thể xem nhiều ví dụ mẫu trong thư mục cài của nó ... ngoài ra phần help của nó cũng rất mạnh ... minh họa cho việc sử dụng thư viện tốt . Nếu đọc tài liệu tiếng anh thì lên trang của nó down manual về !
                              Module RF chuyên dụng điều khiển, truyền dữ liệu, thiết kế đề tài, dự án điện tử - chuyển giao công nghệ... ĐT: 0904964977 - email: dientuqueduong@yahoo.com

                              Comment

                              Về tác giả

                              Collapse

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

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

                              Collapse

                              Đang tải...
                              X