Thông báo

Collapse
No announcement yet.

PIC 16F877A ko chạy. ai chỉ giúp e nguyên nhân với.

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

  • PIC 16F877A ko chạy. ai chỉ giúp e nguyên nhân với.

    e đang bắt đầu vs pic 16f877a,nhưng ko hiểu sao e cắm test mạch đk led nó lại ko chạy, mạch e mắc như sau
    chân 11 và 32 nối VDD +5V
    chân 12 và 31 nối GND
    chân 1 nối VDD qua trở 10k
    13, 14 nối thạch anh 20M mỗi chân nối thêm vs 1 con tụ 22,tụ nối đất.
    các b xem giùm e còn thiếu gì ko?
    thanks..!
    Nguyễn Huy Biên - 01649 802 694
    gmail :

  • #2
    kiểm tra:
    1 Nguồn
    2 Thạch anh

    3 Chip còn "sống" ko

    4 ( kiểm tra cấu hình ( configuration bits) xem đúng chưa Nhiều khi "em" cấu hình chưa đúng ( ví dụ nếu để ở chế độ debug bằng ICD thì ko chạy mà phải để ở chế độ debug phần mềm)
    chúc okie
    Be quan. Plz contact through email:

    Comment


    • #3
      a hướng dẫn e cụ thể hơn cái debug được ko ạh? e vẫn chưa hiểu?
      Nguyễn Huy Biên - 01649 802 694
      gmail :

      Comment


      • #4
        e sử dụng trình biên dịch nào em chú ý khi cấu hình - tức quy định chế độ làm việc ( tốt nhất là post code lên)
        Be quan. Plz contact through email:

        Comment


        • #5
          vâng. e dùng CCS. code e viết và đã chạy mô phỏng. đây là code:
          #include <16f877a.h>
          #use delay(clock=20M)
          void main()
          {
          set_tris_b(0x00);
          while(1)
          {output_b(0xff);delay_ms(30);
          output_b(0x00);delay_ms(30);
          }
          }
          Nguyễn Huy Biên - 01649 802 694
          gmail :

          Comment


          • #6
            sử dụng thêm
            #use fast_io(B)
            nhé

            Vì nó phải được khai báo khi sử dụng lênh set_tris nha
            Be quan. Plz contact through email:

            Comment


            • #7
              vâng. vậy nếu ko sử dụng câu lệnh đó thì code ko chạy ạh,
              Nguyễn Huy Biên - 01649 802 694
              gmail :

              Comment


              • #8
                uhhhhhhhhhhhhhhhhhhhhhhhhhhhh
                Be quan. Plz contact through email:

                Comment


                • #9
                  #include <16F877A.h>
                  #include <def_877a.h>
                  #FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT
                  #use Delay(Clock=20000000)


                  void main()
                  {
                  TRISA = 0xFF;
                  TRISD = 0x00;
                  trisc = 0x00;
                  TRISB = 0x00;

                  PORTC = 0xFF;
                  PORTD = 0xFF;
                  PORTB = 0xFF;

                  // enable_interrupts(INT_TIMER0);
                  enable_interrupts(GLOBAL);

                  while(1)
                  {
                  portb = 0x00;
                  portd = 0x00;
                  delay_ms(100);
                  portb = 0xff;
                  portd = 0xff;
                  delay_ms(100);
                  }
                  }
                  Quang Nhat
                  ---------------------------------------
                  Yahoo :quangnhat85ls
                  Mail :
                  Nhận thiết kế và ép nhựa cho đồ điện tử

                  Comment


                  • #10
                    bạn minhnhat sử dụng thêm một file định nghĩa rồi ( sao cho giống với phàn cứng)
                    Be quan. Plz contact through email:

                    Comment


                    • #11
                      vâng. e cám ơn 2 anh. để e thử lại xem sao
                      Nguyễn Huy Biên - 01649 802 694
                      gmail :

                      Comment


                      • #12
                        hì. nó nháy rồi. thanks 2 anh rất nhiều :X
                        Nguyễn Huy Biên - 01649 802 694
                        gmail :

                        Comment


                        • #13
                          nút Thanks to đùng kìa hehe
                          Be quan. Plz contact through email:

                          Comment


                          • #14
                            e còn 1 code này nữa. mô phỏng thì ok mà mạch thực thì ko chạy, pro nào chỉ giúp e luôn vs:

                            #include <16f877a.h>
                            #include <def_877a.h>
                            #FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT
                            #device 16f877a*=16ADC=10
                            #use delay(clock=4000000)
                            #use fast_io(b)
                            #use fast_io(d)
                            #byte portb = 0x6
                            #byte portd = 0x8
                            #bit rs = portd.0
                            #bit rw = portd.1
                            #bit en = portd.2
                            #bit sos = portd.3// bit canh bao
                            int8 malenh,dulieu,vitri;
                            int8 i,tram,chuc,donvi,x;
                            char baocaothuchanh[13]="TKMS K12D HOU";
                            char nhietdo[13]="Nhiet do la: ";
                            float ketqua;
                            char *text;
                            //--------------------------------------------------------
                            void lenh_lcd(int8 malenh)
                            {
                            portb=malenh;
                            en=1;
                            rs=0;
                            rw=0;
                            en=0;
                            delay_ms(3);
                            }
                            //--------------------------------------------------------
                            void data_lcd(int8 dulieu)
                            {
                            portb=dulieu;
                            en=1;
                            rs=1;
                            rw=0;
                            en=0;
                            delay_ms(3);
                            }
                            //--------------------------------------------------------
                            void hienthi(int8 vitri, char mang[])
                            {lenh_lcd(vitri);
                            text=mang;
                            for(i=0;i<=12;i++)
                            {data_lcd(*(text+i));
                            }
                            }
                            //---------------------------------------------------
                            void main()
                            {
                            set_tris_a(0x01);
                            set_tris_b(0);
                            set_tris_d(0);
                            //-------------------
                            setup_ADC(ADC_clock_internal);
                            setup_ADC_ports(AN0);
                            set_ADC_channel(0);
                            delay_ms(1);
                            //-------------------
                            lenh_lcd(0x38);
                            lenh_lcd(0x0e);
                            lenh_lcd(0x01);
                            lenh_lcd(0x80);
                            //---------------
                            hienthi(0x82,baocaothuchanh);
                            delay_ms(1);
                            hienthi(0xc0,nhietdo);
                            delay_ms(1);
                            //---------------------------------------------------
                            loop:

                            x = read_ADC()/2.049;
                            if (x >= 50)// nhiet do canh bao 50 do
                            {
                            sos = 1;
                            delay_ms(5);
                            sos = 0;
                            delay_ms(5);}
                            else
                            {
                            sos = 0;}
                            tram = x/100;
                            chuc = (x%100)/10;
                            donvi=(x%100)%10;
                            lenh_lcd(0xcd);
                            data_lcd(tram + 48);
                            delay_ms(1);
                            data_lcd(chuc + 48);
                            delay_ms(1);
                            data_lcd(donvi + 48);
                            delay_ms(1);

                            goto loop;
                            }
                            Nguyễn Huy Biên - 01649 802 694
                            gmail :

                            Comment

                            Về tác giả

                            Collapse

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

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

                            Collapse

                            • bqviet
                              Trả lời cho Đấu tắt điện cho máy tính bảng
                              bởi bqviet
                              Bqv cáo lỗi vì chưa đủ khả năng diễn giải để người đọc hiểu. Người làm kỹ thuật sâu đôi khi như thế đó. Về việc nạp pin không vào dù cell mới, khả năng cái mạch quản lý đó đã hỏng - cũng chính là nguyên nhân đám cell cũ hỏng từ đầu.
                              06-12-2025, 17:17
                            • nguyendinhvan
                              Trả lời cho Xin hỏi về mạch thu FM/AM trong catsette
                              bởi nguyendinhvan
                              Theo tôi, nó chỉ là cái Tuy- ê - nơ, hoặc là khối Trung Văn Tần, nó một phần trong cái Da đì ô thôi. Vì có thấy một chỗ có ba chân hàn, giiống như chân Cờ rít sờ tăng 455 ki nô hẹc. Còn khối Tuy ê nơ thì không nhìn thây cái Di ốt Va di cáp...
                              05-12-2025, 19:59
                            • afrendly
                              Trả lời cho Đấu tắt điện cho máy tính bảng
                              bởi afrendly
                              Có vẻ ngoài hiểu biết của mình rồi. Cuối cùng mình quyết định tìm mua 2 pin trên Shopee, giá 200K thay vào. Tuy nhận pin được 1%, sạc mãi không vào nhưng cũng mở được máy lên. Vậy cũng tạm. Cảm ơn bạn đã hỗ trợ nhé....
                              04-12-2025, 01:27
                            • nick22
                              Trả lời cho Máy điện châm ?
                              bởi nick22
                              Đúng như bạn nói, máy điện châm hiện nay trên thị trường đã khá đa dạng về mẫu mã, chức năng và giá thành.
                              01-12-2025, 13:23
                            Đang tải...
                            X