您的位置 首页 资料

51单片机+74hc595锁存器驱动一个静态数码管

实验开发板HC6800v2.8(淘宝可以查到)将JP2与JP3相连即可,注意排线要反接代码如下:/**标题:试验数码管上如何显…

实验开发板HC6800 v2.8 (淘宝能够查到)

将JP2 与JP3相连即可,留意排线要反接

代码如下:

/*
* 标题: 实验数码管上怎么显现数字(共阳极) *
* *
* 衔接办法:P2 与P3 用8PIN排线衔接 *
* *
* *
/
#include
#include
void delay(unsigned int i); //函数声名
// 此表为 LED 的字模,0~F
unsigned char code LED7Code[] = {~0x3F,~0x06,~0x5B,~0x4F,~0x66,~0x6D,~0x7D,~0x07,~0x7F,~0x6F,~0x77,~0x7C,~0x39,~0x5E,~0x79,~0x71};
sbit lock=P3^5;//12,storage register clock input
sbit clk=P3^6;//11,shift register clock input
sbit dat=P3^4;//14,serial data input
/*将显现数据串行发送到74hc595*/
void sendTo(unsigned char k)
{
unsigned char i;
for(i=0;i<8;i++)
{
dat=k&0x01;
clk=0;//移位寄存器移位
_nop_();
_nop_();
clk=1;
k>>=1;//发送数据右移一位
}
}
void main()
{
unsigned int LedNumVal=0 ,C ; //界说变量
while(1)
{
if (++C>= 300)
{ LedNumVal++ ; //每隔300个扫描周期加一次
C =0; //每隔300个扫描清零
}
lock=0;
// 将字模送到14,serial data input
sendTo(LED7Code[LedNumVal%10]&0x7f);
//LED7 0x7f为小数点 共阴和共阳此处也是不一样;
_nop_();
_nop_();
lock=1;//所存数据
delay(300); //调用延时程序
}
}
/*
* *
* 延时程序 *
* *
*/
void delay(unsigned int i)
{
char j;
for(i; i > 0; i–)
for(j = 200; j > 0; j–);
}

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/ziliao/265011.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部