STC单片机软复位
- 格式:pdf
- 大小:351.81 KB
- 文档页数:5
C51单片机基础及编程应用红河学院张自红编著红河学院第7章STC看门狗及软件复位电路看门狗介绍1看门狗基本原理2STC系列单片机看门狗3应用实例4红河学院7.1看门狗介绍在由单片机构成的微型计算机系统中,由于单片机的工作常常会受到来自外界电磁场的干扰,造成程序的跑飞,而陷入死循环,程序的正常运行被打断,由单片机控制的系统无法继续工作,会造成整个系统的陷入停滞状态,发生不可预料的后果,所以出于对单片机运行状态进行实时监测的考虑,便产生了一种专门用于监测单片机程序运行状态的芯片,俗称"看门狗"(watchdog)红河学院7.2看门狗基本原理看门狗,又叫watchdog timer,是一个定时器电路一个输入,叫喂狗(kicking the dog or service the dog),一个输出,到MCU的RST端MCU正常工作的时候,每隔一段时间输出一个信号到喂狗端,给WDT清零,如果超过规定的时间不喂狗,(程序跑飞时),WDT 定时超过,就会给出一个复位信号到MCU,使MCU复位. 防止MCU死机. 看门狗的作用就是防止程序发生死循环,或者说程序跑飞。
红河学院7.2看门狗基本原理系统运行任务1以后也就启动了看门狗的计数器,看门狗就开始自动计数,当该任务执行到一定的时间就必须去把看门狗定时器清零。
如果到了一定的时间还不去清看门狗,那么看门狗计数器就会溢出从而引起看门狗中断,造成系统复位。
红河学院7.3 STC 系列单片机看门狗 EN_WDT :看门狗允许位, 当设置为1 时,看门狗启动。
CLR_WDT :看门狗清0 位, 当设为1 时,看门狗将重新计数。
硬件将自动清0IDLE_WDT :看门狗I D L E 模式位, 当置1 时, 看门狗定时器在“空闲模式”计数;当清0时, 看门狗定时器在“空闲模式”时不计数Mnemonic 76543210Reset value WDT_CONTR --EN_W DT CLR_WDT IDLE_WDT PS2PS1PS0xx00,0000Watch-Dog-Timer Control register:红河学院7.3 STC系列单片机看门狗看门狗定时器预分频值(Pre-scale ),如下表所示看门狗定时器预分频值,STC特有PS2PS1PS0预分频f=20MHz 12T模式时间000239.3ms001478.6ms0108157.3ms01116314.6ms10032629.1ms10164 1.25s110128 2.5s1112565s看门狗溢出时间= (N x Pre-scale x 32768) / 晶振频率其中N为单片机机器周期,STC提供6T或12T两种周期,烧写程序时修改红河学院7.4 应用实例例:编写程序代码对单片机的看门狗进行喂狗。
单片机复位和冷启动详细介绍单片机(Microcontrollers)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。
从上世纪80年代,由当时的4位、8位单片机,发展到现在的300M的高速单片机。
单片机如何冷启动单片机冷启动很简单,关电,再上电,正常复位后,就冷启动成功。
单片机冷启动其实是一个技术术语,是指单片机从最原始状态启动运行。
实现这一目标视不同的单片机内部结构而有所不同。
接下来我们以STC12系列单片机冷启动、热启动解析一下:冷启动——是指在断电状态下重新上电。
冷启动,是在下载程序开始时,为了是单片检测有无下载信号。
若有则下载;若无则执行原来的程序。
热启动——是指已经处于上电状态,给复位端加复位信号(还有其他类型的复位),程序重新运行。
怎样判断是冷启动、热启动?可通过查询PCON寄存器中的POF位来判断,单片机上电冷启动后,POF位变为1,可由软件清0实际判断流程图:Stc单片机里面有一段出厂时固化的程序,这段程序的作用是检测串口是否要下载程序,不需要则执行单片机内的用户程序。
每次启动时运行这端程序,这就是为什么每次下载时要冷启动。
而复位后单片机是从地址0000H处开始执行,地址0000H又会指向主程序入口,即主函数处,即片内下载的用户程序而不会执行前面已经固化的检测串口那段程序。
这就是为什么单片机每次下载要冷启动,而复位不行。
注意,程序前面的宏定义什么的东西不占用系统时间,所以主程序即主函数处。
有一个办法可以给那些需要加电立刻启动的用户,STC单片机可以设置为加电时只有。
STC系列单片机程序烧录方法STC系列单片机(例如STC89C51系列)是一种广泛使用的单片机系列,它具有低成本、易于使用和良好的性能特点,因此在各种嵌入式系统中都有广泛的应用。
在使用STC系列单片机时,我们需要将程序烧录到芯片中,下面是一种常用的STC系列单片机程序烧录方法。
1.硬件准备在进行STC系列单片机程序烧录之前,首先需要准备相应的硬件设备。
我们需要一个烧录器以及与之相配套的连接线。
常用的烧录器有STC-ISP、USB-ISP等,其中STC-ISP烧录器是STC系列单片机官方推荐的烧录器,使用起来非常方便。
2.确定烧录模式STC系列单片机有两种烧录模式,分别是ISP烧录模式和IAP烧录模式。
ISP烧录模式可以通过外部烧录器直接连接到单片机的烧录口进行烧录。
IAP烧录模式可以通过串口等外部设备来进行烧录。
在进行烧录之前,需要确定使用哪种烧录模式,并将单片机设置为对应的烧录模式。
3.连接烧录器与单片机将烧录器通过连接线连接到单片机的烧录口上。
烧录器的引脚与单片机的烧录口引脚相对应,需要一一对应地连接。
4.打开烧录软件使用STC系列单片机官方提供的烧录软件(STC-ISP烧录器对应的软件为STC-ISP程序),打开烧录软件,进入烧录界面。
5.设置烧录参数在烧录软件的烧录界面上,设置烧录参数。
选择所使用的烧录器型号、芯片型号以及烧录模式等。
确保选择正确的型号和模式。
6.选择待烧录的程序文件在烧录软件的烧录界面上,选择待烧录的程序文件。
通常程序文件的扩展名为.hex。
7.擦除芯片在烧录软件的烧录界面上,选择擦除芯片的操作。
将待烧录的程序文件烧录到芯片之前,需要先擦除芯片中原有的程序。
8.开始烧录在烧录软件的烧录界面上,点击“开始烧录”按钮,开始进行程序的烧录。
烧录过程中,烧录软件会将程序文件的指令逐条发送给烧录器,然后由烧录器将指令写入芯片的存储器中。
9.烧录完成烧录过程完成后,烧录软件会弹出烧录成功的提示框。
单片机STC89C52RC内部EEPRO M单片机运行时的数据都存在于RAM(随机存储器)中,在掉电后RAM中的数据是无法保留的,那么怎样使数据在掉电后不丢失呢?这就需要使用E EPROM或FLASHR OM 等存储器来实现。
在传统的单片机系统中,一般是在片外扩展存储器,单片机与存储器之间通过II C 或SPI 等接口来进行数据通信。
这样不光会增加开发成本,同时在程序开发上也要花更多的心思。
在STC 单片机中内置了EEPROM(其实是采用ISP/IAP 技术读写内部F LASH 来实现EEPR OM),这样就节省了片外资源,使用起来也更加方便。
下面就详细介绍ST C 单片机内置EE PROM 及其使用方法STC 各型号单片机内置的EEPR OM 的容量最小有2K,最大有16K,基本上很好地满足项目的需要,更方便之处就是节省了周边的E EPROM器件,达到节省成本的目的,而且内部EEP ROM 的速度比外部的EEPROM的速度快很多。
STC 各型号单片机内置的EEPR OM 是以512 字节为一个扇区,EEPROM的起始地址=FALSH 容量值+1,那么STC89C52RC的起始地址为0x2000,第一扇区的起始地址和结束地址0x2000~0x21FF,第二扇区的起始地址和结束地址0x2200~0x23FF,其他扇区如此类推。
深入重点:�传统的EEPR OM 是电可擦可编程只读存储一种掉电后数据不丢失的存储芯片。
�STC89C52RC 的EEPROM是通过ISP/IAP 技术读写内部F LASH 来实现EEPR OM。
�STC89C52RC 的EEPROM起始地址为0x2000,以512 字节为一个扇区,EERPOM的大小为2K字节。
STC89C52RC 与EEPORM实现的寄存器有6 个,分别是ISP_DATA、ISP_ADD RH、ISP_ADD RLISP_TRI G、ISP_CMD、ISP_CON TR。
有关STC单片机发热、复位的问题
最近有个项目,需要一个继电器,接收到低电平就动作,用的
STC15W104、使用的市面上的开关电源5V/3A.
本来看似简单到底的一个东西,却花费了将近3天的时间搞定。
1.现象一
产品是1U机箱内部一个ARM主板,需要定时硬重启一次。
暂且叫STC 控制板,控制板在不带载的情况下,触发正常,与程序很符合,但是带载后,第一次触发正常,第二次单片机就开始发烫,能到80多度,然后直接冒烟,这个现象100%会出现,控制板的继电器没有使用隔离。
解决办法:
在5V电源处并了一个1000UF的大电容。
曾尝试并5.1V稳压管,发现不顶用。
2.现象二
板子会误动作,尤其是周围有人,或者是工作一段时间,或者是开关963电烙铁都会让继电器误触发。
stc单片机复位电平标题:STC单片机复位电平STC单片机的复位电平是指单片机在复位时所需的电平条件。
单片机复位电平是确保单片机正常启动和运行的重要参数之一。
在本文中,我们将深入探讨STC单片机复位电平的相关知识。
首先,我们需要了解什么是复位电平。
复位电平是单片机在重新开始运行之前必须达到的电平条件。
通常情况下,单片机的复位电平是低电平。
当单片机接收到复位信号时,它会自动将所有的寄存器和引脚状态重置为初始状态,并重新开始执行程序。
STC单片机的复位电平是按照其产品规格书中定义的标准来确定的。
根据STC单片机的规格书,复位电平通常为低电平,即当复位信号为低电平时,单片机进入复位状态。
这意味着,当我们需要复位STC单片机时,只需将复位引脚接地即可。
在实际应用中,我们需要注意一些细节。
首先,要确保复位信号的稳定性。
复位信号应该保持足够的时间以确保单片机完全复位,通常建议复位信号持续时间为10ms以上。
此外,复位信号的上升时间和下降时间也需要控制在规定的范围内,以确保复位电平的准确性。
另外,我们还需要注意复位电平的连接。
复位信号应该连接到单片机的复位引脚上,并确保该引脚没有其他的电平信号输入。
在实际连接中,我们可以使用电阻或电容来提供复位信号的稳定性和延时。
需要注意的是,在编写程序时,我们应该避免依赖于复位电平的具体数值。
因为不同型号的STC单片机可能会有不同的复位电平要求,为了保证程序的可移植性,我们应该使用单片机提供的复位功能来实现重启和初始化,而不是依赖于具体的电平数值。
综上所述,STC单片机的复位电平是确保单片机正常启动和运行的重要参数。
我们应该正确连接复位信号,并确保复位电平的稳定性和准确性。
通过遵循规格书中的要求,我们可以确保单片机在复位时能够正确地初始化并开始执行程序。
STC89系列高性能单片机及其应用软件/代码/教程2007-07-06 12:52:08 阅读64 评论0 字号:大中小订阅随着电子技术的迅速发展,单片机技术的出现给现代工业测控领域带来了一次新的技术革命。
目前,单片机以其高可靠性、高性能价格比,在工业控制系统、数据采集系统、智能化仪器仪表、办公自动化等诸多领域得到极为广泛的应用,并已走入家庭,洗衣机、空调等,到处都可见到单片机的踪影。
在单片机家族的众多成员中,MCS51系列单片机以其优越的性能、成熟的技术及高可靠性和高性能价格比,迅速占领了工业测控和自动化工程应用的主要市场,成为国内单片机应用领域中的主流。
世界各大单片机厂商都在MCS51上投入了大量的资金和人力,围绕51内核,衍生出许多品种,增强51单片机的各种功能。
MCS51家族是目前在单片机领域发展最快的一个品种。
这里要向大家推荐的是新近由STC公司推出的高性价比的STC89系列单片机。
STC89系列单片机的性能STC89系列单片机是MCS-51系列单片机的派生产品。
它们在指令系统、硬件结构和片内资源上与标准8052单片机完全兼容,DIP40封装系列与8051为pin-to-pin兼容。
STC89系列单片机高速(最高时钟频率90MHz),低功耗,在系统/在应用可编程(ISP,IAP),不占用户资源。
下表是STC89系列单片机资源一览表。
AüSTC89系列单片机另外增加了768字节的片内扩展RAM,以解决众多技术人员在编程时的RAM资源严重缺乏的问题。
768字节的片内扩展RAM(地址:000H2FFH)与外部扩展RAM地址重叠,单片机可通过软件设置AUXR.1,决定是否使用片内扩展RAM,以防止可能的与外部扩展RAM的冲突,默认为使用片内扩展RAM。
片内扩展RAM的访问采用间接寻址,可通过①、MOVX A,@DPTR 或MOVX @DPTR ,A 指令访问片内扩展RAM(00H2FFH,共768字节);②、MOVX A,@Ri 或MOVX @Ri,A 指令访问片内扩展RAM(00HFFH,共256字节)。