首页 > 技术文章 > 15单片机快速下载程序

Llingfeng 2021-04-14 21:14 原文

/*----------------------------
UART 中断服务程序
-----------------------------*/
void Uart() interrupt 4
{
    
        if (RI)
    {
        RI = 0;//清除RI位
        if(SBUF==0xaa)   //下载方便使用
            IAP_CONTR=0x60;                    
                if(SBUF =='O') //判断是否接收到结束符
        {
                        Cout = 0;
                        Re = 1;
                        Switch1 = 0;
        }
                else
                {
                    Re=0;
                    Buff[Cout++]=SBUF;
                }
    }
    if (TI)
    {
        TI = 0;                 //清除TI位
        busy = 0;               //清忙标志
    }
}
主要是在串口中添加一段代码,前提必须打开了串口中断

目前只试过15单片机,感觉51应该也可以使用这种模式下载程序 (修改:51也可以用)

if(SBUF==0xaa) //下载方便使用 IAP_CONTR=0x60; 、

加上这句代码

全局变量上也应定义
sfr IAP_CONTR = 0x60;
(一般都已经定义了,你在定义会报错)

sfr简介:
sfr特殊功能寄存器 sfr也是一种扩充数据类型,点用一个内存单元,值域为0~255。利用它可以访问51单片机内部的所有特殊功能寄存器。


下图为下载软件的配置,红框部分为重点。

 

 

 

 



推荐阅读