ISP指电路板上的空白元器件可以编程写入最终用户代码,而不需要从电路板上取下元器件。已经编程的器件也可以用ISP方式擦除或再编程。
使用ISP的时候需要用到自举程序(BootLoader),自举程序存储在STM32器件的内部自举 ROM(系统存储器)中。其主要任务是通过一种可用的串行外设(USART、CAN、USB、I2C等)将应用程序下载到内部Flash存储器中。每种串行接口都定义了相应的通信协议,其中包含兼容的命令集和序列。
现在我们针对USART1的ISP进行分析,通常的ISP下载的步骤如下:
1)通过USB转串口线将电脑连接到STM32的USART1,并打开电脑端的上位机;
2)设置跳线保持BOOT0为高电平,BOOT1为低电平;
3)复位单片机使其进入BootLoader模式,通过上位机下载程序;
4)下载完毕,设置跳线保持BOOT0为低电平,BOOT1为低电平;
5)复位单片机即可启动用户代码,正常运行。
以上步骤有个不好的地方就是:下载程序需要跳线及复位操作,很繁琐。理解了ISP的原理,就理解一键ISP了。它需要做的事情就是用上位机去控制BOOT0引脚和单片机的复位引脚,电路图见图3-6。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部1条评论
快来发表一下你的评论吧 !