stm32f103最⼩系统的组成及各部分功能今天来跟⼤家普及⼀下stm32f103单⽚机的最⼩系统组成和各部分功能。
⼀、什么叫最⼩系统
最⼩系统就像我们⼈,我们活着每天都要吃饭,喝⽔。
饭和⽔就是我们的”燃料”,离开它们我们就挂逼了。
其实在芯⽚的世界也⼀样,单⽚机想要正常运⾏,它也需要”燃料”,这些燃料的组成就是最⼩系统。
⼆、“燃料”都由什么组成?
1.电源
拿STM32F103C8T6这个型号来说,总共有5个接电源正极和4个接地引脚,分别给内部不⽤的模块供电。
VDD:就是单⽚机的供电电压。
VDDA:VDD后⾯有个A,A=Analog,表⽰模拟的意思,就是芯⽚内部模拟器件的⼯作电压。
VSSA:表⽰模拟器件的公共端地。
VBAT:给后备区域供电,维持RTC/BKP寄存器这些数据掉电保存,⼀般是接纽扣电池,如果不需要可以直接接电源。
根据数据⼿册的说明,这⼏个引脚的供电电压最⼤不能超过3.6V。
说到数据⼿册,作为⼀个英语渣,这⾥多说⼀句,不要怕全是英⽂,不⽤全看懂,抓关键的地⽅看,其实来来去去就那⼏个英⽂。
2.复位电路
复位电路的作⽤就是,板⼦上电的瞬间给单⽚机复位引脚(NRST)⼀个短暂的低电平,让单⽚机程序复位,把除了备份区域寄存器以外所有寄存器状态恢复原始状态。
简单来说就是让程序重头开始跑。
复位电路的原理是利⽤RC电路的充放电原理,在上电瞬间为NRST引脚产⽣⼀个短暂的低电平。刚上电的时候电流会通过R19和C20到地,为C20充电,此时NRST的引脚为低电平。
嵌入式系统是什么意思当C20充满电以后,C20就处于”断路”的状态,此时NRST由低变⾼电平。
4.系统时钟
系统时钟⼀般是加外部晶振电路,相当于给单⽚机⼀个⼼跳。
就跟⼈的⼼跳⼀样,没⼼跳肯定就GG了。
同样,单⽚机没⼼跳也跑不起程序。
这个⼼跳也是⼀个时机基准,为单⽚机系统时钟、定时器之类的提供时间的基准。
我们最终计算定时器的时间,都跟这个晶振息息相关。
5.烧录⼝
烧录⼝的作⽤就是给单⽚机烧录程序,注⼊灵魂。
STM32的烧录⽅式有⼏种,实际产品开发⼀般⽤SWD接⼝烧录,占⽤尺⼨空间少,⼀般只需要5根线,也有些⽤4根线的,就是vdd不接,不接vdd烧录要单独给板⼦供电。
6.Boot0和Boot1
Boot0和Boot1是⽤来选择STM32单⽚机的启动⽅式的。
如果上图你看不懂什么意思,不要慌,正常的。
简单来说,⼤家要想正常跑程序就要把Boot0和Boot1都接到地,就是正常⼯作模式。
如果我们要使⽤串⼝烧录,也就是ISP,就需要把BOOT0接到电源,BOOT1接到地,烧录完以后再全部接到地,相对⿇烦很多。这也就是为什么我只⽤SWD烧录的原因,直接全部接地就⾏了。
通过上⾯这些电路的组合,单⽚机就能正常跑程序了。
如何验证你程序有没有正常在跑?
我⼀般在开发产品的时候,⾸先会把LED的驱动调出来获取安全感,让它每秒闪⼀次。
防⽌程序死机了我还傻乎乎继续写程序,写到后⾯程序⼤了,起问题来更浪费时间。
Ok,我是⽆际单⽚机编程,今天就先给⼤家普及到这,字不多,但是加上配图贼耗时间(意思可以安排三连了)。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论