历史上的今天
返回首页

历史上的今天

今天是:2024年08月22日(星期四)

正在发生

2018年08月22日 | STC实现软复位

2018-08-22 来源:eefocus

/************************************************************************************ 

程序名称:串口发送程序下载指令(晶振频率18.432MHz) 

功能说明: 收到用户命令后复位到ISP监控区域

          1. 在STC ISP软件中,首先设定下载晶振频率为18.432MHz,通过传统方式下载本程序,即点击下载后,重启开发板。

                    2. 然后切换到“收到用户命令后复位到ISP监控区域”界面,在自定义命令框内输入“da”,即可进行程序不断电下载。

                    注:0xda可以根据个人需要进行更改。

************************************************************************************/


#include "stc15f2k60s2.h"       // 单片机STC15F2K60S2头文件,可以不再加入reg51.h

#include                    // 加入此头文件后,可使用_nop_库函数

#include "delay.h"              // 延时函数头文件

#include "uart.h"             // 串口通信头文件   

#include



//========================================================================

// 函数: void SYS_Init(void)

// 描述: 单片机端口初始化

// 说明

// STC15W4K32S4系列单片机,在上电后与PWM相关的IO为高阻状态,需手动设置为普通双向IO

// PWM相关IO为 : P0.6/P0.7/P1.6/P1.7/P2.1/P2.2

//               P2.3/P2.7/P3.7/P4.2/P4.4/P4.5                       

//========================================================================

void SYS_Init()

{

    P0M0=0x20;

    P0M1=0x20;

    P1M0=0x3C;

    P1M1=0x3C;

    P2M0=0x00;

    P2M1=0x00;

    P3M0=0x00;

    P3M1=0x00;

    P4M0=0x00;

    P4M1=0x00;

    P5M0=0x00;

    P5M1=0x00;  

}


//========================================================================

// 函数: void main(void)

// 描述: 主函数

//========================================================================      

void main()                              // 主函数     

{

    SYS_Init();

    DelayMS(100);                              

    UartInit();                          //串口初始化

    DelayUS(100);                        

    ES=1;                                //串口1中断打开

    EA=1;                                //总中断打开

  SendString("Please send Command '0xDA' to download code...");

  while (1);                               // 主循环 


}




void Usart() interrupt 4 using 0 

{

    ES = 0;

    if (RI)

    {

        RI = 0;  

        if(SBUF==0xda) //对串口收到的数据进行识别,如果是0xda则执行以下命令,将单片机复位到ISP区域,配合上位机软件,自动进行程序下载

                    {

                        DelayMS(100);

                        IAP_CONTR = 0x60; //0110,0000 soft reset system to run ISP monitor

                    }

    }

    if (TI)

    {

        TI = 0; 

    }

    ES =  1;

}


推荐阅读

史海拾趣

EMC Technology RF Labs公司的发展小趣事

RF Labs非常重视产品质量和品质保证。他们建立了完善的质量管理体系,从原材料采购到生产、检测、包装等各个环节都进行严格的质量控制。同时,RF Labs还引进了先进的生产设备和技术,确保产品的质量和性能达到国际先进水平。这些举措使得RF Labs的产品在市场上享有很高的声誉和口碑。

C&K公司的发展小趣事

进入千禧年代,C&K因其卓越的市场表现和技术实力被ITT Industries收购。虽然成为了ITT的开关部门,但C&K仍然保留了自己的品牌名称。这一举措既保证了C&K能够继续享有ITT的资源支持,又使得C&K能够保持其独特的品牌文化和市场定位。

喜美克斯(Cvilux)公司的发展小趣事

在市场竞争日益激烈的电子行业中,喜美克斯公司始终坚持品质至上的原则。公司投入大量资源用于产品质量控制和生产工艺的改进,确保每一件产品都能达到最高的品质标准。这种对品质的执着追求,让喜美克斯的产品在市场上赢得了良好的口碑,也为公司赢得了众多忠实的客户。

EKIT公司的发展小趣事

