基于ARM和SHT11的温湿度检测报警装置设计毕业设计论文 - 图文(4)

2019-03-15 12:12

沈阳工业大学本科生毕业设计(论文)

3.1.2特性

ARM Cortex-M3处理器,可在高至100MHz的频率下运行,并包含一个支持8个区的存储器保护单元(MPU);

ARM Cortex-M3内置了嵌套的向量中断控制器(NVIC);

具有在系统编程(ISP)和在应用编程(IAP)功能的512KB片上Flash程序存储器。把增强型的Flash存储加速器和Flash存储器在CPU本地代码/数据总线上的位置进行整合,则Flash可提供高性能的代码;

64KB片内SRAM包括:

32KB SRAM可供高性能CPU通过本地代码/数据总线访问; 2个16KB SRAM模块,带独立访问路径,可进行更高吞量的操作。 这些SRAM模块可用于以太网、USB、DMA存储器,以及通用指令和数据存储;

AHB多层矩阵上具有8通道的通用DMA控制器,它可结合SSP、I2S、UART、模数和数模转换器外设、定时器匹配信号和GPIO使用,并可用于存储器到存储器的传输[2];

多层AHB矩阵内部连接,为每个AHB主机提供独立的总线。AHB主机包括CPU、通用DMA控制器、以太网MAC和USB接口。这个内部连接特性提供无仲裁延迟的通信,除非2个主机尝试同时访问同一个从机[4];

分离的APB总线允许在CPU和DMA之间提供更多的带宽,更少的延迟。CPU无须等待APB写操作完成; 串行接口

–以太网MAC带RMII接口和相关的DMA控制器;

–USB 2.0全速从机/主机/OTG控制器,带有用于从机、主机功能的片内PHY和相关的DMA控制器;

–4个UART,带小数波特率发生功能、内部FIFO、DMA支持和RS-485支持。1个UART带有modem控制I/O并支持RS-485/EIA-485,全部的UART都支持IrDA;

–CAN控制器,带2个通道;

–SPI控制器,具有同步、串行、全双工通信和可编程的数据长度; –2个SSP控制器,带有FIFO,可按多种协议进行通信。其中一个可选择用于SPI

10

沈阳工业大学本科生毕业设计(论文)

其它外设:

70个(100个管脚封装)通用I/O(GPIO)管脚,带可配置的上拉/下拉电阻。AHB总线上的所有GPIO可进行快速访问,支持新的、可配置的开漏操作模式;GPIO位于存储器中,它支持Cortex-M3位带宽并且由通用DMA控制器使用;

12位模数转换器(ADC),可在8个管脚间实现多路输入,转换速率高达1MHz,并具有多个结果寄存器。12位ADC可与GPDMA控制器一起使用; 10位数模转换器(DAC),具有专用的转换定时器,并支持DMA操作; 4个通用定时/计数器,共有8个捕获输入和10个比较输出。每个定时器模块都具有一个外部计数输入。可选择特定的定时器事件来产生DMA请求[5];

1个电机控制PWM,支持三相的电机控制; 正交编码器接口,可监控一个外部正交编码器; 1个标准的PWM/定时器模块,带外部计数输入;

实时时钟(RTC)带有独立的电源域。RTC通过专用的RTC振荡器来驱动。RTC模块包括20字节电池供电的备用寄存器,当芯片的其它部分掉电时允许系统状态存储在该寄存器中。电池电源可由标准的3V锂电池供电。当电池电压掉至2.1V的低电压时,RTC仍将会继续工作。RTC中断可将CPU从任何低功率模式中唤醒;

看门狗定时器(WDT),该定时器的时钟源可在内部RC振荡器、RTC振荡器或APB时钟三者间进行选择;

支持ARM Cortex-M3系统节拍定时器,包括外部时钟输入选项; 重复性的中断定时器提供可编程和重复定时的中断;

标准JTAG测试/调试接口以及串行线调试和串行线跟踪端口选项; ? 仿真跟踪模块支持实时跟踪; ?

4个低功率模式:睡眠、深度睡眠、掉电、深度掉电; ? 单个3.3V电源(2.4V – 3.6V)。温度范围为-40℃- 85℃;?

4个外部中断输入,可配置为边沿/电平触发。PORT0和PORT2上的所有管脚都可用作边沿触发的中断源; ? 不可屏蔽中断(NMI)输入; ?

时钟输出功能,可反映主振荡器时钟、IRC时钟、RTC时钟、CPU时钟或USB时钟的输出状态;

当处于掉电模式时,可通过中断(包括外部中断、RTC中断、USB活动中断、以太网唤醒中断、CAN总线活动中断、PORT0/2管脚中断和NMI)将处理器从掉电模式中唤醒;

11

沈阳工业大学本科生毕业设计(论文)

每个外设都自带时钟分频器,以进一步节省功耗;

带掉电检测功能,可对掉电中断和强制复位分别设置阀值; 片内有上电复位电路;

片内晶振工作频率为1MHz到24MHz;

4MHz内部RC振荡器可在±1%的精度内调整,可选择用作系统时钟 3.1.3结构概述

ARM Cortex-M3包含三条AHB-Lite总线,一条系统总线以及I-code和D-code总线,后二者的速率较快,且在TCM接口的用法类似:一条总线专用于指令取指(I-code),另一条总线用于数据访问(D-code)。这二条内核总线的用法允许同时执行操作,即使同时要对不同的设备目标进行操作[6]。

LPC1700系列Cortex-M3微控制器使用多层AHB矩阵来连接上Cortex-M3总线,并以灵活的方式将其它总线主机连接到外设,允许矩阵的不同从机端口上的外设可以同时被不同的总线主机访问,从而能获取到最优化的性能。图1.2所示为多层矩阵连接的详细情况[7]。

