立即注册 登录
返回首页

uid:432209的个人空间

日志

stc89c52 IO扩展 74HC595

热度 1已有 762 次阅读2018-12-4 19:12 |个人分类:IO| STC89C52, 扩展74HC595

STC89C52单片机扩展芯片74HC595IO串行输入并行输出
刚开始学习,拿出来分享一下,有不对地方或有错误的地方希望指正,谢谢。

#include <reg51.h>
#include <intrins.h>

#define uchar unsigned char
#define uint unsigned int


unsigned int i;
unsigned char DSdata1;
unsigned char DSdata2;
unsigned char DSdata3;
unsigned char DSdata4;
unsigned char DSdata5;
unsigned int n;
sbit    DS = P1^0;   //输入数据位声明
sbit SH_CP = P1^4;     //移位开关位声明
sbit ST_CP = P1^2; //并行输出位声明

 void delay( int z)
{
uint x;
for(;z>0;z--)
for(x=12;x>0;x--);
}
void shift(char DSdata)
{
for(i = 0;i<8;i++)
{
SH_CP = 0;
delay(2);   //延时
DS = DSdata & 0x80; //移位数据
DSdata <<= 1;
delay(2); //延时
SH_CP = 1;
}
}
void main()
{
DSdata1=0x0;
DSdata2=0x0;
DSdata3=0x0;
DSdata4=0x0;
ST_CP = 0;     //并行输出开关——关(低电平)
  delay(2); //延时
shift(DSdata4);
shift(DSdata3);
shift(DSdata2);
shift(DSdata1);
  delay(2); //延时
ST_CP = 1; //并行输出开关——开(高电平)

DS=1;
  while(1);

}







路过

鸡蛋

鲜花
1

握手

雷人

刚表态过的朋友 (1 人)

评论 (0 个评论)

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

返回顶部