STC的IAP_CONTR位说明:
B7
|
B6
|
B5
|
B4
|
B3
|
B2
|
B1
|
B0
|
ISPEN
|
SWBS
|
SWRST
|
-------
|
-------
|
WT2
|
WT1
|
WT0
|
ISPEN:ISP/IAP功能允许位
SWBS:0从用户主程序区启动;1从ISP程序区启动
SWRST:0不操作;1产生软件系统复位,硬件自动清零。
设置等待时间:全零时为40MHz
IAP_CONTR设为60H;其地址为E7H
程序如下:
IAP_CONTR EQU 0E7H
DEFINE_DOWNLOAD_C EQU 40H
ORG 0000H
SJMP START
ORG 0023H ;串口中断服务程序入口地址
LJMP UART_SERVICE ;跳转至串口中断服务程序
ORG 0030H
START:
MOV 40H,#2DH ;置要发送下载的传送的命令的值
MOV SCON,#50H ;串口工作于方式1,不允许接收数据
MOV TMOD,#20H ;定时器/计数器1作波特率发生器,采用定时器方式2
MOV TL1,#0FDH ;定时器/计数器1置初始值,设置的波特率为9600bps
MOV TH1,#0FDH ;定时器/计数器1置重装载值
SETB TR1 ;定时器/计数器1启动工作
SETB ES ;打开串口中断
SETB EA ;打开总中断
LOOP: ;主循环不做任何事情
;在此可以加入你要测试的程序
LJMP LOOP
UART_SERVICE: ;串口中断服务程序
JNB RI,CLR_EXIT ;判断是否为接收中断,如果不是,跳出中断且清除发送位
CLR RI ;清除接受位
MOV A,SBUF
CJNE A,DEFINE_DOWNLOAD_C,EXIT,;检测是否为下载的传送的命令的值
DELAY1S:MOV R7,#100 ;延时时间1秒
D3:MOV R6,#21
D2:MOV R5,#248
D1:DJNZ R5,D1
DJNZ R6,D2
DJNZ R7,D3
MOV IAP_CONTR,#60H
SJMP EXIT
CLR_EXIT:CLR TI
EXIT:RETI ;中断返回
END
用STC的下载软件,选择其中自定义下载
其具体设置如下图:
关键字:STC 不断电 下载方法
引用地址:
STC不断电的下载方法
推荐阅读最新更新时间:2024-03-16 15:05
PCF8574 STC15单片机的驱动程序 LCD1602显示
网上找了很多的的1602程序,结果要么全是ARDUINO和STM32,要么没一个靠谱的,所以决定自己写,测了N久终于写出来了,看上去效果不错哈哈哈哈! (MCU是STC15F2K60S2) 制作出来的实物图如下: 单片机源程序如下: #include pcf8574.h #define WriteADDR 0x4e #define ReadADDR 0x4f #define u8 unsigned char #define CSSet 0x04//EN=1 #define CSReset 0x00//EN=0 #define COMSet 0x08 // RS=0 RW=0 #define DATSet 0x0
[单片机]
STC89C52MCU--软件实现系统复位
单片机系统复位(热启动之一) STC单片机ISP/IAP控制寄存器在特殊的功能寄存器中的地址为E7H,不能为寻址,该寄存器用来管理和 ISP/IAP 相关功能的设定以及是否软件复位等。单片机复位时,该寄存器全部清零。 ISP/IAP寄存器 位序号 D7 D6 D5 D4 D3 D2 D1 D0 位符号 ISPEN SWBS SWRST WT2 WT1 WT0 ISPEN -- ISP/IAP 功能允许位。0禁止允许ISP/iAP变成改变Flash SWBS -- 软件选择从用用程序区启动,还是ISP程序区启动。要与SWRST直接配合才可以确定。 SWRSt -- 1 产生软件复位,硬件自动清零。0不操作。 WT2
[单片机]
使用STC15W408AS单片机I/O口点亮LED
STC15W408AS单片机有14个I/O口。其所有I/O口均可由软件配置成4种类型。4种类型分别为:准双向口/弱上拉(标准8051输出模式)、推挽输出/强上拉、高阻输入(电流既不能流入也不能流出)或开漏输出功能。每个口由2个控制寄存器中的相应位控制每个引脚工作类型。STC15系列单片机的I/O口上电复位后为准双向口/弱上拉(传统8051的I/O口)模式。每个I/O口驱动能力均可达到20mA,但40-pin及40-pin以上单片机的整个芯片最大不要超过120mA,20-pin以上及32-pin以下(包括32-pin)单片机的整个芯片最大不要超过90mA。 在上一节3.STC15W408AS单片机GPIO介绍了的GPIO的结构和
[单片机]
STC51-Keil使用及流水灯设计
1 Keil 工程建立及常用按钮介绍 1.1 KEIL5添加STC芯片库 首先我们需要这个STC的烧录软件,大家可以从STC官方网站 http://www.stcmcu.com/ 中下载到。 双击这个 可执行文件,在本次测试环境win10 64位中,系统有如下提示。我们点击更多信息,然后选择运行。就可以打开了。 在软件界面中,找到图中的Keil仿真设置选项卡后点击,可以看到有个添加型号和头文件到Keil中.......,我们点击这个按钮。 点击后会弹出如下的文件选择窗口,我们找到Keil的安装目录,点击确定。PS:目录下必须有C51和UV4这两个文件,如果按照我之前的教程来的应该都是MDK文
[单片机]
stc12c5a60s2单片机用自带ADC采集电压源程序
stc12c5a60s2采集电压实物图: 单片机源程序如下: /*********************************************************** 程序功能:STC12C5A60S2自带ADC采集电压信号+DS18B20温度传感器+LCD1602液晶显示 MCU型号: STC12C5A60S2 晶振频率:11.0892MHz 整理时间:2012年4月25号 ************************************************************/ #include reg51.h #include intrins.h sfr P4 = 0XC0;
[单片机]
基于STC89C52单片机一种室内空气调控方案
随着社会的进步和生活水平提高,人们对居住环境提出了越来越高的要求,除了舒适的热环境外,空气的健康清新、调控安全便捷也引起了人们越来越广泛的关注。目前绝大部分建筑物中仅配有简单的通风换气设备,无法实现人性化的智能调控。如何实现室内空气污染物的监测与报警以及智能调节,已成为智能家居领域的研究热点。 1 系统结构和工作原理 1.1 系统结构 该系统由传感器模块、无线模块、单片机控制模块、步进电机模块、短信模块5部分组成,结构框图如图1所示。 1.2 工作原理 传感器模块检测到气体浓度超标时发出报警信号,通过无线发射、接收后传送到单片机控制模块,启动控制程序,并向电机模块及短信模块发出工作信号,整个过程依赖于主
[单片机]
STC15串口1\串口2\串口3和串口4源程序
STC15标准程序,有需要的可以参考。 单片机源程序如下: //本程序的功能是串口1串口2串口3和串口4独立接受数据,并将接收到的数据再发送出去 #include STC15W4K32S4.H #include stdio.h #include intrins.h #include stdlib.h #include absacc.h #define uchar unsigned char #define uint unsigned int #define ulong unsigned long uchar idata SendBuf1 , SendBuf2 , SendBuf3 , SendB
[单片机]
STC内部10位AD转换器程序(stc_ad.h头文件)
下面是头文件的内容,复制文本保存到stc_ad.h即可 #ifndef __STC_AD_H__ #define __STC_AD_H__ #define ADC_FLAG 0x10 #define ADC_STOP 0xEF #define ADC_START 0x08 #define ADC_SPEED_HH 0x00 // 89 us #define ADC_SPEED_H 0x20 //178 us #define ADC_SPEED_L 0x40 //356 us #define ADC_SPEED_LL 0x60 //534 us void Delay(unsigned int z); voi
[单片机]