基本信息
文件名称:NXP 系列:LPC1100 系列_(13).LPC1100系列的安全特性.docx
文件大小:23.41 KB
总页数:21 页
更新时间:2025-06-18
总字数:约9.31千字
文档摘要

PAGE1

PAGE1

LPC1100系列的安全特性

引言

在现代嵌入式系统中,安全性是一个至关重要的方面。无论是消费电子、工业控制还是汽车应用,设备的安全性直接影响到系统的可靠性和用户体验。LPC1100系列单片机在设计时充分考虑了这一需求,提供了多种安全特性来保护系统免受各种威胁。本节将详细介绍LPC1100系列的安全特性,包括硬件保护机制、软件保护机制以及相关配置和使用方法。

硬件保护机制

1.欠压检测(Brown-outDetection)

欠压检测是一种硬件机制,用于检测系统电源电压是否低于正常工作电压范围。当电源电压低于设定的阈值时,单片机会自动复位,以防止因低电压导致的系统不稳定或数据损坏。

原理

LPC1100系列单片机内置了欠压检测电路,可以通过配置寄存器来设定检测阈值。当电源电压低于该阈值时,欠压检测电路会生成一个复位信号,使单片机复位。

配置

欠压检测可以通过配置系统控制寄存器(SYSCON_BODCTRL)来实现。该寄存器包含多个位,用于设置欠压检测的阈值和行为。

//LPC1100系列欠压检测配置示例

#includeLPC11xx.h

voidconfigure_bod(void){

//使能欠压检测

LPC_SYSCON-BODCTRL|=(10);//BODenable

//设置欠压检测阈值

LPC_SYSCON-BODCTRL=~(0x031);//清除阈值选择位

LPC_SYSCON-BODCTRL|=(0x011);//选择阈值2.1V

//使能欠压中断

LPC_SYSCON-BODCTRL|=(14);//BODinterruptenable

//设置欠压中断优先级

NVIC_SetPriority(BOD_IRQn,1);//设置为优先级1

}

intmain(void){

//配置欠压检测

configure_bod();

//其他初始化代码

//...

while(1){

//主循环

}

}

2.看门狗定时器(WatchdogTimer)

看门狗定时器是一种硬件定时器,用于在系统出现故障时自动复位单片机。它可以帮助防止系统因软件死锁或硬件故障而停止响应。

原理

看门狗定时器通过定时生成复位信号来确保系统正常运行。如果定时器在设定的时间内没有被刷新,它将触发复位。LPC1100系列单片机的看门狗定时器可以通过配置寄存器来设置定时时间、模式和行为。

配置

看门狗定时器的配置主要通过WDT模块的寄存器来实现。以下是一个配置看门狗定时器的示例:

//LPC1100系列看门狗定时器配置示例

#includeLPC11xx.h

voidconfigure_wdt(void){

//使能看门狗定时器

LPC_WDT-WTMOD=0x01;//看门狗模式

//设置定时时间

LPC_WDT-WTCLKSEL=0x02;//选择内部RC振荡器作为时钟源

LPC_WDT-WTCNTR=0x00;//清除计数器

LPC_WDT-WTINTCLR=0x01;//清除中断标志

LPC_WDT-WTWPCR=0x1234;//写入WDPROTECT寄存器

LPC_WDT-WTWPCR=0xABCD;//再次写入WDPROTECT寄存器以解锁

LPC_WDT-WTTC=0x00000FFF;//设置定时时间(16位计数器值)

//使能看门狗定时器

LPC_WDT-WTCNTR=0x0000;//启动计数器

}

intmain(void){

//配置看门狗定时器

configure_wdt();

//其他初始化代码

//...

while(1){

//主循环

//定期刷新看门狗定时器

LPC_WDT-WTCNTR=0x0000;//刷新计数器

}

}

3.闪存保护(FlashProtection)

闪存保护是一种硬件机制,用于防止未经授权的访问和修改闪存中的代码和数据。LPC1100系列单片机提供了多种闪存保护选项,包括写保护、