STC单片机免断电下载程序的另一种更简单的方法

发布者:DreamySerenity最新更新时间:2015-07-22 来源: 51hei关键字:STC单片机  免断电  下载程序 手机看文章 扫描二维码
随时随地手机看文章
看到网上有一些STC单片机免断电下载程序的例子。但是都是要用串口中断来完成。以下是一个程序片断

拿来说明

在调试程序中加入串口初始化代码,串口中断代码即可实现不断电下载程序

   TMOD|=0x20;
   SCON=0x50;
   TH1=0xfd;       //12T时钟9600bps
   TL1=0xfd;
   TR1=1; 
   ES=1;
   EA=1;
   AUXR=AUXR|0x40; //定时器1使用1T时钟   9600*12=115200bps    

void uart(void) interrupt 4
{
   uchar cdd;
   if(RI)
   {
RI=0;
cdd=SBUF;
if(cdd==0xaa)
{
ISP_CONTR=0x60;//软复位,从ISP监控区启动
}
else if(cdd==0x55)
{
ISP_CONTR=0x20; //软复位,从用户程序区启动

else
{
senddata(cdd);
}             
   }
   else
   {
TI=0;
   }
}

另外还要在stc下载软件中进行自定义下载设置才能完成面是一个操作视频

http://v.youku.com/v_show/id_XMTk2MTE5MTgw.html

  从上面可以看出比较麻烦,那么有没有一种更为简单的方法呢,从上面的视频得知只要对0xe7这个地址赋予0x60就可以完成下载程序的功能了,那么我就想,stc下载软件用的是串口,用串口就必然用要发送数据到单片机,而单片机接收引脚是P3^0,那么我们只要检测这个引脚有没有电平的变化,如果有变化那么就对0xe7这个地址赋予0x60,就会完成自动下载的命令了,有了思路就开始验证。经过调试结果成功,说明本人只是对STC89C52RC做过测试,其它芯片能否可行请自行测试,以下为完整的程序,在stc下载软件中不需要做任何的设置,就像平常下载程序一样就行。

/***  STC单片机免断电下载程序的另一种更简单的方法*******************************************************************
**程序功能:STC单片机免断电下载程序
**芯片型号:STC89C52RC
**晶振频率:11.0592M                                                
**编写日期:2010年11月23日
**编写人员:wang       QQ:349259818    Email:hongfadg@163.com
**备注说明: 
*******************************************************************/
//以下为所需的头文件
//#include
//#include
//#include
//#include
#include  
//定义关键字方便使用
#define uchar unsigned char    
#define uint unsigned int    
#define ulong unsigned long 
sfr iap=0xe7; //定义下载命令
sbit p30=P3^0; //串口接收引脚
/*                 主函数
*******************************************************************
**函数原型:main()
**函数功能:
**输入参数:无
**输出参数:无
**备注说明:完成程序的主要功能
*******************************************************************/
main()
{
while(1)  //主循环

   if(!p30) //判断串口是不是有数据
   {
    iap=0x60; //执行自动下载的命令 
   }
}

}

关键字:STC单片机  免断电  下载程序 引用地址:STC单片机免断电下载程序的另一种更简单的方法

上一篇:stc单片机不断电下载程序
下一篇:基于stc12c56的心电信号模拟程序

推荐阅读最新更新时间:2024-03-16 14:25

