历史上的今天
今天是:2025年11月12日(星期三)
2022年11月12日 | 【51单片机】数据管的消影问题
2022-11-12 来源:csdn
数码管的消影
未消影
代码
#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; //消除位选对段选的影响 } } 运行结果
史海拾趣
|
1、一个年轻人,如果三年的时间里,没有任何想法,他这一生,就基本这个样子,没有多大改变了。 2、成功者就是胆识加魄力,曾经在火车上听人谈起过温州人的成功,说了这么三个字,“胆子大”。这其实,就是胆识,而拿得起,放得下,就是魄力。 ...… 查看全部问答> |
|
用VC++在状态栏显示时钟 在VC的控件中有个Status bar可以在窗体状态栏中添加日期和时间。其实通过简单的代码,你就能创建一个有时钟显示的状态栏,并且还能设置时钟栏的显示方式。举例如下: 首先,用MFC AppWizard按默认方式 ...… 查看全部问答> |
|
仿真时,我笔记本上的USB口最小为com11,而Keil中的com为1-8,com11能驱动,将com11改为com3(不知以前做什么用的),就是驱动不了,为什么?要怎么做呢?… 查看全部问答> |
|
本帖最后由 jameswangsynnex 于 2015-3-3 20:02 编辑 据市场调研公司IC Insights,无厂半导体公司高通第一季度芯片销售额排名升至第五,超过了德州仪器等其它厂商。第一季度高通半导体销售额为30.6亿美元,比2011年第一季度增长56%。同比增长强劲 ...… 查看全部问答> |
|
replyreload += \',\' + 1510749;目录 第一部分:放大器的分类简介 第二部分:使用放大器的一般性规则 第三部分:选择放大器入门 第四部分:使用网络资源 第五部分:数据记录和报告撰写 第六部分:实验和注意事项 什么是放大 ...… 查看全部问答> |




