当前位置:首页 > 单片机 > 单片机
[导读] 74HC595数码管程序#include//51芯片管脚定义头文件#include//内部包含延时函数_nop_();#defineucharunsignedchar#defineuintunsignedintucharcodeDAT[10]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x

74HC595数码管程序

#include//51芯片管脚定义头文件
#include//内部包含延时函数_nop_();

#defineucharunsignedchar
#defineuintunsignedint

ucharcodeDAT[10]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};//共阴数码管显示码


sbitHC595_SRCLR=P1^0;//清空移位寄存器
sbitHC595_sRCLK=P1^1;//寄存器输出时钟
sbitHC595_RCLK=P1^2;//移位时钟
sbitHC595_OE=P1^3;//并行输出使能
sbitHC595_sER=P1^4;//串行数据


uchartemp;

/********************************************************/
/*
/*延时子程序
/*
/*******************************************************/

voiddelay(intms)
{
intk;
while(ms--)
{
for(k=0;k<250;k++)
{
_nop_();
_nop_();
_nop_();
_nop_();
}
}
}

/********************************************************/
/**/
/*将显示数据送入74HC595内部移位寄存器*/
/**/
/********************************************************/

voidWR_595(void)
{
ucharj;
for(j=0;j<8;j++)
{
temp=temp<<1;
HC595_sER=CY;
HC595_sRCLK=1;//上升沿发生移位
_nop_();
_nop_();
HC595_sRCLK=0;
}
}

/********************************************************/
/**/
/*将移位寄存器内的数据锁存到输出寄存器并显示*/
/**/
/********************************************************/

voidOUT_595(void)
{
HC595_RCLK=0;
_nop_();
_nop_();
HC595_RCLK=1;//上升沿将数据送到输出锁存器
_nop_();
_nop_();
_nop_();
HC595_RCLK=0;
}

/********************************************************
**
*主程序*
**
*********************************************************/

main()
{//////////////////////////////////////////////////
//以下为输出位初始化

HC595_OE=1;//并行输出为高阻状态

_nop_();
_nop_();

HC595_sRCLR=0;//清空移位寄存器

_nop_();

HC595_sER=0;//清零

_nop_();
_nop_();

HC595_RCLK=0;//移位时钟初始为低

_nop_();

HC595_sRCLK=0;//寄存器时钟初始为低

_nop_();

HC595_OE=0;//允许并行输出

_nop_();

HC595_sRCLR=1;//结束复位状态
////////////////////////////////////////////////


//循环显示0--9

while(1)
{
uchari;
for(i=0;i<10;i++)
{
temp=DAT[i];//取显示数据
WR_595();
OUT_595();
delay(200);
}


}
}

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

数码管里面相当于有8个段码管(或叫发光二极管)。 数码管分阳极管(CA),阴极管(CC)。阳极管是接高电平然后通过每个段选为来控制数码管亮灭(高电平灭,低电平亮)。阴极管则是接低电平,通过段选来控制亮灭(高电平亮,低电...

关键字: 数码管 使用

数码管引脚图

关键字: 数码管 编程

共阳极、共阴极数码管编码表(0~9、A~P……全亮)

关键字: 数码管 段码

【单片机自学】3.数码管静态及动态显示

关键字: 数码管 数字

LED数码管驱动芯片选型指南

关键字: 数码管 芯片

数码管是嵌入式开发中比较常用的一个模块,本篇文章根据查阅的资料以及学习笔记整理成文,尽可能详尽的讲解常用数码管原理和使用方法。若有不足和疏忽的地方,请不吝指正。一、工作原理数码管是一种半导体发光器件,其基本单元是发光二极...

关键字: 数码管

led数码管(LEDSegmentDisplays)由多个发光二极管封装在一起组成“8”字型的器件,引线已在内部连接完成,只需引出它们的各个笔划,公共电极。

关键字: 发光二极管 数码管

数码管是一种半导体发光器件,其基本单元是发光二极管。数码管按段数可分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元,也就是多一个小数点(DP)这个小数点可以更精确的表示数码管想要显示的内容;按能显示...

关键字: 数码管 LED数码管

数码管是嵌入式开发中比较常用的一个模块,本篇文章根据查阅的资料以及学习笔记整理成文,尽可能详尽的讲解常用数码管原理和使用方法。

关键字: 数码管 半导体发光器件

数码管是一种半导体发光器件,其基本单元是发光二极管。能显示4位数字的叫四位数码管,当然也有多位和只有一位的数码管,他们的电气原理相同。

关键字: 数码管 半导体发光器件
关闭
关闭