查看: 3448|回复: 5

关于STC单片机的自动下载

[复制链接]
  • TA的每日心情
    开心
    2018-12-17 09:31
  • 签到天数: 45 天

    连续签到: 1 天

    [LV.5]常住居民I

    发表于 2016-12-22 09:59:16 | 显示全部楼层 |阅读模式
    分享到:
    本帖最后由 li--wei--hao 于 2016-12-22 10:01 编辑

    STC单片机下载程序需要冷启动,每次都要按开关,想必很多人的开关都坏了吧
    其实STC单片机内部自带软件复位,可复位到ISP程序监控区,只要配合STC官方
    上位机即可实现软件自动下载功能。

    程序实现原理可参考STC官方数据手册  ISP/IAP/EEPROM章节

    原理是配合STC-ISP的”收到用户命令后复位到ISP程序监控区“功能

    092122um4lmulajbg73mps.png.thumb.jpg

    以下是实现该功能的代码片段

    autoload.c
    1. #include "autoload.h"
    2. #if ENABLE_AUTOLOAD == 1

    3. static unsigned char UART_Count=0,UART_Temp=0;

    4. void AutoLoad_Init(void)
    5. {
    6.     TMOD |= 0x20;
    7.     TH1 = 0xfd;
    8.     TL1 = 0xfd;
    9.     SCON |= 0x50;
    10.     TR1 = 1;
    11.     EA = 1;
    12.     ES = 1;
    13. }

    14. void AutoLoad_ISR(void) interrupt 4
    15. {
    16.     RI = 0;
    17.     UART_Temp = SBUF;
    18.     if(UART_Temp == 0xee)
    19.     {
    20.         UART_Count++;
    21.         if(UART_Count > 5)
    22.         ISP_CONTR=0x60;
    23.     }
    24. }

    25. #endif
    复制代码
    autoload.h
    1. #define ENABLE_AUTOLOAD 1

    2. #if ENABLE_AUTOLOAD == 1

    3. #ifndef _AUTOLOAD_
    4. #define _AUTOLOAD_

    5. #include <stc89c5xrc.h>

    6. void AutoLoad_Init(void);

    7. #endif

    8. #endif
    复制代码
    回复

    使用道具 举报

  • TA的每日心情
    擦汗
    2017-10-15 13:21
  • 签到天数: 183 天

    连续签到: 1 天

    [LV.7]常住居民III

    发表于 2016-12-22 11:21:35 | 显示全部楼层
    学习了,一直没发现还有这个功能
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2 小时前
  • 签到天数: 3744 天

    连续签到: 70 天

    [LV.Master]伴坛终老

    发表于 2016-12-22 11:42:51 | 显示全部楼层
    这功能牛逼,适合不使用串口的应用中
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2018-12-17 09:31
  • 签到天数: 45 天

    连续签到: 1 天

    [LV.5]常住居民I

     楼主| 发表于 2016-12-22 11:44:36 | 显示全部楼层
    toofree 发表于 2016-12-22 11:42
    这功能牛逼,适合不使用串口的应用中

    使用串口的应用中也可以用,只要用户命令与要传输的数据不冲突就可以
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    2018-7-16 10:41
  • 签到天数: 23 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    发表于 2016-12-30 14:02:41 | 显示全部楼层
    还有这功能?!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    难过
    2021-2-27 22:16
  • 签到天数: 1568 天

    连续签到: 1 天

    [LV.Master]伴坛终老

    发表于 2017-12-18 23:14:38 | 显示全部楼层
    现在写代码很难啊
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /2 下一条



    手机版|小黑屋|与非网

    GMT+8, 2024-4-19 02:14 , Processed in 0.142705 second(s), 26 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.