CD4094驱动程序

CD4094驱动程序,第1张

CD4094驱动程序

CD4094用的比较广...可以用在静态显示...串口转并口...驱动数码管LED等...

程序...

#include
#include

#define uint  unsigned int
#define uchar unsigned char

/*
sbit K1   =  P3^4;
sbit K2   =  P3^5;
sbit K3   =  P2^4;
sbit K4   =  P2^5;
*/

sbit STR  =  P2^0;//定义CD4094各端口;
sbit DATA =  P2^1;
sbit CLK  =  P2^2;


//code unsigned char C51BOX2[3] _at_ 0x43;

void Out_4094(uchar data1);//CD4094写数据子函数;
void Delay(uint a);     //延时子函数;

         //主程序开始;
void main()
{
  uchar i;       //无限循环;
  while(1)
  {
    for(i=0;i<255;i++)    //让CD4094端口的LED不断从0-255显示;
     {
       Delay(10000);    //延时;
    Out_4094(i);     //调用显示子函数;
    Delay(10000);    //延时;
  }
  }
  //while(1);
}

void Out_4094(uchar data1) //写CD4094子函数;
{
  uchar i;       //定义子函数;
  STR="0";       //保持然来的状态不变;
  for(i=0;i<8;i++)     //写八位数据进CD4094;
  {
   if(data1&0x01)     //判断并发串行数据;
    {
   DATA="1";      //发高电平;
 }
 else
 {
   DATA="0";      //发低电平;
 }
    CLK="0";       //形成上升延脉冲;
 _nop_();
 _nop_();      //延时;
 _nop_();
 CLK=1;
 data1>>=1;      //数据移位,送下一位数据;
   }
   STR="1";       //数据送完;更新显示;
}

void Delay(uint a)     //延时子函数;
{
  uint b;
  for(b=0;b}

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/dianzi/2447932.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-03
下一篇 2022-08-03

发表评论

登录后才能评论

评论列表(0条)

保存