sua giup ho mh code hien thi 00 99 voi hc 595

Collapse
X
 
  • Giờ
  • Show
Clear All
new posts
  • anhthongm
    Thành viên mới
    • Jun 2013
    • 16

    #1

    sua giup ho mh code hien thi 00 99 voi hc 595

    #include <REGX51.H>
    unsigned char mang[]={0x3f,0x06....,};
    unsigned int i,k;
    #sbit data =P3^0;
    #sbit sck= P3^1;
    #sbit scl = P3^2;
    void delay(unsigned short d)
    {while(d>0,d--);
    }
    void quet( unsigned char x)
    {int i;
    for(i=0;i<8;i++)
    {data=(x&0x80);
    x<<=1;
    sck=0;
    sck=1;
    }
    scl=0;
    scl=1;
    }
    void hienthi(unsigned char so1,unisgned char so2)
    {
    P1_0=1;
    quet(mang[so1])delay(100);
    P1_0=0;
    {P1_1=1;
    quet(mang[so2]);delay(100);
    }}
    void main()
    {
    while(1)
    {
    for(i=0;i<100;i++)
    hienthi(i/10,i%10);
    {quet(mang[i]);delay(10);
    }}}
  • tramng
    Thành viên chính thức
    • Jan 2014
    • 90

    #2
    Code bạn bị sao vậy bạn ? bạn post mạch mô phỏng lên lun được không bạn !

    Comment

    • anhthongm
      Thành viên mới
      • Jun 2013
      • 16

      #3
      code của em hàm hien thị không quet đựoc led? hàm chính anh xem hộ em viết ct đúng chưa ? vì em thấy toàn báo lỗi thôi . anh có đoạn code viết hộ em luôn . thank you a. . . mấy hôm nữa e thi môn này mà test thử không chạy ?

      Comment

      • tramng
        Thành viên chính thức
        • Jan 2014
        • 90

        #4
        Nguyên văn bởi anhthongm Xem bài viết
        code của em hàm hien thị không quet đựoc led? hàm chính anh xem hộ em viết ct đúng chưa ? vì em thấy toàn báo lỗi thôi . anh có đoạn code viết hộ em luôn . thank you a. . . mấy hôm nữa e thi môn này mà test thử không chạy ?
        Sơ đồ mạch cho bạn : noi tiep qua song song.pdf

        Code cho bạn tham khảo, code dùng counter ngoài T0.

        PHP Code:
        /*/==========================================BO TIEN XU LI============================================/*/
        #include <reg52.h>                                                  //Dinh kem file thu vien
        /*======================================KHAI BAO BIEN TOAN CUC=========================================*/
        sbit    SCK = P2^0;
        sbit    DATA = P2^1;
        sbit    SCL = P2^2;
        sbit    RESET = P2^3;
        
        const unsigned char dig[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};          //MA 7 DOAN CHO LED A CHUNG (CA)
        unsigned char chuc, donvi;
        /*===========================================KHAI BAO HAM==============================================*/ 
        /*------------------------------------------GHI DICH 595-----------------------------------------*/
        void nap_1_bit()
        {
            SCK = 1;
            SCK = 0;
        }
        
        void xuatdata595()
        {
            SCL = 1;
            SCL = 0;
        }
        
        bit ghidich595(unsigned char dat)
        {
            unsigned char i;
            bit outbit;
            for (i = 0; i <= 7; i++)
            {
                outbit = dat&0x80;
                DATA = outbit;
                dat = dat << 1;
                nap_1_bit();
            }
            return(outbit);
        }
        /*-------------------------------CHUONG TRINH CON DICH TU HEX SANG BCD--------------------------------*/
        void hextobcd (unsigned char a)
        {
            chuc = dig[a/10];
            donvi = dig[a%10];
        }
        /*---------------------------------------HIEN THI LED 7 DOAN---------------------------------------*/
        void hienthi ()
        {
            ghidich595(donvi);
            ghidich595(chuc);
            xuatdata595();
        }
        /*------------------------------------------CHUONG TRINH CHINH-----------------------------------------*/
        void main()
        {
            unsigned char bien = 0;
            SCK = 0;
            DATA = 0;
            SCL = 0;
        
            TMOD = 0x05;
            TL0 = 0x00;
        
            TR0 = 1;
            TF0 = 0;
            while (1)
            {
                bien = TL0;
                if (bien == 100)
                {
                    TL0 = 0;
                }
                hextobcd(bien);
                hienthi();
            }
        } 
        

        Comment

        • tramng
          Thành viên chính thức
          • Jan 2014
          • 90

          #5
          Dạo này vô diễn đàn khó quá, ping IP >500ms

          Comment

          • anhthongm
            Thành viên mới
            • Jun 2013
            • 16

            #6
            hj cảm ơn anh nhá ? trang wed.

            Comment

            Về tác giả

            Collapse

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

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

            Collapse

            Đang tải...