2023年11月,华为坤灵(HUAWEI eKit)在泰国曼谷成功举办了分销品牌发布会。此次发布会标志着HUAWEI eKit正式进入泰国市场,并与VST ECS(泰国)和Synnex(泰国)等金牌分销合作伙伴携手,共同为中小企业提供数字化转型的解决方案。通过发布数通园区网络、MiniFTTO、智能协作IdeaHub等新产品,HUAWEI eKit迅速在泰国市场树立了良好的口碑,助力当地中小企业实现了数字化升级。

HDK(北陆电气)公司的发展小趣事

2023年11月,华为坤灵(HUAWEI eKit)在泰国曼谷成功举办了分销品牌发布会。此次发布会标志着HUAWEI eKit正式进入泰国市场,并与VST ECS(泰国)和Synnex(泰国)等金牌分销合作伙伴携手,共同为中小企业提供数字化转型的解决方案。通过发布数通园区网络、MiniFTTO、智能协作IdeaHub等新产品,HUAWEI eKit迅速在泰国市场树立了良好的口碑,助力当地中小企业实现了数字化升级。

Elpac公司的发展小趣事

随着业务的不断发展,Elpac公司开始将目光投向国际市场。公司制定了全球化战略,积极开拓海外市场。为了更好地适应不同国家和地区的市场需求,Elpac公司针对不同地区推出了定制化的产品和服务。同时,公司还加强了与国际知名企业的合作,共同研发新技术、新产品。这些举措不仅让Elpac公司的产品在全球市场上得到了广泛认可,也为公司的长远发展奠定了坚实基础。

问答坊 | AI 解惑

求暑假兼职或实习!,相信我,我可以!

个人简历: 本人大三,北京理工大学珠海学院自动化专业.   性别:男 主修:模电.数电.电力电子,传感器,51单片机,ARM嵌入式,PLC,运动控制理论,自控原理。 自学:网络技术,信息论,LINUX操作系统,PROTELL PCB。 熟练掌握: 汇编 C ...…

查看全部问答>

程序问题

大家好: 程序段是这样的: ht9200data bit p4.4 ht9200clk  bit p4.5 ht9200ce   bit p4.6 程序在1,2,3,行 出现的错误是: 二代手机程序.asm(1): error A17: INVALID BYTE BASE IN BIT ADDRESS EXPRESSION 二代手 ...…

查看全部问答>

休眠PWR_EN是自动变低吗?

本人现在用的是三星2450的芯片。 按照datasheet上说的,如果要休眠只需要写一个寄存器PWRMODE=2BED就行,并且PWR_EN自动变低。 可是当我这么做的时候,PWR_EN依然是高电平,有没有做过的高手知道问题在哪?…

查看全部问答>

SoftICE调试时死机

我装的DS 3.2 系统是WIN XP (SP3) 好不容易可以用SoftICE了,但是设置了断点调试的时候,经常死机,键盘鼠标不能用,只好重起. 搜索了一下,说是与XP不兼容, 看到有人说打个SoftICE for xp(sp2)的补丁就没问题了. 各位碰到过不?怎么解决的?…

查看全部问答>

求液晶屏MGLS-24064和DMF5005N的资料

最近整理公司前辈的东西,发现留下了MGLS-24064和DMF5005N两块液晶屏,真好我也想试验一下,但上网没查到相应的资料,请问大家谁有相应的资料和接口电路图啊?…

查看全部问答>

请教关于双向可控硅的控制问题

第一次搞可控硅的电路,想向大虾们请教一下双向可控硅控制交流信号的导通时,控制端的电压需要怎么处理,需要改变吗?…

查看全部问答>

LWIP轻量级TCP/IP协议栈(特别适合中高端单片机)资料源码分享

wip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。LwIP是Light Weight (轻型)IP协议,有无操作系统的支持都可以运行。LwIP实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用,一般它只需要几百字节的RAM和4 ...…

查看全部问答>

TMS320F28027 EPWM、比较器、模拟输入输出(AIOn)的问题

使用Proteus仿真TMS320F28027遇到如下几个问题,希望大家指导,谢谢! void main1(void) {         /****************************************************************************         &n ...…

查看全部问答>