MCU的基本功能有哪些?选择低功耗MCU需要考虑的3点!
扫描二维码
随时随地手机看文章
MCU将是下述内容的主要介绍对象,通过这篇文章,小编希望大家可以对MCU的相关情况以及信息有所认识和了解,详细内容如下。
一、MCU的基本功能
对于绝大多数MCU,下列功能是最普遍也是最基本的,针对不同的MCU,其描述的方式可能会有区别,但本质上是基本相同的:
* Timer(定时器):Timer的种类虽然比较多,但可归纳为两大类:一类是固定时间间隔的Timer,即其定时的时间是由系统设定的,用户程序不可控制,系统只提供几种固定的时间间隔给用户程序进行选择,如32Hz,16Hz,8Hz等,此类Timer在4位MCU中比较常见,因此可以用来实现时钟、计时等相关的功能;另一类则是Programmable Timer(可编程定时器),顾名思义,该类Timer的定时时间是可以由用户的程序来控制的,控制的方式包括:时钟源的选择、分频数(Prescale)选择及预制数的设定等,有的MCU三者都同时具备,而有的则可能是其中的一种或两种。此类Timer应用非常灵活,实际的使用也千变万化,其中最常见的一种应用就是用其实现PWM输出(具体的应用,后续会有特别的介绍)。由于时钟源可以自由选择,因此,此类Timer一般均与Event Counter(事件计数器)合在一起;
* IO口:任何MCU都具有一定数量的IO口,没有IO口,MCU就失去了与外部沟通的渠道。根据IO口的可配置情况,可以分为如下几种类型:
1.纯输入或纯输出口:此类IO口有MCU硬件设计决定,只能是输入或输出,不可用软件来进行实时的设定;
2.直接读写IO口:如MCS-51的IO口就属于此类IO口。当执行读IO口指令时,就是输入口;当执行写IO口指令则自动为输出口
3.程序编程设定输入输出方向的:此类IO口的输入或输出由程序根据实际的需要来进行设定,应用比较灵活,可以实现一些总线级的应用,
如I2C 总线,各种LCD、LED Driver 的控制 总线等;
对于IO口的使用,重要的一点必须牢记的是:对于输入口,必须有明确的电平信号,确保不能浮空(可以通过增加上拉或下拉电阻来实现);而对于输出口,其输出的状态电平必须考虑其外部的连接情况,应保证在Standby或静态状态下不存在拉电流或灌电流。
二、选择低功耗MCU需要考虑的3点
(1)时钟系统是MCU功耗的关键。应用可以每秒多次或几百次进入与退出各种低功耗模式。进人或退出低功耗模式以及快速处理数据的功能极为重要,因为CPU会在等待时钟稳定下来期间浪费电流。大多低功耗MCU都具有“即时启动”时钟,其可以在不到10~20us时间内为CPU准备就绪。重要的是要明白哪些时钟是即时启动以及哪些是非即时启动的。某些MCU具有双级时钟激活功能,该功能在高频时钟稳定化过程中提供一个低频时钟(通常为32768Hz),其可以达到1ms。CPU在大约15us时间内正常运行,但是运行频率较低,效率也较低。如果CPU只需要执行数量较少的指令的话,如:25条,其需要763usaCPU低频比高频时消耗更少的电流,但是并不足于弥补处理时间的差异。某些MCU在6us时间内就可以为CPU提供高速时钟,处理相同的25条指令仅需要大约9us(6us激活+25条指令0.125us指令速率)),而且可以实现即时启动的高速串行通信。
(2)事件驱动功能与时钟系统的灵活性并存。中断会使MCU退出低功耗模式,因此MCU的中断越多,其防止浪费电流的CPU轮询与降低功耗的灵活性就越大。轮询意味着进行与不进行功耗预算之间存在差异,因为它在等待出现事件时会浪费CPU带宽并需要额外电流。一个好的低功耗MCU应具有充分的中断功能,为其所有外设提供中断,同时为外部事件提供众多外部中断。
(3)按钮或键盘应用可以证明外部中断的优势。如果不具备中断功能,MCU必须频繁轮询键盘或按钮,以确定其是否被按下。不仅轮询自身会消耗功率,而且控制轮询间隔也需要定时器,其会消耗附加电流。在具备中断情况下,CPU可以在整个过程中保持睡眠状态,只有按下按钮时才激活。
经由小编的介绍,不知道你对MCU是否充满了兴趣?如果你想对MCU有更多的了解,不妨尝试度娘更多信息或者在我们的网站里进行搜索哦。