单片机成长之路(51基础篇) - 002 STC单片机冷启动和复位有什么区别

  STC单片机简介

  STC单片机是一款加强型51单片机,彻底兼容MCS-51,还增长了新的功能,好比新增两级中断优先级,多一个外中断,内置EEPROM,硬件看门狗,具备掉电模式,512B内存等。还支持ISP下载,不用编程器,只要一个MAX232和一些廉价的元件就能写程序,可擦写10万次。所以是一款很好用的单片机。web

  一文看懂STC单片机冷启动和复位有什么区别

 stc单片机的优缺点

  stc单片机优势:编程

  一、抗干扰能力强;函数

  二、保密性能强悍,很难被破解;性能

  三、单片机时钟有防外部电磁辐射功能;指针

  stc单片机缺点:blog

  一、功耗较高,5V供电;内存

  二、8位,运行速度慢;资源

  三、无硬件乘法器,乘除法运算都为4周期指令;get

  四、单片机内集成资源少。原理

  为何STC单片机要冷启动

  stc的程序分引导区和程序区。引导区的代码主要负责ISP在线烧录。而stc的冷启动顺序就是先从引导区而后启动到程序区的。而热启动就是普通的51启动方式,只能从程序区头部开始从新执行。因此你必须冷启动。另外STC提供了一个特殊的寄存器地址,经过设置他能经过软件实现硬复位的功能直接跳转到引导区。

  一文看懂STC单片机冷启动和复位有什么区别

  STC单片机冷启动和复位是什么

  STC单片机冷启动和复位是什么,现以STC12系列为例说明。

  冷启动,单片机掉电,电量放光后上电,为冷启动。

  复位,单片机不掉电,使用复位管脚对其复位(还有其余类型的复位:看门狗、IAP_COUNTER控制软复位)。这些属于热启动。

  STC单片机的复位方式

  以STC12C5A60S2系列单片机为例:

  一、外部RST引脚复位。

  二、外部低压检测复位。

  三、软件复位

  四、掉电复位/上电复位

  五、看门狗复位

  一文看懂STC单片机冷启动和复位有什么区别

  STC单片机冷启动和复位有什么区别

  区别就是复位启动是强制进行从新启动(前提就是你的电脑必须已经开着),而冷启动就是你关机后从新进行启动,这样是按照电脑(硬盘)的工做原理来进行的。

  还有的是复位启动是无论你的硬盘是否运行,都要强制重启,这样的话,对你的硬盘有必定的损害。而冷启动就等电脑(硬盘)保存好数据后,再一次进行启动,对硬盘没有损害。

  关于stc51的冷启动下载和复位

  Stc单片机里面有一段出厂时固化的程序,这段程序的做用是检测串口是否要下载程序,不须要则执行单片机内的用户程序。每次启动时运行这端程序,这就是为何每次下载时要冷启动。而复位后单片机是从地址0000H处开始执行,地址0000H又会指向主程序入口,即主函数处,即片内下载的用户程序而不会执行前面已经固化的检测串口那段程序。这就是为何单片机每次下载要冷启动,而复位不行。注意,程序前面的宏定义什么的东西不占用系统时间,因此主程序即主函数处。

  有一个办法能够给那些须要加电马上启动的用户,STC单片机能够设置为加电时只有P1.0/P1.1为低电平时开始下载程序,不然直接执行用户程序。这种办法快,不用等前面检测串口的那段时间 。stc单片机冷启动是必须的而复位电路不是必须的,不论是冷启动仍是手动启动。也就是想下载程序必须冷启动,而有没有复位电路无所谓。可是最小系统板上必须有复位电路,不管是上电复位,仍是上电加手动复位,虽然在一些简单的程序中看不出区别,可是由于复位操做会对一些特殊寄存器产生影响,这样没有复位操做的话再次执行函数的时候会出现错误。单片机断电后在通电也会从主函数处继续执行,多是单片机断电后地址自动回到0000H,可是那些特殊寄存器里的值不会改变。

  一文看懂STC单片机冷启动和复位有什么区别

  对于上电复位,貌似电路不会有电流流过,可是上电瞬间,有一个给电容充电的过程,这个过程当中rst端口会出现一个正脉冲,只要该脉冲保持1ms以上就能使单片机复位。

  单片机的复位操做使单片机进入初始化状态,其中包括使程序计数器PC=0000H,这代表程序从0000H地址单元开始执行。单片机冷启动后,片内RAM为随机值,运行中的复位操做不改变片内RAM区中的内容,21个特殊功能寄存器复位后的状态为肯定值,见下表。

  值得指出的是,记住一些特殊功能寄存器复位后的主要状态,对于了解单片机的初态,减小应用程序中的初始化部分是十分必要的。 说明:表中符号*为随机状态; A=00H,代表累加器已被清零;

  一文看懂STC单片机冷启动和复位有什么区别

  一文看懂STC单片机冷启动和复位有什么区别

  PSW=00H,代表选寄存器0组为工做寄存器组;

  SP=07H,代表堆栈指针指向片内RAM 07H字节单元,根据堆栈操做的先加后压法则,第一个被压入的内容写入到08H单元中;

  Po-P3=FFH,代表已向各端口线写入1,此时,各端口既可用于输入又可用于输出; IP=×××00000B,代表各个中断源处于低优先级; IE=0××00000B,代表各个中断均被关断;

  系统复位是任何微机系统执行的第一步,使整个控制芯片回到默认的硬件状态下。51单片机的复位是由RESET引脚来控制的,此引脚与高电平相接超过24个振荡周期后,51单片机即进入芯片内部复位状态,并且一直在此状态下等待,直到RESET引脚转为低电平后,才检查EA引脚是高电平或低电平,若为高电平则执行芯片内部的程序代码,若为低电平便会执行外部程序。

  51单片机在系统复位时,将其内部的一些重要寄存器设置为特定的值,至于内部RAM内部的数据则不变。

相关文章
相关标签/搜索