数码管动态显示

所谓的动态显示就是数码管不断变化,当变化速度超过人眼的识别范围时看起来就像数码管一直显示。

数码管动态显示时需要用到两个锁存器,一个是段锁存,一个是位锁存。一般开发板上使用的数码管动态显示,一组为八个数码管,这里可以称之为八位,每个数码管为一位,位锁存器就是决定哪一位亮起来,而位锁存器决定亮的那一位显示什么。动态显示一般先传段码,决定下一次显示什么内容,再传位码,使下一位亮起,段码和位码的内容都是事先定义一个全局数组,然后查表实现,一般位码数组内容是不做变化的,想改变显示内容只要改变相应位的段码就行。

定义段码

unsigned char regport[8] = {}; //显示内容自定义

定义位码

unsigned char bitport[8] = {0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};  //因为位码的作用是让数码管一个一个按顺序亮,所以一般不做改变。

定义使用的I/O口

#define SEGPORT P0
sbit bit_select = P2^0;
sbit seg_select = P2^1;

  • 1
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值