历史上的今天
返回首页

历史上的今天

今天是:2025年03月07日(星期五)

正在发生

2018年03月07日 | STC单片机免断电下载程序的更简单的方法

2018-03-07 来源:eefocus

    看到网上有一些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; //执行自动下载的命令

    }

    }

    }


推荐阅读

史海拾趣

璟德(ACX)公司的发展小趣事

2008年,璟德(ACX)成功在台北证券交易所上市,股票代码为3152。这一举措为公司带来了更多的资金支持,也提升了其品牌影响力和市场地位。上市后,璟德(ACX)加大了对研发和市场拓展的投入,进一步巩固了其在无线通信领域的领先地位。

Akahane Electronics Ind Corp公司的发展小趣事

面对日益严重的环境问题,Akahane敏锐地捕捉到绿色电子产品的市场潜力。公司投入大量研发资源,开发出低能耗、环保的电子产品,并积极推广绿色生产和循环经济理念。这一举措不仅赢得了消费者的青睐,还为公司赢得了良好的社会声誉。同时,Akahane还积极参与国际环保组织的活动,推动电子行业的绿色化发展。

DATEL Inc公司的发展小趣事

随着公司业务的不断扩展,DATEL Inc.开始实施全球化战略。公司积极开拓国际市场,与全球各地的合作伙伴建立了紧密的合作关系。通过引进国际先进技术和管理经验,DATEL Inc.的产品质量和服务水平得到了进一步提升。同时,公司还加强了对海外市场的营销和推广力度,成功将DATEL Inc.的品牌推向了全球。

BusBoard Prototype Systems公司的发展小趣事

BusBoard Prototype Systems公司起源于一位电子工程师的梦想。这位工程师发现,在电子产品的开发过程中,原型制作是一个既耗时又昂贵的环节。于是,他萌生了创建一个专门提供快速、高效原型制作服务的公司的想法。经过数月的筹备,BusBoard Prototype Systems正式成立,以其独特的BusBoard技术和定制化的服务,迅速在行业内崭露头角。

ETL semiconductor公司的发展小趣事

AMD(Advanced Micro Devices)在半导体行业中的发展经历了一个从追赶到逆袭的过程。在英特尔的强大市场压力下,AMD通过不断创新和技术提升,逐渐在处理器市场上获得了一席之地。尤其是在游戏和高端计算领域,AMD的处理器凭借其出色的性能和性价比赢得了众多消费者的青睐。

BOCA公司的发展小趣事

随着技术的不断进步,BOCA公司意识到单一产品线的局限性。为了拓宽市场,公司决定进军消费电子领域。BOCA通过与知名品牌合作,推出了一系列搭载其先进技术的电子产品,如智能手机、平板电脑等。这些产品凭借其卓越的性能和独特的设计,迅速在市场上获得了良好的口碑,为BOCA带来了丰厚的利润。

问答坊 | AI 解惑

【求助】光耦输出端不可以上接VCC,下接电阻到地吗?

为什么宁愿加一个三极管倒相,也不愿把光耦和电阻的位置调换一下? [ 本帖最后由 dukedz 于 2009-12-13 21:55 编辑 ]…

查看全部问答>

花费一个月时间 首创 ICD2.5 丢固件的彻底的解决方法!祝贺下,呵呵。

花费一个月时间 首创 ICD2.5  丢固件的彻底的解决方法!祝贺下,呵呵。 ICD2.5 是开发PIC系列单片机的有力工具,但是本身存在着致命的弱点就是容易丢失固件。经分析原因如下: 1 因为要适时适应不同的型号MCU仿真和烧写,那必须用电脑 ...…

查看全部问答>

血压参数_监护产品监护参数的检验方法 (三)

六 无创血压测量特性的检验和评估方法 1. 概述     无创血压测量功能是监护仪最基本的监测参数之一,也是反映监护仪性能特征的关键参数,目前大多数监护仪上所采用的无创血压方法都是基于振荡法的,虽然这个方法存在某些局限性,但 ...…

查看全部问答>

如何实现锁住触摸屏和按键

目前我想实现按键盘中的某个键锁住触摸屏和按键,让他们都不响应,再按这个键,则解锁 各位有什么好办啊 …

查看全部问答>

wince触摸屏驱动要让横坐标反向怎么改?急求~

我用的是480*800的屏,现在想让触摸屏的(0,0)点的位置变成(800,0)点,纵坐标不变,只是横坐标反过来,请教怎么修改驱动~~~~急盼~~~谢谢大家了 ~~贴上驱动代码 /*++ THIS CODE AND INFORMATION IS PROVIDED \"AS IS\" WITHOUT WARRANTY OF AN ...…

查看全部问答>

国内知名通讯网络设备制造商(上海研究所)招聘研发工程师,请在寻找机会的朋友关注

招聘类别: 1、协议软件工程师 2、嵌入式软件工程师 岗位描述: 致力于3G网络设备研发,产品应用于WCDMA和CDMA2000以及2G网络。 岗位要求: 精通C/C++ 熟悉TCP/IP协议簇 有意从事底层软件研发的工作,TEAM WORK。 本科(两年工作经验), ...…

查看全部问答>

求数字频率计的毕业设计

急求一篇数字频率计的毕业设计,小弟将不胜感激,谢谢了…

查看全部问答>

【TI文献】bq76PL536A-Q1

bq76PL536A-Q1文档,欢迎大家下载!…

查看全部问答>

大功率igbt驱动保护电路的分类

按照大功率igbt驱动保护电路能够完成的功能来分类,可以将大功率igbt驱动保护电路分为以下三种类型:单一功能型、多功能型、全功能型。2.1 单一功能型  单一功能型的大功率igbt驱动保护电路一般是由光耦和功率缓冲器构成,如hcpl-3150 等,如图1 ...…

查看全部问答>

这两个语句的作用是什么??求助!!

_delay_cycles()   这个延时函数的作用是什么??  ()中的数字不同  会带来什么样的影响?? P1OUT ^= BIT0   这个  反转  P1.0  电平 的作用是什么? While() {。 ...…

查看全部问答>