㈠ 是单片机复位有几种方法 复位后机器初始状态
使程序计数器PC=0000H,这表明程序从0000H地址单元开始执行。单片机冷启动后,片内RAM为随机值,运行中的复位操作不改变片内RAM区中的内容,21个特殊功能寄存器复位后的状态为确定值
说明:表中符号*为随机状态;
A=00H,表明累加器已被清零;
特殊功能寄存器
初始状态
特殊功能寄存器
初始状态
A
00H
TMOD
00H
B
00H
TCON
00H
PSW
00H
TH0
00H
SP
07H
TL0
00H
DPL
00H
TH1
00H
DPH
00H
TL1
00H
P0~P3
FFH
SBUF
不定
IP
***00000B
SCON
00H
IE
0**00000B
PCON
0*******B
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内部的数据则不变
㈡ 单片机的复位电路作用就是在芯片上电后让复位引脚保持20us左右的低电平吗
51单片机,复位电路作用就是:
在芯片上电后,让复位引脚保持两个机器周期
(约 2us,在12MHz时)的,高电平。
注意:51单片机,是高电平复位。
----
复位脉冲的宽度大小,是由单片机的厂家决定。
并不是由某些《专用的复位芯片》的厂家决定。
51 单片机厂家认为,宽度大于 2us 即可复位,这就是准确的说法。
即使某些《专用的复位芯片》输出 240ms,只能说它们在画蛇添足。
并不能用这个数值来否定单片机厂家给出的性能指标。
复位可靠,只是一些心理暗示而已,这说法本身,并不可靠。
以某些其它芯片来讨论单片机的复位时间,明显不靠谱。
㈢ 单片机复位和冷启动(掉电)的区别
对于单片机执行程序的过程,单片机复位和冷启动(掉电)是没区别的,都是要0000H单元开始执行。但对于电路是不同的。冷启动,所有芯片及电路都是新上电,带有复位的芯片会自动复位。而带电复位只是单片机复位,而其他电路仍会保持现状态,除非也是受单片机复位信号的控制,与单片机同步复位的除外。
另外,单片机带电复位,如果不是按复位键产生的,就是由内部外部看门狗产生的。有的单片机带有上电启动标志位POF,可通过查询POF标志位来判断是冷启动还是带电复位。
㈣ 单片机如何用C程序复位
可以使用下面的程序跳到0000H实现软复位,下面的程序实际上是一个函数指针,指针指向了0000H地址。
((void (code *) (void)) 0x0000) ();
下面的例子将实现软件自复位void reset (void)
{
((void (code *) (void)) 0x0000) ();
}
void main (void)
{
reset ();
}
你可能注意到以上的软复位程序并不能清除8051的中断系统和某些8051的外围设备,当您在中断程序中调用上面的软件复位程序后,中断将再不能触发。因此,以上的软复位程序不能在中断子程序中调用。
下面的小段汇编函数可以在中断程序或主程序中调用,该函数将0x0000压栈,然后通过“RETI”出栈,这将清除中断环境并让程序从0000H重新开始运行。
?PR?RESET SEGMENT CODE
RSEG ?PR?RESET
; C prototype: void reset (void);
PUBLIC reset
reset: POP ACC ; pop return address
POP ACC
CLR A ; push 0 as new
PUSH ACC ; return address to stack
PUSH ACC
RETI ; execute return of interrupt
END
以上程序在选择bank 0寄存器组时工作良好,假如选择的不是bank0寄存器组,那么可能无法获得预料的结果。你应该在以上的程序或启动代码中加上“MOV PSW, #0”来选择bank 0寄存器组。
以上文章由龙啸九天翻译自KEIL FAQ,可能有疏漏,欢迎提出。
㈤ 单片机复位监控芯片有几种分别是
单片机复位监控芯片分别有:IMP705,IMP706,IMP708。而且可选择适应于5V和3.3V不同的电源电压下。
单片机(Microcontrollers)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。从上世纪80年代,由当时的4位、8位单片机,发展到现在的300M的高速单片机。
㈥ 单片机复位电路(高低电平复位分别)
当单片机上电瞬间由于电容电压不能突变会使电容两边的电位相同,此时RST为低电平,之后随着时间推移电源通过电阻对电容充电,充满电时RST为高电平。正常工作为高电平,低电平复位。
当单片机上电瞬间由于电容电压不能突变会使电容两边的电位相同,此时RST为高电平,之后随着时间推移电源负极通过电阻对电容放电,放完电时RST为低电平。正常工作为低电平,高电平复位。
单片机的复位引脚RST(全称RESET)出现2个机器周期以上的高电平时,单片机就执行复位操作。如果RST持续为高电平,单片机就处于循环复位状态。当单片机处于低电平时就扫描程序存储器执行程序。
(6)单片机自恢复芯片扩展阅读
基本结构
1、运算器
运算器由运算部件——算术逻辑单元(Arithmetic & Logical Unit,简称ALU)、累加器和寄存器等几部分组成。ALU的作用是把传来的数据进行算术或逻辑运算,输入来源为两个8位数据,分别来自累加器和数据寄存器。
2、ALU能完成对这两个数据进行加、减、与、或、比较大小等操作,最后将结果存入累加器。例如,两个数6和7相加,在相加之前,操作数6放在累加器中,7放在数据寄存器中,当执行加法指令时,ALU即把两个数相加并把结果13存入累加器,取代累加器原来的内容6。
3、运算器有两个功能:
(1)执行各种算术运算。
(2)执行各种逻辑运算,并进行逻辑测试,如零值测试或两个值的比较。
(3)运算器所执行全部操作都是由控制器发出的控制信号来指挥的,并且,一个算术操作产生一个运算结果,一个逻辑操作产生一个判决。
4、控制器
控制器由程序计数器、指令寄存器、指令译码器、时序发生器和操作控制器等组成,是发布命令的“决策机构”,即协调和指挥整个微机系统的操作。其主要功能有:
(1) 从内存中取出一条指令,并指出下一条指令在内存中的位置。
(2) 对指令进行译码和测试,并产生相应的操作控制信号,以便于执行规定的动作。
(3) 指挥并控制CPU、内存和输入输出设备之间数据流动的方向。
5、主要寄存器
(1)累加器A
累加器A是微处理器中使用最频繁的寄存器。在算术和逻辑运算时它有双功能:运算前,用于保存一个操作数;运算后,用于保存所得的和、差或逻辑运算结果。
(2)数据寄存器DR
数据寄存器通过数据总线向存储器和输入/输出设备送(写)或取(读)数据的暂存单元。它可以保存一条正在译码的指令,也可以保存正在送往存储器中存储的一个数据字节等等。
(3)程序计数器PC
PC用于确定下一条指令的地址,以保证程序能够连续地执行下去,因此通常又被称为指令地址计数器。在程序开始执行前必须将程序的第一条指令的内存单元地址(即程序的首地址)送入PC,使它总是指向下一条要执行指令的地址。
(4)地址寄存器AR
地址寄存器用于保存当前CPU所要访问的内存单元或I/O设备的地址。由于内存与CPU之间存在着速度上的差异,所以必须使用地址寄存器来保持地址信息,直到内存读/写操作完成为止。
硬件特性
芯片
1、主流单片机包括CPU、4KB容量的RAM、128 KB容量的ROM、 2个16位定时/计数器、4个8位并行口、全双工串口行口、ADC/DAC、SPI、I2C、ISP、IAP。
2、系统结构简单,使用方便,实现模块化。
3、单片机可靠性高,可工作到10^6 ~10^7小时无故障。
4、处理功能强,速度快。
5、低电压,低功耗,便于生产便携式产品。
6、控制功能强。
7、环境适应能力强。
㈦ 我的51单片机芯片烧坏了,该如何恢复
芯片坏了,那就废了,再换一块
㈧ 单片机的三种复位方式
一、高电平复位
复位电路的工作原理 在书本上有介绍,51单片机要复位只需要在第9引脚接个高电平持续2us就可以实现,那这个过程是如何实现的呢?在单片机系统中,系统上电启动的时候复位一次,当按键按下的时候系统再次复位,如果释放后再按下,系统还会复位。所以可以通过按键的断开和闭合在运行的系统中控制其复位。
(1)、上电复位
电容的的大小是10uf,电阻的大小是10k。所以根据公式,可以算出电容充电到电源电压的0.7倍(单片机的电源是5V,所以充电到0.7倍即为3.5V),需要的时间是10K*10UF=0.1S。也就是说在电脑启动的0.1S内,电容两端的电压时在0~3.5V增加。这个时候10K电阻两端的电压为从5~1.5V减少(串联电路各处电压之和为总电压)。所以在0.1S内,RST引脚所接收到的电压是5V~1.5V。在5V正常工作的51单片机中小于1.5V的电压信号为低电平信号,而大于1.5V的电压信号为高电平信号。所以在开机0.1S内,单片机系统自动复位(RST引脚接收到的高电平信号时间为0.1S左右)。
(2) 按键复位
在单片机启动0.1S后,电容C两端的电压持续充电为5V,这是时候10K电阻两端的电压接近于0V,RST处于低电平所以系统正常工作。当按键按下的时候,开关导通,这个时候电容两端形成了一个回路,电容被短路,所以在按键按下的这个过程中,电容开始释放之前充的电量。随着时间的推移,电容的电压在0.1S内,从5V释放到变为了1.5V,甚至更小。根据串联电路电压为各处之和,这个时候10K电阻两端的电压为3.5V,甚至更大,所以RST引脚又接收到高电平。单片机系统自动复位。
总结: 1、复位电路的原理是单片机RST引脚接收到2US以上的电平信号,只要保证电容的充放电时间大于2US,即可实现复位,所以电路中的电容值是可以改变的。 2、按键按下系统复位,是电容处于一个短路电路中,释放了所有的电能,电阻两端的电压增加引起的。
二、低电平复位
在使用STM32芯片时,常用的复位方式为按键复位,且为低电平复位。其原理与上述高电平复位相反,分析也挺简单,这里不在赘述,只给出按键复位原理
单片机的复位引脚RST(全称RESET)出现2个机器周期以上的复位电平时,单片机就执行复位操作。如果RST持续为复位电平,单片机就处于循环复位状态。当单片机处于正常电平时就正常转入执行程序。
当单片机上电瞬间由于电容电压不能突变会使电容两边的电位相同,此时RST为低电平,之后随着时间推移电源通过电阻对电容充电,充满电时RST为高电平。正常工作为高电平,低电平复位。即上电低电平,然后转向高电平。当单片机上电瞬间由于电容电压不能突变会使电容两边的电位相同,此时RST为高电平,之后随着时间推移电源负极通过电阻对电容放电,放完电时RST为低电平。正常工作为低电平,高电平复位。
㈨ 复位芯片、电压检测芯片、看门狗有什么区别
其实复位的本质是MCU在接到特定信号后,执行复位动作,清零及清寄存器,重置中断等;
那么特定信号是什么,通常是一个电压触发信号,如低电平/高电平,对应的也就是低电平复位/高电平复位;
所以仅就复位功能来讲,这三者均可实现,只是实现的方式不一样;
通常意义上来讲,复位芯片是代替阻容复位的,通常用在复位波形要求比较高的场合,就比如RC复位,它的波形比较迟缓,而且一致性差,如果是用专用的复位芯片,输出的复位波形就非常好,实际上,这种单一功能的复位芯片,现在用得很少,反而是电压检测和看门狗用得比较多;
电压检测其实就是一个电压判断器+一个复位电路,当电压掉落到一定程度,电压检测芯片就发出复位信号,使MCU复位,避免MCU在过低的电压状态下运行,从而避免不可控的状况出现;
看门狗其实主要是为了防止程序跑飞...说白了就是一个计时器+一个复位电路,在一字计时期限内,如果MCU没有给回馈给看门狗,看门狗就强制输出复位信号,让MCU复位;
----
举个简单的例子.比如我现在用一颗5V电压的MCU;那么芯片通常能保证在4.5V~5.5V范围内正常工作,所以我会在前端一颗S-80146,这颗芯片在Vcc掉到4.6V时就会发出复位信号,此时MCU就会开始复位了...如果你不加...好吧,MCU搞不好在3V电压下都还在运行,但运行出个什么结果,就只有上帝知道了...
同理,通常会会加一颗WDT,不过现在很多人都用门电路自己搭,也是可以的;比如我设定2S内喂一次狗,如果2S计时到了,而MCU没有任何喂狗的信号,说明此时程序已经跑飞了,所以WDT就会启动复位...从而避免MCU在错误的程序下继续跑下去.
㈩ 请问单片机芯片的复位原理是如何的何为组容复位电路有简单的电路参考吗
单片机的复位就像百米短跑起跑的那声“各就各位,预备...”
单片机有各种各样的复位,比如上电复位、复位引脚复位、看门狗复位、软件复位。
原理就是单片机的内部电路强迫单片机PC指针回到0,并把相关寄存器强迫到初始值。
51单片机是高电平复位,最简单的复位电路是阻容复位,上拉一个电容+下拉一个电阻。上电时刻,电容没电荷,相当于短路,电压直接加载在复位引脚上,引起复位引脚复位,使单片机保持在复位状态,同时等待单片机供电电压上升到能正常工作的水平,一直到电容充完电断开,完成复位,单片机开始从初始地址执行指令。
你问楼上的电容电阻反过来接会怎样?很简单,单片机复位脚一直保持高电平,就是一直保持复位状态,表面看是单片机无效。
PS:真奇怪,我怎么这么有耐心教菜鸟