用PIC单片机控制共阳数码管显示

按下面的原理图接好了硬件之后,也烧了程序到MCU里了,但是数码管工作不正常,不正常情况:
1、有时候刚通电的时候不亮,然后用绝缘体微微动一下IC,就会亮,但亮一会后也会自灭。一开始以为是IC与电路板接触不良,就不用IC座,直接焊接到电路板上面,而且也排除了接触不良的可能性,但还是会出现那样的情况。请问是不是驱动方法不对?
2、只有两个数码管显示的时候,显示的数字显示得较稳定,当三个共阳数码管都显示的时候,数码管的最后一位会出现闪烁。(在MCU的信号输入端已经接了0.1uF的电容和1K电阻)
原理图如下:
原理图中PA.0口是信号输入,PA.1-3是数码管位先,PB是数码管段选。三个MCU共用一个晶振。PB口的限流电阻值是390R。

典型的驱动能力不够,单片机的输出能力很弱,一般都需要结合上拉电阻或者三极管来驱动后级电路,更何况是驱动led呢。

改善方法有两个:

1,使用数码管驱动ic,如595,164等等,具体连接方式请查阅其规格书,里面有典型电路介绍, 注意阴阳极方向是否正确。

2,使用三极管来实现,直接io通过pnp三极管来使能vcc信号,段选进入mcu,具体电路请参考图片。

追问

你好,我最初怀疑驱动不够的时候也这么连接过,但是情况还是没改善。

温馨提示:内容为网友见解,仅供参考
第1个回答  2013-12-13
可能是驱动不够,或者是动态扫描时间不对

为啥要共用一个叫晶振,pic也有内部晶振,如果为了省钱,可以用内部晶振追问

PIC16F716没有内振的呢。

追答

我觉得还是分开用晶振吧,不然用rc做振荡

追问

你好,分开用晶振也试过了哦,还是那样子哦。

第2个回答  2013-12-13
闪应该是因为扫描时间设置过长造成的。追问

如果是扫描时间过长,那么一个共阳数码管显示时也应该不稳定也是会闪,但是现在一组数码管工作时不会闪,两组数码管显示时有时会闪,有时不会,三组数码管都显示时,每组的第三位数码管都会闪,干扰吗?

用PIC单片机控制共阳数码管显示
1,使用数码管驱动ic,如595,164等等,具体连接方式请查阅其规格书,里面有典型电路介绍, 注意阴阳极方向是否正确。2,使用三极管来实现,直接io通过pnp三极管来使能vcc信号,段选进入mcu,具体电路请参考图片。

pic单片机数码管显示方式
静态显示就是每一个数码管用7根线驱动,比如你要显示4位十进制数,就需要4 * 7 = 28根线 动态显示是所有数码管共用7根线,但是需要一个扫描信号,需要另做一个扫频逻辑。如果你要显示一位两位十进制数的话可以考虑用静态显示,四位或者以上的话PIC就没有这么多空的引脚给你用了,最好做静态显示...

PIC单片机SPI控制两个74HC595控制四位数码管?
void DisplayScan(void)\/\/显示扫描函数 { Send_595(T_COM[display_index]);\/\/共阳输出位码 Send_595(~t_display[LED8[display_index]]);\/\/共阳输出段码 Send_595(T_COM[display_index]);\/\/共阳输出位码 Send_595(~t_display[LED8[display_index+8]]);\/\/共阳输出段码 P_HC595_RCLK =...

数码管显示
你用的单片机是PIC?看看程序了。不行,就是在三极管基接个10K电阻到地试试。。

PIC单片机 C语言编程实现二进制转化为十进制
如果是运算,直接用二进制运算就好了;如果是显示,直接做个数值和显示的对应表就好了.数码管显示就是10个数字:0-9.显示的时候,输出对应的管脚信号,到数码管的不同管脚,以显示不同码段.十进制0到9,这10个数字,要对应10种不同组合的管脚输出.与其这样,直接用二进制中的0-9,对应10种不同组合的管脚...

帮忙看一下这个PIC单片机的按键电路吧
一、L1DRV、L2DRV、L3DRV和L4DRV是数码管的共阴极,三极管就是配合上这个几个脚进行电流放大的,因为IO口无法承受那么大的电流,是用来进行LED数码管的位选,因为他采用动态扫描。二、二极管是按键扫描中进行各个按键进行隔离作用,防止按键误检,因为他采用显示扫描和按键扫描共用的,这样可以少用些IO口...

关于PIC用HC595驱动数码管的问题
跟编译器的警告没关系。你程序写少了。回去好好看16F684的中文数据手册的第40页右上角的初始化样例程序。PORTC口和AD模块还有比较器模块复用,而单片机上电时默认是比较器模拟输入打开。初始化portc口时,要把TRISA、ANSEL、还有CMCON0需要设置(CMCON0=0x07才能让PORTC设置为数据IO口)。你注意到...

pic单片机与51的区别在哪 pic单片机和51单片机哪个好
pic单片机的I\/O口双向,输出电路为CMOS互补推挽输出电路,具有较强的驱动能力,适合直接驱动数码管显示。pic单片机的A\/D转换精度高,能够满足精度要求。但编程时需反复选择对应的存储体,操作较为繁琐。综合来看,51单片机和pic单片机各有优势,选择时需根据实际需求进行权衡。

如何用最少的单片机端口驱动多个数码管?
最好的办法是用串转并的芯片如74HC164或595,只要二根线就可以驱动多个数码管,且是静态的,程序也方便编制,不用象动态显示那样不停地刷新。、附图是用PIC16单片机驱动6个数码管的PROTEUS仿真的情况,实物也运行了,没问题。理论上可以驱动无穷多个数码管,实际上用十几二十个没问题。北航《PIC16系列...

学校毕设太难搞了,求大神提供些数控电源资料,随便搞些小车的!非常感谢...
所用芯片51单片机,TLC5615 数码管 第五个电源参数:输出:正0-12V可调。步进0.01V 纹波小于10mV 采用数码管显示 三个按键,一个加,一个减,一个设置 过流报警电流可以自行设定,比如可以调到0.1A到2A内的任一值报警 具有过流保护 所用芯片51单片机,TLC5615 数码管 有论文,开题报告,外文...

相似回答