STM32 用ST-Link V2下载程序、仿真
1.Option Debug 选择ST-Link Debugger 2.点Setting 选SW模式 3.Flash Download选项页选Erase Full Chip模式,把Reset and Run勾上 这样下载直接运行程序就OK。 遇到的问题: no st-link detected: 到Keil MDK 安装目录下的运行ARM/STLink 下的ST-LinkUpgrade.exe升级你的ST-LInk V2固件解决问题。
[单片机]
STM32 用ST-Link V2<font color='red'>下载程序</font>、仿真
解决了STC单片机用USB口传程序的问题
在我使用最新的STC软件给STC89C52单片机烧录的时候,只能使用串口而使用USB接口总是无法正常烧录,今天研究一个晚上,终于搞定了!设置图如下
[单片机]
交流稳压电源模拟采样stc单片机程序
采用STC12C2052单片机自带的ad做的 程序如下: ;==自制作全自动交流稳压电源控制线路板程序= P1M0 EQU 91H ;端口设置寄存器 P1M1 EQU 92H ;端口设置寄存器 AK EQU 0C5H ;A/D转换控制寄存器 ADATA EQU 0C6H ;保存转换数据的高8位 ADATAD EQU 0BEH ;保存转换数据的低2位 ORG 00H JMP MAIN ;====================================== MAIN: MOV P1,#00H MOV P3,#00H
[单片机]
浅谈STC单片机特殊IO的用法
在正常情况下,51单片机在上电复位后,所有IO口默认都为高电平,都工作在准双向IO模式,但是STC15系列以后的单片机出现了IO的4种工作模式,一个带有复用功能的IO在上电复位后就会出现不是准双向IO模式的情况,这些引脚在使用时就需要我们多多关照啦。 1、PWM相关的引脚 在STC15系列单片机中,于PWM2到PWM7相关的12个IO,在上电复位后,默认为高阻输入模式,需要对外输出时,需要用户通过程序将其设置为推挽输出或者是准双向IO模式。 在STC8系列单片机中,和PWM相关的所有IO复位后是准双向IO模式,用户可以在通过ISP软件烧写(下载)程序时,选择将其设置为开漏输出模式,同样用户也可以通过程序的方式设置为所需要的工作
[单片机]
浅谈<font color='red'>STC单片机</font>特殊IO的用法
使用STLINK下载程序到STM8S103问题汇总
最近的项目用到win10+stlink v2(淘宝买的山寨)+stm8s103F3遇到了许多问题,下面是我的问题汇总。 一、win10无法安装stlink的驱动(错误代码52) 显示的问题就数字签名的问题。更新安装驱动提示:windows确定安装的驱动程序是最新的。 后来在与非网看到一篇帖子,直接关闭签名,然后就直接安装成功。 左下角--设置--更新与安全--恢复--高级启动-立即重启 等待提示--疑难解答--高级选项--启动设置--右下角的重启 等待提示--F7禁用驱动程序强制签名 等待开机接可以直接用了。 附上原文链接:http://bbs.mydigit.cn/read.php?tid=204
[单片机]
STM32开发笔记25:STM32L0低功耗设计-使用Keil和ST-Link下载程序
单片机型号:STM32L053R8T6 继续项目的开发工作,突然发现,程序不能够正常下载到单片机中了,提示如下图所示的错误,我使用的是keil和ST-Link。 这个问题在我第1次调试的时候发生过1次,我认为是我误操作将芯片烧坏了,因为当时又反复的焊接了一下芯片,也没有修好,就把这件事情放下了。 今天再次出现,自己感觉可能和低功耗有关,仔细查看刚刚下载的程序,里面上来程序就进入低功耗,没有任何退出语句,所以应该是CPU不响应下载命令了。 按照这种思路,先将单片机的复位引脚接地,然后点击下载按钮的同时,放开复位引脚,居然成功了。 再仔细想不应该呀,ST-Link控制着复位引脚了,应该在下
[单片机]
STM32开发笔记25:STM32L0低功耗设计-使用Keil和ST-Link<font color='red'>下载程序</font>
关于STC单片机IO口的状态
新入职一个公司,做智能家居的,只用宏晶51单片机。好长时间没搞了,今天就遇到一个问题之前没遇到过,就是配置IO口的工作类型。 数据手册里面是这样说的,在此多说一句,数据手册做的真烂。 这里举个例子。 如果给P1M1赋值0X03,给P1M0赋值0X05,那么P1口各个引脚对应的模式就是: { P1M1=0x03=00000011b P1M0=0x05=00000101b } P1M1 P1M0 IO口模式0 0 P1.7准双向口0 0 P1.6准双向口0 0 P1.5准双向口0 0 P1.4准双向口0 0 P1.3准双向口0 1 P1.2推挽输出1 0 P1.1高阻1 1 P1.0开漏
[单片机]
关于<font color='red'>STC单片机</font>IO口的状态
STM32 BOOT0和BOOT1对于下载程序的应用
前言 本博文基于STM32F103ZET6和MDK5以及库V3.5.0编写; 本博文以原子开发板为例; 如有不足之处,还请多多指教; 其实本没有必要写这篇文章,因为只要按照开发板配套的教程去做就可以对芯片写入程序即可,而且开发板上往往设计的都有一键下载的相关电路,能够产生DTR和RTS信号,从而将程序直接下载到芯片,对于用户来说,大大多短了下载程序的时间,提高了效率;但是毕竟以后如果要做开发这块的,总不能碰见一个项目就买一个买开发板,然后才能下载程序,这简直有点不可思议,还是要懂得脱离开发板,对一个芯片进行下载程序,从而形成一个完整的系统,这算得上是一个稍微成熟的开发; STM32开发板下载程序的两种方式 一: 仿真器下载(J
[单片机]
STM32 BOOT0和BOOT1对于<font color='red'>下载程序</font>的应用
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved