基本信息
文件名称:NXP 系列:LPC1100 系列 (基于 Cortex-M0)_(17).系统控制与配置寄存器.docx
文件大小:23.52 KB
总页数:17 页
更新时间:2025-06-14
总字数:约9.25千字
文档摘要

PAGE1

PAGE1

系统控制与配置寄存器

系统控制与配置寄存器(SystemControlandConfigurationRegisters)是LPC1100系列单片机中的一个关键部分,它们用于控制和配置系统的各种功能和参数。通过这些寄存器,开发者可以对单片机的时钟、复位、电源管理、中断控制等进行精细的控制。本节将详细介绍这些寄存器的功能、用途以及如何通过编程进行配置。

1.系统控制寄存器(SystemControlRegister)

系统控制寄存器(SYSCON)提供了一系列的寄存器,用于控制单片机的时钟、电源管理、复位和中断等功能。这些寄存器通常位于单片机的内存映射区域,可以通过内存地址直接访问。

1.1时钟控制寄存器(ClockControlRegister)

时钟控制寄存器(CLKCTRL)用于配置单片机的主时钟源和分频器。通过这些寄存器,可以设置系统时钟的速度,选择不同的时钟源,如内部振荡器、外部晶振或PLL等。

1.1.1主时钟源选择寄存器(MAINCLKSEL)

主时钟源选择寄存器(MAINCLKSEL)用于选择主时钟源。寄存器的位定义如下:

位|名称|描述|

|—|—|—|

[1:0]|SEL|选择主时钟源|

0|选择内部振荡器|

1|选择外部晶振|

2|选择PLL输出|

3|保留|

示例代码:

//选择外部晶振作为主时钟源

voidselect_ext_osc_as_main_clk(void){

//设置MAINCLKSEL寄存器

LPC_SYSCON-MAINCLKSEL=1;//选择外部晶振

}

1.2电源管理寄存器(PowerManagementRegister)

电源管理寄存器(PDRUNCFG)用于控制单片机的电源管理功能,包括各个外设的电源控制和省电模式的配置。

1.2.1外设电源控制寄存器(PDRUNCFG)

外设电源控制寄存器(PDRUNCFG)用于控制各个外设的电源状态。寄存器的位定义如下:

位|名称|描述|

|—|—|—|

[7:0]|PD|外设电源控制位|

0|保留|

1|保留|

2|保留|

3|保留|

4|保留|

5|保留|

6|保留|

7|保留|

8|USB_REG|USB电源控制|

9|ADC_PD|ADC电源控制|

10|DAC_PD|DAC电源控制|

11|I2C0_PD|I2C0电源控制|

12|I2C1_PD|I2C1电源控制|

13|UART0_PD|UART0电源控制|

14|UART1_PD|UART1电源控制|

15|SPI0_PD|SPI0电源控制|

16|SPI1_PD|SPI1电源控制|

17|I2S_PD|I2S电源控制|

18|CRC_PD|CRC电源控制|

19|WWDT_PD|WWDT电源控制|

20|Reserved|保留|

21|Reserved|保留|

22|Reserved|保留|

23|Reserved|保留|

24|Reserved|保留|

25|Reserved|保留|

26|Reserved|保留|

27|Reserved|保留|

28|Reserved|保留|

29|Reserved|保留|

30|Reserved|保留|

31|Reserved|保留|

示例代码:

//关闭UART0的电源

voidpower_down_uart0(void){

//设置PDRUNCFG寄存器

LPC_SYSCON-PDRUNCFG|=(113);//设置UART0_PD位为1

}

//打开UART0的电源

voidpower_up_uart0(void){

//清除PDRUNCFG寄存器

LPC_SYSCON-PDRUNCFG=~(113);//清除UART0_PD位

}

1.3复位控制寄存器(ResetControlRegister)

复位控制寄存器(RSTCTRL)用于控制单片机的复位功能,包括系统复位和外设复位。

1.3.1系统复位控制寄存器(SYSRSTCTL)

系统复位控制寄存器(SYSRSTCTL)用于配置系统的复位源。寄存器