Thông báo

Collapse
No announcement yet.

[HELP] Hiển thị 4 led 7 đoạn bằng 4 ic 74HC595 dùng PIC 887

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

  • [HELP] Hiển thị 4 led 7 đoạn bằng 4 ic 74HC595 dùng PIC 887

    Em làm mạch quét 4 led 7 đoạn dùng IC 74HC595
    Mấy anh chị xem giúp em code hoặc mạch có gì sai ko mà khi em cho hiển thị thì chỉ led 1,2 hiển thị đúng còn led 3,4 thì nó đổi vị trí các đoạn của led 7 ví dụ như cho nó sáng đoạn A thì nó sáng đoạn B, B thì thành C….
    Code với sơ đồ nguyên lý https://www.dropbox.com/s/y3gwgyslk2...sch%2Bcode.rar
    Code:
    #include <16f877A.h>
    #device *=16, ADC = 10
    #use delay(clock=20000000)
    #FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP,NOCPD, NOWRT
    //==============================DEFINE============== ===================
    #define DAT PIN_B5
    #define SCK PIN_B6
    #define SCL PIN_B7
    //========================VARIABLE================== ===================
    unsigned char M[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x9 0};
    //unsigned char N[10]={0x60,0xFC,0x52,0x58,0xcc,0x49,0x41,0x7c,0x40,0x4 8};
    //======================FUNCTION==================== ===================
    void display(int x,int y,int z,int t)
    {
    int i,temp;
    for (i=0;i<8;i++){temp=x;temp=temp&0x80;if(temp==0x80) output_high(DAT);else output_low(DAT);x*=2;output_low(SCK);output_high(S CK);}
    for (i=0;i<8;i++){temp=y;temp=temp&0x80;if(temp==0x80) output_high(DAT);else output_low(DAT);y*=2;output_low(SCK);output_high(S CK);}
    for (i=0;i<8;i++){temp=z;temp=temp&0x80;if(temp==0x80) output_high(DAT);else output_low(DAT);z*=2;output_low(SCK);output_high(S CK);}
    for (i=0;i<8;i++){temp=t;temp=temp&0x80;if(temp==0x80) output_high(DAT);else output_low(DAT);t*=2;output_low(SCK);output_high(S CK);}
    output_low(SCL);delay_ms(10);
    output_high(SCL);
    }
    
    void main()
    {
    while(true)
    {
    display(M[1],M[2],M[3],M[4]);
    delay_ms(200);
    }
    }

  • #2
    Mình chưa hiểu hoàn toàn chương trình của bạn nhưng mình thấy một chỗ không hợp lí thế này:
    Các biến x,y,z,t,i,temp bạn cần chuyển sang kiểu unsigned char (1 byte), nếu để kiểu int thì là 2 byte thì phải. Thuật toán của bạn chỉ làm với 1 byte thôi.
    Bạn thử lại xem nhé.

    Comment


    • #3
      Thanks bạn postmanbk đã quan tâm tp của mình! mấy hnay đau đầu với nó, tưỡng mình hàn board bị chập chạm j nên rửa board khác. Đến khi tháo linh kiện thì thấy dưới cái connector 8 có 2 chân điện trở núp trong đó! hic! giờ đc rồi!

      Comment


      • #4
        cho mình hỏi là cái lệnh display ở cuối, mình compile thì nó báo lỗi. unexpected . ai giúp mình với

        Comment

        Về tác giả

        Collapse

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

        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