一个嵌入式处理器自己是不能独立工作的,必须给它供电、加上时钟信号、提供复位信号,如果芯片没有片内程序存储器,则还要加上存储器系统,然后嵌入式处理器芯片才可能工作。这些提供嵌入式处理器运行所必须的条件的电路与嵌入式处理器共同构成了这个嵌入式处理器的最小系统。而大多数基于arm7处理器核的微控制器都有调试接口,这部分在芯片实际工作时不是必需的,但因为这部分在开发时很重要,所以也把这部分也归入最小系统中。
——最小系统框图
各部件简介
——电源
电源系统为整个系统提供能量,是整个系统工作的基础,具有极其重要的地位,但却往往被忽略。如果电源系统处理得好,整个系统的故障往往减少了一大半。
设计电源时要考虑的因素:
1.输出的电压、电流、功率;
2.输入的电压、电流;
3.安全因素;
4.输出纹波;
5.电池兼容和电磁干扰;
6.体积限制;
7.功耗限制;
8.成本限制。
1.分析需求
lpc2000系列微控制所需要的电源类型:
对于lpc2200系列微控制器,它有4组电源输入。理想情况下需要提供4组独立的电源,它们需要单点接地或大面积接地。甚至还有为系统中其它的部件提供更多种类的电源。但如果没有使用lpc2000内部的ad功能,或对ad的要求不高,模拟电源和数字电源可以不分开供电。这样lpc2200和lpc210x都只需要两组电源。
2.设计末级电源电路
lpc2000系列微控制1.8v消耗电流的极限值为70ma。为了保证可靠性并为以后升级留下余量,则电源系统1.8v能够提供的电流应当大于300ma。
整个系统在3.3v上消耗的电流与外部条件有很大的关系,这里假设电流不超过200ma,这样,电源系统3.3v能够提供600ma电流即可。
分析得到以下参数:
3.3v电源设计最大电流:600ma;
1.8v电源设计最大电流:300ma。
在了解功率消耗之后,需要选择合适的器件。
因为系统对这两组电压的要求比较高,且其功耗不是很大,所以不适合用开关电源,应当用 低压差模拟电源(ldo)。合乎技术参数的ldo芯片很多,sipex 半导体spx1117是一个较好的选择,它的性价比较好,且有一些产品可以与它直接替换,减少采购风险。
3.设计前级电源电路
尽管spx1117允许的输入电压可达20v(参考芯片数据手册),但太高的电压使芯片的发热量上升,散热系统不好设计,同时影响芯片的性能。这样,就需要前级电路调整一下。如果系统可能使用多种电源(如交流电和电池),各种电源的电压输出不一样,就更需要前级调整以适应末级的输入。通过之前的分析,前级的输出选择为5v。选择5v作为前级的输出有两个原因:
这个电压满足spx1117的要求;
目前很多器件还是需要5v供电的,这个5v可以兼做前级和末级了。
根据系统在5v上消耗的电流和体积、成本等方面的考虑,前级电路可以使用开关电源,也可以使用模拟电源。 它们的特别如下:
开关电源:效率较高,可以减少发热量,因而在功率较大时可以减小电源模块的体积;
模拟电源:电路简单,输出电压纹波较小,并且干扰较开关电源小得多。
——时钟
目前所有的微控制器均为时序电路,需要一个时钟信号才能工作,大多数微控制器具有晶体振荡器。简单的方法是利用微控制器内部的晶体振荡器,但有些场合(如减少功耗、需要严格同步等情况)需要使用外部振荡源提供时钟信号。
目前所有的微控制器均为时序电路,需要一个时钟信号才能工作,大多数微控制器具有晶体振荡器。简单的方法是利用微控制器内部的晶体振荡器,但有些场合(如减少功耗、需要严格同步等情况)需要使用外部振荡源提供时钟信号。
——复位及其芯片配置
微控制器在上电时状态并不确定,这造成微控制器不能正确工作。为解决这个问题,所有微控制器均有一个复位逻辑,它负责将微控制器初始化为某个确定的状态。这个复位逻辑需要一个复位信号才能工作。一些微控制器自己在上电时会产生复位信号,但大多数微控制器需要外部输入这个信号。这个信号的稳定性和可靠性对微控制器的正常工作有重大影响。
复位电路可以使用简单的阻容复位,这个电路成本低廉,但不能保证任何情况产生稳定可靠的复位信号,所以一般场合需要使用专门的复位芯片。
常用的复位专用芯片有catalyst公司的cat800系列,sipex公司的sp700系列和sp800系列。为了适应嵌入式系统的应用,这些公司还推出带有eeprom存储器和看门狗的复位芯片,这可以降低系统成本和缩小产品体积,减少元件数量也有利于系统的稳定性。
如果系统不需要手动复位功能,可以选择cat809。如果需要手动复位功能,可以选择sp705/706、sp708scn。
种类繁多的复位芯片可以满足不同工作电压和不同复位方式的系统,这里仅介绍其中部分。
注意:复位芯片的复位门槛的选择至关重要,一般应当选择微控制器的io口供电电压范围为标准。lpc2000这个范围为:3.0v~3.6v,所以选择复位门槛电压为2.93v,即电源电压低于2.93v时产生复位信号。
cat809——3脚微控制器电源监控电路:
低有效复位;
在工业级温度范围的应用中可直接代替max809;
vcc低至1.0v时,复位信号仍然有效;
6ua的电源电流;
抗电源的瞬态干扰;
紧凑的3脚sot23和sc70封装;
工业级温度范围:-40℃~+85℃ 。
sp708/r/s/t——低功耗微处理器复位监控芯片:
2.63v:sp708r;2.93v:sp708s;3.08v:sp708t;
复位脉冲宽度-200ms;
最大电源电流40ua;
支持开关式ttl/cmos手动复位输入;
vcc下降至1v时,nreset信号仍然有效;
sp708/r/s/t支持高/低电平两种方式。
sp6200/6201——带复位输出的 ldo调节器 :
适用于要求高精度、快速操作和方便使用的应用;
极低的关断电流:最大为1ua;
低压差:160mv@100ma。输出电压高精度: 2% ;
逻辑控制的电子使能;
复位输出(vout良好);
1uf的陶瓷电容就可保持器件无条件稳定工作。
cat1024/1025——带eeprom的复位芯片 :
具有2k字节eeprom存储器,数据保存时间长达100年;
存储器采用400khz的i2c总线接口,16字节的页写缓冲区;
cat1025具有高、低电平复位信号,cat1024具有低电平复位信号。vcc低至1v时复位仍有效;
工作电压范围:2.7v~5.5v;
手动复位输入。
微控制器在复位后可能有多种初始状态,具体复位到哪种初始状态是在复位的过程中决定的。复位逻辑可能通过片内只读存储器中的数据决定具体的初始状态,但更多的是通过复位期间的引脚状态决定,也可能通过两者共同决定。用引脚状态配置复位后的初始状态没有统一的方法,需要根据相关芯片的手册决定。
——存储器系统
对于大部分微控制器来说,存储器系统不是必需的,但如果微控制器没有片内程序存储器或数据存储器时,就必须设计存储器系统,这一般通过微控制器的外部总线接口实现。
注:外部总线的接口方法请参看6.3节。
——调试与测试接口
调试与测试接口不是系统运行必须的,但现代系统越来越强调可测性,调试、测试接口的设计也要重视了。lpc2000有一个内置jtag调试接口,通过这个接口可以控制芯片的运行并获取内部信息。
在该电路中,复位电路与前面介绍电路有所不同。它在复位信号和cpu之间插入了三态门74hc125。使用三态门主要是为了复位芯片和jtag(etm)仿真器都可以复位芯片。如果没有74hc125,当复位芯片输出高电平时,jtag(etm)仿真器就不可能把它拉低,这不但不能实现需要的功能,还可能损坏复位芯片或jtag(etm)仿真器。
完整的最小系统
lpc2000系列微控制器具有4种类型的最小系统。
lpc2100系列没有外部总线接口的最小系统;
lpc2130系列没有外部总线接口的最小系统;
lpc2200系列使用外部存储器的最小系统;
lpc2200系列使用内部存储器的最小系统。
完整的最小系统
——lpc2100系列
完整的最小系统
——lpc2130系列
完整的最小系统
——lpc2200使用外部存储器
完整的最小系统
——lpc2200不使用外部存储器