新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 單片機驅動74HC595的c51程序

        單片機驅動74HC595的c51程序

        作者: 時間:2012-10-11 來源:網(wǎng)絡 收藏

        //該子程序為發(fā)送字符的程序,該程序是先發(fā)送的是最低位!
        //芯片的時鐘引腳為第11腳
        //芯片的數(shù)據(jù)引腳為第14腳
        //芯片74HC595的鎖存引腳為第12腳
        //當有多片74HC595串聯(lián)時,只有當所有數(shù)據(jù)都發(fā)送完成后,再鎖存信號!
        //同樣74hc164與51單片機連接也可以由這個程序來驅動

        #include#define uchar unsigned char#define uint unsigned int sbit clk=P3^5;sbit dat=P3^6;sbit shuo_cun=P3^7;uchar volatile e,f;uchar code tab[]={        0x03,/*0*/0x9F,/*1*/0x25,/*2*/0x0D,/*3*/0x99,/*4*/0x49,/*5*/0x41,/*6*/0x1F,/*7*/0x01,/*8*/0x09,/*9*/};void fa_shon(uchar k) //{uchar i; //定義循環(huán)變量for(i=0;i8;i++) //因為是1字節(jié)是8位,所以循環(huán)8次{dat=k0x01; //將要發(fā)送的數(shù)據(jù)與上0X01送到數(shù)據(jù)引腳clk=0; //時鐘引腳加低電平clk=1; //時鐘引腳加高電平k>>=1; //將發(fā)送的數(shù)據(jù)右移1位} }void main(){TMOD=0x01;TH0=15535/256;TL0=15535%256;EA=1;ET0=1;TR0=1;while(1){ uchar a;for(a=0;a3;a++){fa_shon(tab[e%10]);fa_shon(tab[e%100/10]);fa_shon(tab[e/100]);}shuo_cun=0; //鎖存為低電平shuo_cun=1; //鎖存為高電平}}void tt()interrupt 1{TH0=15535/256;TL0=15535%256;f++;if(f>10){f=0;e++;if(e>250)e=0;}}


        評論


        相關推薦

        技術專區(qū)

        關閉
        主站蜘蛛池模板: 平和县| 客服| 闽侯县| 壶关县| 白河县| 三江| 兰考县| 平山县| 扶余县| 阜城县| 九江市| 泌阳县| 武胜县| 丹寨县| 澄迈县| 汨罗市| 长丰县| 嘉祥县| 常宁市| 石家庄市| 陈巴尔虎旗| 潜山县| 理塘县| 宁海县| 玉树县| 安溪县| 岐山县| 方正县| 安宁市| 涞源县| 丹江口市| 永吉县| 平远县| 平塘县| 桃园市| 枣强县| 固镇县| 四平市| 丹东市| 西青区| 吕梁市|