关于STC单片机的自动下载
本帖最后由 li--wei--hao 于 2016-12-22 10:01 编辑STC单片机下载程序需要冷启动,每次都要按开关,想必很多人的开关都坏了吧
其实STC单片机内部自带软件复位,可复位到ISP程序监控区,只要配合STC官方
上位机即可实现软件自动下载功能。
程序实现原理可参考STC官方数据手册ISP/IAP/EEPROM章节
原理是配合STC-ISP的”收到用户命令后复位到ISP程序监控区“功能
以下是实现该功能的代码片段
autoload.c#include "autoload.h"
#if ENABLE_AUTOLOAD == 1
static unsigned char UART_Count=0,UART_Temp=0;
void AutoLoad_Init(void)
{
TMOD |= 0x20;
TH1 = 0xfd;
TL1 = 0xfd;
SCON |= 0x50;
TR1 = 1;
EA = 1;
ES = 1;
}
void AutoLoad_ISR(void) interrupt 4
{
RI = 0;
UART_Temp = SBUF;
if(UART_Temp == 0xee)
{
UART_Count++;
if(UART_Count > 5)
ISP_CONTR=0x60;
}
}
#endifautoload.h#define ENABLE_AUTOLOAD 1
#if ENABLE_AUTOLOAD == 1
#ifndef _AUTOLOAD_
#define _AUTOLOAD_
#include <stc89c5xrc.h>
void AutoLoad_Init(void);
#endif
#endif 现在写代码很难啊 还有这功能?! toofree 发表于 2016-12-22 11:42 static/image/common/back.gif
这功能牛逼,适合不使用串口的应用中
使用串口的应用中也可以用,只要用户命令与要传输的数据不冲突就可以 这功能牛逼,适合不使用串口的应用中 学习了,一直没发现还有这个功能
页:
[1]