动态扫描 |
控制数码管位选和段选就能显示你想要的值 |
现在网上查3621AH的资料,再用万用表二极管档验证各管脚的功能。 |
程序可以贴出来看看么? |
流浪深圳 发表于 2021-1-19 18:54 一般2MS |
先用万用表确定公共端,确定段选,用两个IO口控制位选,8个控制段选,如果需扩展IO口可用74H138。 |
LTX~LTX 发表于 2019-3-9 18:54 延时要多少啊? |
请问 单片机89C51接 这个共阳数码管 的话是不是要在8个端口都接上大约200Ω的电阻 |
用电源引线,串电阻,一对对引脚测试,就能找出来 |
|
把8个引脚分别接上单片机,编程把一个一个引脚的送低电平,就可以试出来了 |
只要懂得引脚与数码管字面上之间的关系,想用什么电路控制都行 |
程序在哪里? 第一:好好看看你的数码管的管脚,共十脚,为什么呢?每个数码管的八个LED的阴极——八个脚,另外两脚就是每个数码管的共阳了,电路如图 ![]() 看清楚了,这两个数码管的阴极是并联在一起的,所以你给段码后,两个数码管显示内容当然是一样的! 这样做对新手是很难的,但节约了单片机的IO口啊——10个IO口控制两个数码管,12个IO口可以控制四个数码管......用的数码管越多,节约的IO口就越多。 第二:这样的数码管显示方法是:利用视觉暂留现象,开一个数码管,显示一下,就关了,马上开另一个数码管,人眼还没有感觉第一个数码管已经关了,第二个又开了,人就认为——是认为,两个数码管都是亮的,四个、八个数码管都是这样显示的举个例子程序吧: 假设:上面这两个数码管是这样和单片机连接的:ABCDEFG和DP接在P0口,A在最低位,DP在最高位;DIG1、DIG2分别接在P20、P21上,那么,显示子函数应该是这样的: void XS(void)//显示子函数 { DIG1=1;//开第一个数码管 P0=0x55;//这个0x55是我随便写的,表示你要显示的第一个内容 void Delay10ms();//软件延时 DIG1=0;//关第一个数码管 DIG2=1;//开第二个数码管 P0=0xaa;//这个0xaa是我随便写的,表示你要显示的第一个内容 void Delay10ms();//软件延时 DIG2=0;//关第二个数码管 } 你试试看 |
难道老师连这个也未教? |