74HC164驱动数码管C程序

发布于:2021-06-19 13:36:17

//**时间:2015-6-5 //**编写:Z X C //**功能:74HC164 驱动数码管显示 0-9 数字 #include <AT89X52.H> #define uchar unsigned char #define uint unsigned int

#define SDA #define SCK

P0_0 P0_1

//74LS164 SAD //74LS164 SCK

sbit wm=P2^0;

uint i; //定义数码管显示字符跟数字的对应数组关系

uchar code sled_dm_xs[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};

//

0123456789

//****1MS 延时函数******** void delay(uint z) {
uint i,j; for(i=0;i<z;i++) for(j=0;j<124;j++); }

/*****************************************/ /*8 位数据从 74HC164 的串行输入端输入,从输出端并行输出*/ /*****************************************/
void senddata(uchar dd) {
uchar c; SCK=0;
for(c=0;c<8;c++) { SCK=0; SDA=dd&0x80; SCK=1; dd=dd<<1; } SDA=0;
}

//******主函数********* void main() {
wm=0; while(1) {
for(i=0;i<10;i++) { senddata(sled_dm_xs[i]); wm=1; delay(300);
}
} }


相关推荐

最新更新

猜你喜欢