Thông báo

Collapse
No announcement yet.

Hỏi về Counter 89c52 led 7 đoạn

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

  • Hỏi về Counter 89c52 led 7 đoạn

    Mình mới học VĐK, làm bài tập đếm từ 0 đến 121 sử dụng counter t0 hiển thị trên 3 led 7 đoạn.Mình mô phỏng trên proteus mà ko biết sao nó ko hiển thị ra nhỉ,các bạn biết sai chỗ nào chỉ giùm mình với.Mình cảm ơn

    Code:

    #include<AT89X52.h>
    const unsigned char m7d[10]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x9 0};
    unsigned char dvi,chuc,tram;
    int kqd;
    void delay(unsigned int x)
    {
    unsigned int y;
    for(y=0;y<x;y++){};
    }

    void giaima_hienthi()
    {
    dvi=kqd%10; kqd=kqd/10; chuc=kqd%10; tram=kqd/10;
    P0=m7d[dvi];
    P2=m7d[chuc];
    P3=m7d[tram];
    }

    void main()
    {
    TMOD=T0_CT_+T0_M0_; TR0=1;
    while(1)
    {
    kqd=(TH0<<8)+TL0;
    giaima_hienthi();
    if(TL0==121){TL0=1; TH0=0;}

    }
    }
    Last edited by hokbonchen; 19-11-2013, 00:02.

  • #2
    hình như là thiếu cấp xung ngoài thì phải

    Comment


    • #3
      Đếm lên thì bạn gọi TMOD, mình gọi thẳng TMOD=0x05 (trong thanh ghi ), đếm ban đầu bạn ko cho bằng 0 luôn đi (TL0=0)
      Trong phần while(1) thì bạn thêm phần kết quả đếm = TL0 nó mới chạy được chứ.
      Phần if thì nên chó kết quả đếm =121 hay hơn là TL0=121

      Comment


      • #4
        Nguyên văn bởi bloodyeye Xem bài viết
        Đếm lên thì bạn gọi TMOD, mình gọi thẳng TMOD=0x05 (trong thanh ghi ), đếm ban đầu bạn ko cho bằng 0 luôn đi (TL0=0)
        Trong phần while(1) thì bạn thêm phần kết quả đếm = TL0 nó mới chạy được chứ.
        Phần if thì nên chó kết quả đếm =121 hay hơn là TL0=121
        cảm ơn bạn,để mình thử lại xem thế nào,trong proteus mình tạo xung ngoài cho nó như thế nào nhỉ ?

        Comment


        • #5
          Nguyên văn bởi hokbonchen Xem bài viết
          cảm ơn bạn,để mình thử lại xem thế nào,trong proteus mình tạo xung ngoài cho nó như thế nào nhỉ ?
          của bạn chỉ yêu cầu cấp xung thì kiếm con IC tạo xung clock làm cái mạch tạo xung clock rồi gắn vào chân T0 hoặc T1 (dùng counter nào thì gắn cái đó, theo code bạn viết thì dùng T0 ), lên mạng kiếm mạch tạo xung clock là có .
          Code với kết nối trong sách lập trình vi xử lí có ví dụ, về làm theo là ra
          Còn bạn học làm bài tập về nhà thì đơn giản hơn nửa, dùng xung clock, lôi ra cấp vào chân T0 là nó chạy ngon lành

          Comment


          • #6
            Nguyên văn bởi bloodyeye Xem bài viết
            của bạn chỉ yêu cầu cấp xung thì kiếm con IC tạo xung clock làm cái mạch tạo xung clock rồi gắn vào chân T0 hoặc T1 (dùng counter nào thì gắn cái đó, theo code bạn viết thì dùng T0 ), lên mạng kiếm mạch tạo xung clock là có .
            Code với kết nối trong sách lập trình vi xử lí có ví dụ, về làm theo là ra
            Còn bạn học làm bài tập về nhà thì đơn giản hơn nửa, dùng xung clock, lôi ra cấp vào chân T0 là nó chạy ngon lành
            cảm ơn bạn nhiều,mình làm được cái này rùi
            mình có thêm một vấn đề nữa bạn giúp mình với
            bài tập cho dùng 89s52 với 3 nút nhấn điều khiển 3 led 7 đoạn,nếu nhấn start thì đếm lên đến 120 rồi về 0,stop dừng,clear thì xóa về 0,mình lập trình được 2 nút nhấn chứ thêm nút thứ 3 mình bó tay. (cái này không cần dùng timer nha bạn)

            Comment

            Về tác giả

            Collapse

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

            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
            Đang tải...
            X