数码管的消影
未消影
代码
#include sbit wela=P2^7; //位选 sbit dula=P2^6; //段选 void main() { while(1) { //一直显示 dula=1; P0=0x06; //显示1 dula=0; wela=1; P0=0xfe; //选择第一个数码管 wela=0; } } 运行结果 原因 第一个数码管的1显示较亮但是同时伴随着另外较弱一点段位的显示,可以看出是下面位选的影响(0xfe),然后几 个未选择的数码管亮了,可以看出是前面段选带来的影响(0x06->对应位选的就是1,4,5,6位数码管)。 其实消除影响就是把选择过的状态重新置为没有选择过的状态,段选是置为1才选中所以消除影响应该置为0,位选是 置为0才选中所以消除影响全部置为1 。 如何消影 为了消除段选对位选的影响:应该在两者之间加上P0=0xff; 为了消除位选对段选的影响:应该在两者之间加上 P0=0x00; 消影 代码 #include sbit wela=P2^7; //位选 sbit dula=P2^6; //段选 void main() { while(1) { //一直显示 dula=1; P0=0x06; //显示1 dula=0; P0=0xff; //消除段选对位选的影响 wela=1; P0=0xfe; //选择第一个数据管 wela=0; P0=0x00; //消除位选对段选的影响 } } 运行结果
上一篇:清翔51单片机5个中断所涉及的寄存器
下一篇:【51单片机】 数据管显示HELLO
推荐阅读最新更新时间:2024-11-12 21:50
设计资源 培训 开发板 精华推荐
- 仓库管理
- DC2247A,基于 LT3922 36V 2A 同步 2MHz 升压 LED 驱动器的演示板
- LTC3526LBEDC-2 3.3V 升压转换器的典型应用电路,输出与 5V USB 输入进行“或”运算
- 使用 Analog Devices 的 LT1634CCZ-5 的参考设计
- L7986TA 3A 降压型开关稳压器的典型应用
- FEBFAN7688_I00250A,基于 FAN7688 250W、400V 至 12.5V LLC 谐振转换器的评估板
- 用于手电筒的 2-LED 闪光灯 LED 驱动器
- MVFETFBGEVB,基于 NCP81071 相移全桥的评估板
- OPENMV_LED+BAT
- OM11043,用于 LPC1768 Cortex-M3 MCU 的 ARM 嵌入式评估板