工业控制 | 能源技术 | 汽车电子 | 通信网络 | 安防监控 | 智能电网 | 移动手持 | 无线技术 | 家用电器 | 数字广播 | 消费电子 | 应用软件 | 其他方案

电路设计->综合电路图->综合电路图->74ls595级联电路及驱动程序分享

74ls595级联电路及驱动程序分享

作者:fanxiaoxi时间:2022-11-01

  74ls595级联电路

  74ls595是一块能够使以为并且锁存数据的芯片,特别适合用于16*16点阵硬件电路中,关于其使用请查阅相关网页。下面就把具体的程序及其级联的电路贴出来。

  74ls595驱动程序分享

  #include 《reg52.h》 //52芯片管脚定义头文件

  #include 《intrins.h》 //内部包含延时函数 _nop_();

  sbit SDATA_595=P1^0; //串行数据输入

  sbit SCLK_595 =P1^1; //移位时钟脉冲

  sbit RCK_595 =P1^2; //输出锁存器控制脉冲

  void WR_595(unsigned char temp)

  {

  unsigned char j;

  SCLK_595=0;

  for (j=0;j《8;j++)

  {

  temp=temp《《1 ;

  SDATA_595=CY;

  SCLK_595=1; //上升沿发生移位

  _nop_();

  _nop_();

  SCLK_595=0;

  }

  }

  void OUT_595(void)

  {

  RCK_595=0;

  _nop_();

  _nop_();

  RCK_595=1; //上升沿将数据送到输出锁存器

  _nop_();

  _nop_();

  RCK_595=0;

  }

  main()

  {

  WR_595(0xc3);

  WR_595(0x55);

  OUT_595();

  while(1)

  {

  ;

  }

  }

  74LS595串入并出应用

  C代码:

  /*************** writer:shopping.w ******************/

  #include

  #include

  #define uint unsigned int

  #define uchar unsigned char

  sbit SH_CP = P2^0;

  sbit DS = P2^1;

  sbit ST_CP = P2^2;

  uchar temp;

  uchar code DSY_CODE[]=

  {

  0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90

  };

  void Delay(uint x)

  {

  uchar i;

  while(x--)

  {

  for(i=0;i《120;i++);

  }

  }

  void In_595()

  {

  uchar i;

  for(i=0;i《8;i++)

  {

  temp 《《= 1;

  DS = CY;

  SH_CP = 1;

  _nop_();

  _nop_();

  SH_CP = 0;

  }

  }

  void Out_595()

  {

  ST_CP = 0;

  _nop_();

  ST_CP = 1;

  _nop_();

  ST_CP = 0;

  }

  void main()

  {

  uchar i;

  while(1)

  {

  for(i=0;i《10;i++)

  {

  temp = DSY_CODE[i];

  In_595();

  Out_595();

  Delay(200);

  }

  }

  }


关键词: 驱动程序 74ls595

评论

技术专区