Microchip 系列:PIC18F46J50 系列 (低功耗)_8.复位与低功耗模式.docxVIP

Microchip 系列:PIC18F46J50 系列 (低功耗)_8.复位与低功耗模式.docx

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

PAGE1

PAGE1

8.复位与低功耗模式

8.1复位源

在PIC18F46J50系列单片机中,复位源是指导致单片机复位的事件或条件。了解复位源对于确保系统的可靠性和稳定性至关重要。PIC18F46J50支持多种复位源,包括:

上电复位(Power-OnReset,POR):当单片机的电源电压从0上升到工作电压时,POR电路会触发复位。

看门狗定时器复位(WatchdogTimerReset,WDT):当看门狗定时器溢出时,会触发复位。WDT可以在软件中配置和启用。

外部复位引脚(MCLR):当MCLR引脚被拉低时,会触发复位。

软件复位(SoftwareReset,SWR):通过特定的指令或中断处理程序可以触发软件复位。

欠压复位(Brown-outReset,BOR):当电源电压低于预设的阈值时,BOR电路会触发复位。

内部时钟复位(InternalClockReset):当内部时钟源出现故障时,会触发复位。

8.1.1上电复位(POR)

上电复位(POR)是单片机在上电或电源电压恢复到正常工作范围时自动触发的复位。POR电路确保单片机在电源电压稳定后进入一个已知的状态,从而避免因电源不稳定导致的不确定行为。

//示例代码:上电复位后执行的初始化函数

voidinitPOR(){

//初始化IO端口

TRISA=0x00;//端口A设置为输出

TRISB=0xFF;//端口B设置为输入

TRISC=0x00;//端口C设置为输出

//初始化定时器

T0CON=0x00;//定时器0配置

TMR0=0x00;//定时器0初始化

//初始化USART

TXSTA=0x20;//传输状态寄存器配置

RCSTA=0x90;//接收状态寄存器配置

SPBRG=25;//波特率生成器配置

//其他初始化代码

//...

}

voidmain(){

initPOR();//调用初始化函数

//主程序代码

while(1){

//循环执行的任务

}

}

8.1.2看门狗定时器复位(WDT)

看门狗定时器(WDT)是一种硬件定时器,用于防止单片机在运行过程中因软件故障而陷入死循环。WDT可以在软件中配置和启用,当定时器溢出时,会触发复位。

//示例代码:启用和配置看门狗定时器

voidinitWDT(){

//启用看门狗定时器

RCONbits.SWDTEN=1;//在复位控制寄存器中启用WDT

//配置WDT周期

WDTCONbits.WDTMRS1=1;//选择WDT周期为18ms

WDTCONbits.WDTMRS0=1;

//清除WDT

CLRWDT();//清除WDT计数器

}

voidmain(){

initWDT();//调用初始化函数

//主程序代码

while(1){

//循环执行的任务

CLRWDT();//每次循环清除WDT,防止复位

}

}

8.1.3外部复位引脚(MCLR)

外部复位引脚(MCLR)是用于手动复位单片机的引脚。当MCLR引脚被拉低时,单片机会立即复位。MCLR引脚通常连接到一个外部按钮或复位电路。

//示例代码:使用MCLR引脚进行复位

//MCLR引脚的配置和使用通常不需要额外的软件代码

//硬件连接示例:

//MCLR引脚连接到一个按钮,按钮的另一端接地

voidmain(){

//初始化代码

//...

//主程序代码

while(1){

//循环执行的任务

//如果MCLR引脚被拉低,单片机会自动复位

}

}

8.1.4软件复位(SWR)

软件复位(SWR)是通过特定的指令或中断处理程序触发的复位。这种复位方式通常用于在软件中检测到错误或异常时,强制单片机复位。

//示例代码:软件复位

voidsoftwareReset(){

//触发软件复位

__asm____volatile__(reset);//使用内嵌汇编指令触发复位

}

void

您可能关注的文档

文档评论(0)

找工业软件教程找老陈 + 关注
实名认证
服务提供商

寻找教程;翻译教程;题库提供;教程发布;计算机技术答疑;行业分析报告提供;

1亿VIP精品文档

相关文档