APB外设使用多层AHB矩阵的独立从机端口通过两条APB总线连接到CPU。这减少了CPU和DMA控制器之间的争用,可实现更好的性能。APB总线桥配置为缓冲区写操作,使得CPU或DMA控制器无需等待APB写操作结束。 3.1.4 ARM Cortex-M3处理器

ARM Cortex-M3是一个通用的32位微处理器,它具有高性能和超低功耗的特性[8]。Cortex-M3还提供许多新的特性,包括Thumb-2指令集、低中断延时、硬件除法、可中断/可持续的多次加载和存放指令、对中断的自动状态进行保存和恢复、紧密结合中断控制器与唤醒中断控制器、多条内核总线可同时用于访问

[9]

采用这样的流水处理技术,使得各个器件的处理和存储器系统可以连续进行

操作。通常,当一个指令正在执行时,第二个指令正在进行解码,而第三个指令正在存储器中被取指出来[9]。

LPC1700系列Cortex-M3微控制器使用Cortex-M3 CPU的r2p0版本,其中包含了下面所标记的众多可配置选项。 系统选项:

包含嵌套的向量中断控制器(NVIC)。NVIC包括SYSTICK定时器; 包含唤醒中断控制器(WIC)。WIC可实现更有效的选项,将CPU从低功耗

12

沈阳工业大学本科生毕业设计(论文)

模式中唤醒;

包含存储器保护单元(MPU);

包含ROM表。ROM表提供了调试部件到外部调试系统的地址; 调试相关的选项: 包含JTAG调试接口;

包含串行线调试。串行线调试允许仅使用两条线进行调试操作,简单的跟踪功能可增加第三条线;

包含嵌入式跟踪宏单元(ETM)。ETM提供指令跟踪功能;

包含数据观察点和跟踪(DWT)单元。DWT允许数据地址或数据值匹配为跟踪信息或触发其它事件。DWT包含4个比较器和计数器以用于特定的内部事件;

包含指令跟踪宏单元(ITM)。软件可写ITM以发送信息到跟踪端口; 包含跟踪端口接口单元(TPIU)。TPIU编码并向外面提供跟踪信息。这可以在串行线浏览器管脚(Serial Wire Viewer pin)或4位并行跟踪端口上实现;

包含Flash修补和断点(FPB)。FPB可产生硬件断点并且在代码空间中重新映射特定的地址到SRAM作为更改非易失性代码的暂时方法。FPB包括2个文字比较器(literal comparator)和6个指令比较器。 3.1.5片上Flash存储器系统

LPC1700系列Cortex-M3微控制器含有512KB的片上Flash存储器。一个新的2-端口Flash存储器加速器通过两条快速AHB-Lite总线将其使用性能扩至极限。该存储器可用于存放代码和数据[7]。对Flash存储器的编写有若干种方式来实现。它可通过串口来进行在系统编程。应用程序也可以在运行时对Flash进行擦除和/或编程,从而为数据存储域固件升级等操作带来了极大的灵活性。 3.1.6片上静态RAM

LPC1700系列Cortex-M3微控制器包含共计为64KB的片上静态RAM存储器。这包括主32KB SRAM(CPU和高速总线上的3个DMA控制器均可对其进行访问)以及另外两个各为16KB的、位于AHB多层矩阵独立从机端口的SRAM模块。

这种结构允许各自执行CPU和DMA访问操作,从而对总线主机的延迟变少或无延迟。

13

沈阳工业大学本科生毕业设计(论文)

3.1.7看门狗定时器 1)特性

如果没有正确地周期性喂狗,则产生片内复位; 具有调试模式;

可通过软件使能,但需要一次硬件复位或禁止看门狗产生复位/中断; 错误的或不完整的喂狗时序会令看门狗产生中断/复位(如果使能); 具有指示看门狗发生复位的标志; 带内部预分频器的可编程32位定时器;

可选择TWDCLK×4倍数的时间周期:从TWDCLK×256×4到TWDCLK×232×4;

看门狗(WDCLK)可以选择内部RC振荡器(IRC)或APB外设时钟作为时钟源。这为看门狗在不同的功率下提供了较宽的时序选择范围。为了增加可靠性,它还可以使看门狗定时器在一个与外部晶体及其相关元件无关的内部时钟源下运行;

使用IRC作为时钟源时,看门狗定时器可配置成在深度休眠模式中运行。 2) 应用

看门狗的用途是在微控制器进入错误状态后的一定时间内复位。当看门狗使能时,如果用户程序没有在溢出周期内喂狗(给看门狗定时器重装定时值),看门狗会产生一个系统复位。

有关片内看门狗和其他外设之间的相互作用的详细内容(尤其是复位和引导程序),请参考“系统控制”章节的“复位”小节。 3)描述

看门狗定时器包括一个4分频的预分频器和一个32位计数器。时钟通过预分频器输入定时器,定时器递减计数。定时器递减的最小值为0xFF。如果设置一个小于0xFF的值,系统会将0xFF装入定时器。因此看门狗定时器的最小定时间隔为v,最大定时间隔为TWDCLK×232×4,两者都是TWDCLK×4的倍数。 看门狗应当按照下面的方法来使用:

在WDTC寄存器中设置看门狗定时器的定时参数值; 在WDMOD寄存器中设置看门狗的工作模式;

通过向WDFEED寄存器依序写入0xAA和0x55启动看门狗; 在看门狗溢出前应再次喂狗以免发生复位或中断。

若看门狗设置为溢出复位模式,那么当看门狗溢出时,会引发CPU复位,

14


基于ARM和SHT11的温湿度检测报警装置设计毕业设计论文 - 图文(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:城市规划复习重点

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: