stc 单片机支持串口isp 程序下载,不必使用专用下载器,仅使用串口就能下载程序
但每次下载程序都要断电再上电,比较麻烦
下面介绍一种不需断电就能下载程序的方法,在程序调试时比较方便
基本原理: stc 单片机有专用的复位寄存器,通过对该寄存器写入不同的数值可以实现单片机热启动复位
寄存器功能如下图所示: 由上图可以看出只要满足某个条件,向 ISP_CONTR 写入0x60, 就可以实现从ISP 监控区软启动启动 某个条件设置为:当串口接收到0xaa 数据时,单片机执行ISP_CONTR=0x60; 指令,从ISP监控区软启动启动
演示程序如下: //*************************STC12C5410AD 软启动演示************************** // //收到0xaa,从 ISP 监控区软启动,利用该特性,可以实现stc 单片机不断电下载 //收到0x55,从用户程序区启动 //2010年 3月 13日 21:58:49 //************************************************************************* #include uint c; //*************** 函数定义 ****************** void delay1ms(unsigned int j); void senddata(uchar dc); //*************** 主程序 ******************** void main(void) { ///****************** TMOD|=0x20; SCON=0x50; TH1=0xfd; //12T 时钟9600bps TL1=0xfd; TR1=1; ES=1; EA=1; AUXR