当前位置:首页 > LPC2131 ARM硬件结构及程序设计报告
重庆理工大学 嵌入式体系结构课程总结
题目: LPC2131 ARM硬件结构及程序设计
二级学院计算机科学与信息学院
专 业 计算机科学与技术
班 级
学生姓名学号 教 师
时 间2015.1.2 成 绩
目录
1.系统控制和启动过程: ........................................................................................................ 2 2.GPIO ...................................................................................................................................... 4 3.向量中断及外部中断输入 .................................................................................................... 6 4.定时器 .................................................................................................................................... 8 5.SPI .......................................................................................................................................... 9 6.I2C ........................................................................................................................................ 11 7.UART ................................................................................................................................... 13 8.A/D ....................................................................................................................................... 14 9.WDT .................................................................................................................................... 15
1.系统控制和启动过程:
系统控制模块: 晶振
振荡器支持晶振范围为10MHz~25MHz。晶振输出频率称为fOSC,而ARM处理器时钟频率称为cclk。
除非连接并运行PLL,否则在该文档中FOSC和cclk的值是相同的。参见6.21.2节“PLL”。 PLL
PLL可以接受范围为10MHz~25MHz的输入时钟频率。输入频率通过一个电流控制振荡器(CCO)
可以倍增为10MHz~60MHz。倍增器可以是从1到32的整数(实际上在该系列微控制器当中,由于CPU
频率的限制,倍增器的值不可能高于6)。CCO操作的范围为156MHz~320MHz,因此在环当中增加了一个分频器,这样PLL在提供所需要的输出频率时,使CCO保持在其频率范围内。输出分频器可设置为2、4、8或者16分频以产生输出时钟。由于最小输出分频值为2,这样就确保了PLL输出具有50%的占空比。 PLL在芯片复位后关闭并且被旁路,可通过软件使能。程序必须配置并且激活PLL,等待PLL锁定之后再将PLL作为时钟源。PLL设置时间为100us。 复位和唤醒定时器
LPC2131/2132/2138有2个复位源:RESET管脚和看门狗复位。RESET管脚是一个施密特触发输入管脚,带有附加的干扰滤波器。任何复位源所导致的芯片复位都会启动唤醒定时器(见下面描述的唤醒定时器),复位状态将一直保持到外部复位撤除,振荡器开始运行。振荡器运行经过固定数目的时钟后Flash控制器完成其初始化。
当内部复位撤除后,处理器从复位向量地址0开始执行。此时所有的处理器和外设寄存器都被初始化为预设的值。唤醒定时器的用途是确保振荡器和其它芯片操作所需要的模拟功能在处理器能够执行指令之前完全正常工作。这在上电、各种类型的复位以及任何原因所导致上述功能被关闭的情况下非常重要。由于振荡器和其它功能在掉电模式下关闭,因此将处理器从掉电模式中唤醒就要利用唤醒定时器。
唤醒定时器监视晶体振荡器是否可以安全地开始执行代码。当芯片上电时,或某些事件导致芯片退出
掉电模式时,振荡器需要一定的时间以产生足够振幅的信号驱动时钟逻辑。时间的长度取决于许多因素,
包括VDD上升速度(上电时)、晶振的类型及电气特性(如果使用石英晶体)以及其它外部电路(例如:电容)和外部环境下振荡器自身的特性。掉电监测器 LPC2131/2132/2138包含一个VDD管脚电压的2级检测。如果VDD电压低于,掉电检测器(BOD)
向向量中断控制器声明一个中断。该信号可通过中断使能;或者,也可由件通过读取相应的寄存器来监控信号。
当VDD管脚的电压低于2.6V时,这个第二级的低电压检测将产生复位,禁能LPC2131/2132/2138。该
复位可以防止Flash的内容发生改变,因为低电压下芯片的各种功能部件的操作都将变得不可靠。BOD电路将使电压降低到1V以下来维持复位,这个电压下上电复位电路也可保持复位。
2.9V和2.6V阈值都有滞后。正常工作时,这个滞后可使2.9V的检测能产生可靠的中断或使正常反复执行的事件能检测到掉电条件。代码安全 LPC2131/2132/2138可控制应用代码是否被调试或被保护以防盗用。
当片内boot-loader在Flash中检测到一个有效校验和并在Flash的0x1FC地址单元读取0x87654321时,禁止调试,Flash代码被保护。一旦调试被禁能,它就只能通过执行芯片擦除来使能。外部中断输入根据可选管脚功能的设定,LPC2131/2132/2138最多可包含9个边沿或电平触发外部中断输入。外部事件可作为4个独立的中断信号来处理。外部中断输入可用于将处理器从掉电状态唤醒。 存储器映射控制
存储器映射控制改变了从地址0x00000000开始的中断向量的映射。向量可以映射到片内Flash存储器的底部,也可以映射到片内静态RAM。这使得在不同存储器空间中运行的代码都能够对中断进行控制。功率控制
LPC2131/2132/2138支持两种低功耗模式:空闲模式和掉电模式。在空闲模式中,指令的执行被暂停,
直到产生复位或中断为止。外围功能在空闲模式下继续工作并可产生中断唤醒处理器。空闲模式使处理器自身、存储器系统和相关的控制器以及内部总线不再消耗功率。 在掉电模式中,振荡器被关闭,芯片没有任何的内部时钟。处理器状态和寄存器、设寄存器和内部
SRAM的值在掉电模式下保持不变。芯片管脚的逻辑电平保持静态。通过复位或特定的不需要时钟还可工作的中断可终止掉电模式并恢复正常操作。由于芯片所有动态的操作都被暂停,掉电模式使芯片消耗的功率降低到几乎为零。外设的功率控制特性允许关闭单独的不需要使用的外设,这样可进一步降低功耗。 VPB总线
VPB分频器决定处理器时钟(cclk)和外设时钟(pclk)之间的关系。VPB分频器有两个用途。第一,VPB
分频器通过VPB总线为外设提供所需的时钟(PCLK),使外设可工作在ARM处理器选择的速率下。为了
实现该功能,VPB总线频率可以降低为处理器时钟频率的1/2~1/4。由于VPB总线必须在上电时正确工作
(如果VPB总线由于VPB分频器控制寄存器的原因而不工作,则它的时序不能改变),因此VPB总线在
复位后的默认状态是以1/4的处理器时钟速率运行。VPB分频器的第二个用途是当所有外设都不必在全速
率下运行时降频以降低功耗。由于VPB分频器连接到PLL的输出,PLL(如果正在运行)在空闲模式时保 持有效。 仿真和调试
LPC2131/2132/2138支持通过JTAG串行端口进行仿真和调试。跟踪端口允许跟踪程序的执行。调试和换页
跟踪功能只在GPIO的P1口复用。这意味着当应用在嵌入式系统内运行时,位于
共分享92篇相关文档