单片机能直接驱动数码管吗?为何要多加驱动芯

如题所述

第1个回答  推荐于2017-12-15
一般单片机能输出10ma左右的电流就可以直接驱动数码管,但数码管多时,用静态驱动会占用较多IO端口,如4个数码管要占32个管脚,并且虽单片机单个管脚驱动电流可达20ma,但整个芯片的电流有限,所以静态驱动只用于有一至二个数码管的场合
用动态驱动的话可以节省IO管脚,这时可以在位选端加驱动,它流过的电流比较大,是一个数码管各段电流的总和,但段信号可以由单片机直接输出而不加驱动
如果外设比较多,管脚不够用,还是要加驱动,但主要是用锁存器的锁存功能,以便一个端口可以接许多外设而不相互影响
如常见的51单片机开发板,接了三个锁存器之后,数码管段信号,位信号以及LED流水灯都有可以共用一个数据端口P0追问

静态和动态又是什么意思呢?

追答

如一个数据端口若只接一个数码管,向此端口送一个数据,如果没有新的数据送来,数码管就一直显示这个数据 ,这是静态显示,与其对应的是动态扫描显示,是指多个数码管共用一个数据端口,多个数码管轮流点亮,各显示各的数据,任何时刻只有一个数码管亮,由于这些数码管轮流的速度很快(每秒40次以上,扫描速度慢时可看到数码管闪烁),人眼有视觉惰性(视觉暂留),看起来所有数码管都是亮的
动态显示的好处是节约IO口数量,但占用CPU资源,需反复刷新各个数码管内容

追问

请问我看那个芯片手册里IoL和IoH这两个哪个是拉电流哪个是灌电流呢?

追答

IoH是拉电流,当单片机输出高电平时,外部接负载,电流从单片机内部流出,经负载到地,称为拉电流
IoL是灌电流,当单片机输出低电平时,外部接负载,电流从外部电源正极流出,经负载到单片机内部,称为灌电流

追问

大神请问段选和位选是什么意思啊?

追答

段选决定数码管的哪一段亮,位选决定哪一个数码管亮。

本回答被提问者和网友采纳
相似回答