×
单片机 > 单片机程序设计 > 详情

8051-stc冷启动自动下载线原理及DIY

发布时间:2020-08-26 发布时间:
|

什么是自动冷启?

正常情况下,要想给STC单片机下载程序,必须在下载软件发送下载命令之后再给STC单片机上电(如果之前已经上电,就要断电再上电),这样STC单片机才能进入到下载状态,这是STC定义好的下载协议,这一冷启的动作一般是由手动去完成的。自动冷启就是自动完成冷启这一动作,从而达到自动下载的目的。


STC单片机没有上电,发下载命令有什么用,其实详细的过程是这样的:单片机每次上电都会先检测有无下载命令,下载软件发送的下载命令是一直重复发送的,这样当单片机一上电,就可以检测到下载命令,进入下载状态。单片机只有上电瞬间才会检测下载命令,检测不到就会正常去运行程序,所以单片机上电后再发送下载命令就会错过检测的瞬间。


在STC单片机中有两个程序区,用户程序区与ISP程序区。单片机上电后(冷启动,  并非外部手动复位或看门狗复位),先会运行ISP程序,检测是否有合法的下载命令流,占时几十毫秒到几百毫秒,如果没有合法的下载命令流,则立即运行用户程序。如果有合法的下载命令流,则ISP监控程序开始与ISP下载软件通信,软件也会进入编程模式,向监控程序发送程序码,监控程序接收程序码,并将其写入用户程序区中。在编程完毕,对程序校验功后,用户程序立即生效,开始运行用户程序。  STC-ISP尝试与MCU握手连接的时候,是以“最低波特率”设置项中的波特率不断的从串口发送“0x7F”信号,直到上电冷启(或者软复位至ISP)经几十毫秒到几百毫秒检测下载命令流后,才停止发送“0x7F”信号。




『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
STM32中断向量表的位置.重定向