1.什么是最小系统
以单片机最小系统为例,指的就是单片机可以正常执行程序的最简单的工作环境。
最小系统可以说是整个系统最核心的部分了,再加上一个产品所需要的其他硬件外设,就组成了一个产品的硬件系统了。
2.最小系统的组成
最小系统组成包括:电源、复位、时钟、调试接口、启动方式。
2.1 电源
下图是STM32F103数据手册给出的供电方案。 电源最重要的就是供电电压和去耦电容的选择。这些都可以从芯片数据手册获得相关信息。
2.2 复位
最简单的复位电路,只需要阻容就可以完成。 在上电瞬间,电容充电,Reset会出现短暂的低电平,这个低电平的持续时间由电阻和电容共同决定,计算公式:t = 1.1RC
2.3 时钟
时钟是系统的心脏。 时钟不正常或者不稳定,都会影响系统的运行。
对于STM32来说,外部时钟有两种晶体,低速外部时钟信号(LSE)接32.768KHz晶体,高速外部时钟信号(HSE)接8MHz晶体。
这里的32.768K晶体,会经过15次分频之后,32768 = 2^15,就可以得到1Hz的频率,这个频率一般用于芯片内部的RTC(实时时钟)计时。
2.4 调试接口
在做一个产品或项目的时候,我们必须要考虑到留出一个调试接口,这个是方便在嵌入式软件开发时调试和下载程序用的。
对于STM32来说,内部集成了串行/JTAG调试接口(SWJ-DP)。串行调试接口只需要两根线即可,而JTAG接口需要5根线。一般在一个项目中,我们只留出串行调试接口即可,这样可以节省空间。
2.5 启动方式
不同的SoC,其实有多种不同的启动方式。
对于STM32,来说有3种启动模式,可以通过配置BOOT[1:0]引脚来选择不同的启动方式。 以上就是一个单片机最小系统组成所需的部分了。
其实我们把一个项目的硬件板子打样回来之后,首先要检查的就是这些最小系统的组成部分是否都能正常工作。又或者我们说我们在硬件调试的时候,发现系统不工作,首先检查的也是最小系统的这几个组成部分是否能正常工作。面试时人家问你,如果一个系统运行不正常的调试思路时,也可以从这个角度去回答。
|