先介绍一下STM32单片机
在STM32F105和STM32F107互连型系列微控制器之前,意法半导体已经推出STM32基本型系列、增强型系列、USB基本型系列、互补型系列;新系列产品沿用增强型系列的72MHz处理频率。内存包括64KB到256KB闪存和 20KB到64KB嵌入式SRAM。新系列采用LQFP64、LQFP100和LFBGA100三种封装,不同的封装保持引脚排列一致性,结合STM32平台的设计理念,开发人员通过选择产品可重新优化功能、存储器、性能和引脚数量,以最小的硬件变化来满足个性化的应用需求。截至2010年7月1日,市面流通的型号有:
基本型:STM32F101R6、STM32F101C8、STM32F101R8、STM32F101V8、STM32F101RB、STM32F101VB
增强型:STM32F103C8、STM32F103R8、STM32F103V8、STM32F103RB、STM32F103VB、 STM32F103VE、STM32F103ZE
STM32型号的说明:以STM32F103RBT6这个型号的芯片为例,该型号的组成为7个部分,其命名规则如下:
1STM32STM32代表ARM Cortex-M内核的32位微控制器。
2FF代表芯片子系列。
3103103代表增强型系列。
4RR这一项代表引脚数,其中T代表36脚,C代表48脚,R代表64脚,V代表100脚,Z代表144脚,I代表176脚。
5BB这一项代表内嵌Flash容量,其中6代表32K字节Flash,8代表64K字节Flash,B代表128K字节Flash,C代表256K字节Flash,D代表384K字节Flash,E代表512K字节Flash,G代表1M字节Flash。
6TT这一项代表封装,其中H代表BGA封装,T代表LQFP封装,U代表VFQFPN封装。
766这一项代表工作温度范围,其中6代表-40——85℃,7代表-40——105℃。
对于工程师来说,要给stm32烧录程序,会很熟悉,工具也相当多,因为要调试程序,常用的软件像MDK,IAR等都可以在线烧录和仿真,工具链像常用的STINK,JLINK,ulink,串口isp等等。而当一个产品研发定型后进入小型试量产,需要把程序灌进几百几千片芯片里面,是比较烦锁的事。当然,量很大的话,可以直接找厂家代烧,一般小批量的话,还是得自己动手。淘宝有很多脱机烧录器也是可以选择的,本文不讨论这种方式,我们讨论用ST官方软件配合STLINK的批量烧录方法,下面进入正题。
一、打开 STM32 ST-LINK Utility
二、点击打开文件,添加需要烧录的 HEX 程序文件
三、添加文件成功后如下图
四、点击编程按钮,如下图,注意,如果MCU的SWD引脚复用IO的话,在烧写时,需在先按住复位键,点击 start 后再松开,如
果没有配合好没下载成功,则重复一次
五、设置烧录选项,打开程序读保护,点击 target->Option Bytes..如图
六、把 option bytes 里面 read out protection 选为 Enabled,下方三个钩选中,然后点
选择使能读保护,下面几个复选框一般勾上即可,比如WDG_SW是控制是否打开硬件看门狗的,如果不勾,就会打开,造成芯片一段时间后自动复位。再下面是扇区保护的选择(以4页为单位),建议不勾选,勾选后似乎远程升级不能成功(比如IAP),没有测试过。F4系列的L2级加密后无法解除,如果程序烧错,新程序无法烧录进去,芯片就没用了。
七、烧录完毕,取下目标板。软件不需要关闭,直接换下一块目标板,继续以上步骤。
检查读保护和写保护
因为刚才烧录时选择了读保护和写保护,当收录完之后,再用ST-LINK Utility去连接stm32时就会提示: