已阅读5页,还剩13页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
重庆理工大学嵌入式体系结构课程总结题目: LPC2131 ARM硬件结构及程序设计 二级学院 计算机科学与信息学院 专 业 计算机科学与技术 班 级 学生姓名 学号 教 师 时 间 2015.1.2 成 绩 目录1.系统控制和启动过程:22.GPIO53.向量中断及外部中断输入64.定时器85.SPI96.I2C127.UART138.A/D149.WDT151.系统控制和启动过程:系统控制模块:晶振振荡器支持晶振范围为10MHz25MHz。晶振输出频率称为fOSC,而ARM处理器时钟频率称为cclk。除非连接并运行PLL,否则在该文档中FOSC和cclk的值是相同的。参见6.21.2节“PLL”。PLLPLL可以接受范围为10MHz25MHz的输入时钟频率。输入频率通过一个电流控制振荡器(CCO)可以倍增为10MHz60MHz。倍增器可以是从1到32的整数(实际上在该系列微控制器当中,由于CPU频率的限制,倍增器的值不可能高于6)。CCO操作的范围为156MHz320MHz,因此在环当中增加了一个分频器,这样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/21/4。由于VPB总线必须在上电时正确工作(如果VPB总线由于VPB分频器控制寄存器的原因而不工作,则它的时序不能改变),因此VPB总线在复位后的默认状态是以1/4的处理器时钟速率运行。VPB分频器的第二个用途是当所有外设都不必在全速率下运行时降频以降低功耗。由于VPB分频器连接到PLL的输出,PLL(如果正在运行)在空闲模式时保持有效。仿真和调试LPC2131/2132/2138支持通过JTAG串行端口进行仿真和调试。跟踪端口允许跟踪程序的执行。调试和换页跟踪功能只在GPIO的P1口复用。这意味着当应用在嵌入式系统内运行时,位于P0口的所有通信、定时器和接口外设在开发和调试阶段都可用。EmbeddedICE标准的ARM EmbeddedICE逻辑提供对片内调试的支持。对目标系统进行调试需要一个主机来运行调试软件和EmbeddedICE协议转换器。EmbeddedICE协议转换器将远程调议命令转换成所需要的JTAG数据,从而对目标系统上的ARM内核进行访问。ARM内核有一个内置的调试通信通道功能。调试通信通道允许程序在目标系统上运行,即使进入调试状态,目标系统程序与主机调试器或其它独立的主机进行通信时也不会中断程序流程。ARM7TDMI-S内核上运行的程序将调试通信通道作为协处理器14进行访问。调试通信通道允许JTAG端口发送和接收数据,但不影响正常的程序流程。调试通信通道数据和控制寄存器映射EmbeddedICE逻辑中的地址。嵌入式跟踪由于LPC2131/2132/2138带有大量的片内存储器,因此不能简单地通过观察外部管脚来确定处理器核是如何运行的。嵌入式跟踪宏单元(ETM)对深嵌入处理器内核提供了实时跟踪能力。它向一个跟踪端口输出处理器执行的信息。ETM直接连接到ARM内核而不是主AMBA系统总线。它将跟踪信息压缩并通过一个窄带跟踪端口输出。外部跟踪端口分析仪在软件调试器的控制下捕获跟踪信息。指令跟踪(或PC跟踪)显示了处理器的执行流程并提供所有已执行指令的列表。指令跟踪被压缩为广播分支地址和一套用于指示流水线状态的状态信号。跟踪信息的产生可通过选择触发源进行控制。触发源包括地址比较器、计数器和序列发生器。由于跟踪信息被压缩,软件调试器需要一个执行代码的静态映像。由于这个限制,自修改代码无法被跟踪。RealMonitorRealMonitor是一个可配置的软件模块,它由ARM公司开发,可以提供实时的调试。它是一个轻便的调试监控器,当用户对运行在前台的应用程序进行调试时,它运行在后台。它使用DCC(调试通信通道)(EmbeddedICE逻辑中包含了DCC)与主机进行通信。LPC2131/2132/2138包含一个编程到片内Flash存储器中的特定RealMonitor软件。2.GPIO GPIO功能描述每个GPI/O端口有两个32位配置寄存器(GPIOx_CRL,GPIOx_CRH),两个32位数据寄存器(GPIOx_IDR,GPIOx_ODR),一个32位置位/复位寄存器(GPIOx_BSRR),一个16位复位寄存器(GPIOx_BRR)和一个32位锁定寄存器(GPIOx_LCKR)。GPIO端口的每个位可以由软件分别配置成多种模式。输入浮空输入上拉输入下拉模拟输入开漏输出推挽式输出推挽式复用功能开漏复用功能每个I/O端口位可以自由编程,然而I/0端口寄存器必须按32位字被访问(不允许半字或字节访问)。GPIOx_BSRR和GPIOx_BRR寄存器允许对任何GPIO寄存器的读/更改的独立访问;这样,在读和更改访问之间产生IRQ时不会发生危险。下图给出了一个I/O端口位的基本结构。复位期间和刚复位后,复用功能未开启,I/O端口被配置成浮空输入模式(CNFx1:0=01b,MODEx1:0=00b)。复位后,JTAG引脚被置于输入上拉或下拉模式:PA15:JTDI置于上拉模式PA14:JTCK置于下拉模式PA13:JTMS置于上拉模式PB4: JNTRST置于上拉模式当作为输出配置时,写到输出数据寄存器上的值(GPIOx_ODR)输出到相应的I/O引脚。可以以推挽模式或开漏模式(当输出0时,只有N-MOS被打开)使用输出驱动器。输入数据寄存器(GPIOx_IDR)在每个APB2时钟周期捕捉I/O引脚上的数据。所有GPIO引脚有一个内部弱上拉和弱下拉,当配置为输入时,它们可以被激活也可以被断开。当对GPIOx_ODR的个别位编程时,软件不需要禁止中断:在单次APB2写操作里,可以只更改一个或多个位。这是通过对“置位/复位寄存器”(GPIOx_BSRR,复位是 GPIOx_BRR)中想要更改的位写1来实现的。没被选择的位将不被更改。复用功能(AF)使用默认复用功能前必须对端口位配置寄存器编程。对于复用的输入功能,端口必须配置成输入模式(浮空、上拉或下拉)且输入管脚必须由外部驱动注意:也可以通过软件来模拟复用功能输入管脚,这种模拟可以通过对GPIO控制器编程来实现。此时,端口应当被设置为复用功能输出模式。显然,这时相应的管脚不再由外部驱动,而是通过GPIO控制器由软件来驱动。对于复用输出功能,端口必须配置成复用功能输出模式(推挽或开漏)。对于双向复用功能,端口位必须配置复用功能输出模式(推挽或开漏)。这时,输入驱动器被配置成浮空输入模式。如果把端口配置成复用输出功能,则引脚和输出寄存器断开,并和片上外设的输出信号连接。如果软件把一个GPIO脚配置成复用输出功能,但是外设没有被激活,它的输出将不确定。软件重新映射I/O复用功能为了使不同器件封装的外设I/O功能的数量达到最优,可以把一些复用功能重新映射到其他一些脚上。这可以通过软件配置相应的寄存器来完成(参考AFIO寄存器描述)。这时,复用功能就不再映射到它们的原始引脚上了。输入配置当I/O端口配置为输入时:输出缓冲器被禁止施密特触发输入被激活根据输入配置(上拉,下拉或浮动)的不同,弱上拉和下拉电阻被连接出现在I/O脚上的数据在每个APB2时钟被采样到输入数据寄存器对输入数据寄存器的读访问可得到I/O状态3.向量中断及外部中断输入ARM7TDMI内核具有两个中断输入,分别为IRQ中断和FIQ中断。向量中断控制器(VIC)负责管理芯片的中断源,最多可以管理32个中断输入请求。程序状态寄存器CPSR与VIC的关系ARM内核通过CPSR来监视和控制内部的操作,CPSR中的“I”位和“F”位分别用来控制IRQ模式和FIQ模式的使能。当I = 1时,禁止IRQ中断当I = 0时,使能IRQ中断中断分类中断输入请求可以在VIC中被设置为以下三类:FIQ中断:具有最高优先级;向量IRQ中断:具有中等优先级;非向量IRQ中断:具有最低优先级;LPC2000系列ARM具有4路外部中断,可以设置为2种类型:边沿触发:上升沿触发下降沿触发电平触发:高电平触发低电平触发1.边沿触发中断.下降沿触发类型中断的请求和清除时序。2.电平触发中断.低电平触发类型中断的请求和清除时序。外部中断源LPC2000系列微控制器几乎所有的外设部件都可以产生中断。其中外部中断含有4个独立的中断输入。寄存器中断信号波形与设置方式 外部中断与VIC的关系外部中断0位于VIC通道14,中断选择寄存器VICIntSelect14用来选择通道14的中断类型: 当VICIntSelect14 = 0时,通道14分配为IRQ中断 当VICIntSelect14 = 1时,通道14分配为FIQ中断外部中断应用示例/初始化EINT0为电平中断PINSEL1 = (PINSEL1&0xFFFFFFFC) | 0x01;EXTMODE = EXTMODE & 0x0E;/初始化EINT0为下降沿中断PINSEL1 = (PINSEL1&0xFFFFFFFC) | 0x01;EXTMODE = EXTMODE | 0x01;EXTPOLAR = EXTPOLAR & 0x0E;/清除所有外部中断标志EXTINT = 0x0F;4.定时器1) 描述定时器0 和定时器1 除了外设基地址不相同以外,其它都相同。定时器对外设时钟(pclk)周期进行计数,根据4 个匹配寄存器的设定,可设置为匹配(即到达匹配寄存器指定的定时值)时产生中断或执行其它动作。它还包括4 个捕获输入,用于在输入信号发生跳变时捕获定时器值,并可选择产生中断。2) 结构 定时器 0 和定时器1 的方框图,3) 特性带可编程32 位预分频器的32 位定时器/计数器具有多达4 路捕获通道。当输入信号跳变时可取得定时器的瞬时值。也可选择使捕获事件产生中断。4 个32 位匹配寄存器,匹配时的动作有如下3 种:匹配时定时器继续工作,可选择产生中断匹配时停止定时器,可选择产生中断匹配时复位定时器,可选择产生中断4 个对应于匹配寄存器的外部输出,匹配时的输出有如下4 种:匹配时设置为低电平匹配时设置为高电平匹配时翻转匹配时无动作4) 管脚描述5) 定时器0 初始化示例void Time0Init(void) T0TC = 0; / 定时器设置为0T0PR = 0; / 时钟不分频T0MCR = 0x03; / 设置T0MR0 匹配后复位T0TC,并产生中断标志T0MR0 = Fpclk/10; / 设置0.1S 匹配值T0TCR = 0x01; / 启动定时器05.SPI SPI(Serial Peripheral Interface串行外设接口)总线系统是一种同步串行外设接口,允许MCU 与各种外围设备以串行方式进行通信、数据交换。外围设备包FLASHRAM、A/D转换器、网络控制器、MCU 等。SPI 系统可直接与各个厂家生产的多种标准外围器件直接接口,一般使用4 条线:串行时钟线SCK、主机输入/从机输出数据线MISO、主机输出/从机输入数据线MOSI 和低电平有效的从机选择线SSEL(有的SPI 接口芯片带有中断信号线INT,有的SPI 接口芯片没有主机输出/从机输入数据线MOSI)。所以,SPI 系统总线一共只需35 位数据线和控制线即可实现与具有SPI 的各种I/O 器件接口。各信号含义如下: SCK 串行时钟,用于同步SPI 接口间数据传输的时钟信号。该时钟总是由主机驱动并且从机接收。 SSEL 从机选择,SPI 从机选择信号是一个低有效信号,用于指示被选择参与数据传输的从机。每个从机都有各自特定的从机选择输入信号。在数据处理之前,SSEL 必须为低电平并在整个处理过程中保持低电平。如果在数据传输中SSEL 信号变为高电平,传输中止。 MISO 主入从出,该信号是一个单向的信号,它将数据从从机传输到主机。当器件为从机时,串行数据从该端口输出;当器件为主机时,串行数据从该端口输入;当从机没有被选择时,将该信号驱动为高阻态。 MOSI 主出从入,该信号是一个单向的信号,它将数据从主机传输到从机。当器件为主机时,串行数据从该端口输出;当器件为从机时,串行数据从该端口输入。结构:寄存器:SPI数据寄存器SPDR功能描述复位值7:0数据SPI双向数据0SPI中断寄存器SPCCR功能描述复位值0SPI中断SPI中断标志。向该位写入1清零。注:当SPIE位置“1”,并且SPIF和MODF位种至少有一位为1时,该位置位。但是只有当SPI中断位置位并且SPI中断在VIC中被使能,SPI中断才能由中断处理程序处理。07:1保留用户程序不要向这些位写入1NA名称描述访问复位值SPI0名称SPI1名称SPCRSPI控制寄存器。该寄存器控制SPI的操作模式。读写0S0SPCRS1SPCRSPSRSPI状态寄存器。该寄存器显示SPI的状态。只读0S0SPSRS1SPSRSPDRSPI数据寄存器。该双向寄存器为SPI提供发送和接收的数据。发送数据通过写该寄存器提供。SPI接收的数据可以从该寄存器读出。读写0S0SPDRS1SPDRSPCCRSPI时钟计数寄存器。该寄存器控制主机SCK的频率。读写0S0SPCCRS0SPCCRSPINTSPI中断标志寄存器。该寄存器包含读写0S0SPINTS0SPINT驱动程序设计及示例代码:#define MSTR (15)#define CPOL (14)#define CPHA (13)#define LSBF (13)#define SPI_MODE (MSTR | CPOL)/*初始化SPI接口,设置为主机*/Void MSpiIni(uint8 fdiv)If(fdiv400000) fi2c = 400000;PINSEL0 = (PINSEL0&0xFFFFFF0F) | 0x50; / 设置I2C 控制口有效I2SCLH = (Fpclk/fi2c + 1) / 2; / 设置I2C 时钟为fi2cI2SCLL = (Fpclk/fi2c) / 2;I2CONCLR = 0x2C;I2CONSET = 0x40; / 使能主I2C/* 设置I2C 中断允许 */VICIntSelect = 0x00000000; / 设置所有通道为IRQ 中断VICVectCntl0 = 0x29; / I2C 通道分配到IRQ slot 0,即优先级最高VICVectAddr0 = (int)IRQ_I2C; / 设置I2C 中断向量地址VICIntEnable = 0x0200; / 使能I2C 中断(6)从模式I2C 的初始化void I2C_SlavInit(uint8 adr) PINSEL0 = (PINSEL0&0xFFFFFF0F) | 0x50; / 设置I2C 控制口有效I2ADR = adr&0xFE; / 设置从机地址I2CONCLR = 0x28;I2CONSET = 0x44; / I2C 配置为从机模式/* 设置I2C 中断允许 */VICIntSelect = 0x00000000; / 设置所有通道为IRQ 中断VICVectCntl0 = 0x29; / I2C 通道分配到IRQ slot 0,即优先级最高VICVectAddr0 = (int)IRQ_I2C; / 设置I2C 中断向量地址VICIntEnable = 0x0200; / 使能I2C 中断7.UART 通用异步收发传输器(Universal Asynchronous Receiver/Transmitter),通常称作UART,是一种异步收发传输器,是电脑硬件的一部分。将资料由串行通信与并行通信间作传输转换,作为并行输入成为串行输出的芯片,通常集成于其他通讯接口的连结上。具体实物表现为独立的模块化芯片,或作为集成于微处理器中的周边设备。一般和RS-232C规格的,类似Maxim的MAX232之类的标准信号幅度变换芯片进行搭配,作为连接外部设备的接口。在UART上追加同步方式的序列信号变换电路的产品,被称为USART(Universal Synchronous Asynchronous Receiver Transmitter)。UART是一种通用串行数据总线,用于异步通信。该总线双向通信,可以实现全双工传输和接收。在嵌入式设计中,UART用来主机与辅助设备通信,如汽车音响与外接AP之间的通信,与PC机通信包括与监控调试器和其它器件,如EEPROM通信计算机内部采用并行数据,不能直接把数据发到Modem,必须经过UART整理才能进行异步传输,其过程为:CPU先把准备写入串行设备的数据放到UART的寄存器(临时内存块)中,再通过FIFO(First Input First Output,先入先出队列)传送到串行设备,若是没有FIFO,信息将变得杂乱无章,不可能传送到Modem。 它是用于控制计算机与串行设备的芯片。有一点要注意的是,它提供了RS-232C数据终端设备接口,这样计算机就可以和调制解调器或其它使用RS-232C接口的串行设备通信了。作为接口的一部分,UART还提供以下功能:将由计算机内部传送过来的并行数据转换为输出的串行数据流。将计算机外部来的串行数据转换为字节,供计算机内部并行数据的器件使用。在输出的串行数据流中加入奇偶校验位,并对从外部接收的数据流进行奇偶校验。在输出数据流中加入启停标记,并从接收数据流中删除启停标记。处理由键盘或鼠标发出的中断信号(键盘和鼠标也是串行设备)。可以处理计算机与外部串行设备的同步管理问题。有一些比较高档的UART还提供输入输出数据的缓冲区,比较新的UART是16550,它可以在计算机需要处理数据前在其缓冲区内存储16字节数据,而通常的UART是8250。如果您购买一个内置的调制解调器,此调制解调器内部通常就会有16550 UART。UART作为异步串口通信协议的一种,工作原理是将传输数据的每个字符一位接一位地传输。其中各位的意义如下:起始位:先发出一个逻辑”0”的信号,表示传输字符的开始。资料位:紧接着起始位之后。资料位的个数可以是4、5、6、7、8等,构成一个字符。通常采用ASCII码。从最低位开始传送,靠时钟定位。奇偶校验位:资料位加上这一位后,使得“1”的位数应为偶数(偶校验)或奇数(奇校验),以此来校验资料传送的正确性。停止位:它是一个字符数据的结束标志。可以是1位、1.5位、2位的高电平。 由于数据是在传输线上定时的,并且每一个设备有其自己的时钟,很可能在通信中两台设备间出现了小小的不同步。因此停止位不仅仅是表示传输的结束,并且提供计算机校正时钟同步的机会。适用于停止位的位数越多,不同时钟同步的容忍程度越大,但是数据传输率同时也越慢。3 空闲位:处于逻辑“1”状态,表示当前线路上没有资料传送。波特率:是衡量资料传送速率的指标。表示每秒钟传送的符号数(symbol)。一个符号代表的信息量(比特数)与符号的阶数有关。例如资料传送速率为120字符/秒,传输使用256阶符号,每个符号代表8bit,则波特率就是120baud,比特率是120*8=960bit/s。这两者的概念很容易搞错。8.A/D 随着数字技术,特别是信息技术的飞速发展与普及,在现代控制、通信及检测等领域,为了提高系统的性能指标,对信号的处理广泛采用了数字计算机技术。由于系统的实际对象往往都是一些模拟量(如温度、压力、位移、图像等),要使计算机或数字仪表能识别、处理这些信号,必须首先将这些模拟信号转换成数字信号;而经计算机分析、处理后输出的数字量也往往需要将其转换为相应模拟信号才能为执行机构所接受。这样,就需要一种能在模拟信号与数字信号之间起桥梁作用的电路-模数和数模转换器。将模拟信号转换成数字信号的电路,称为模数转换器(简称A/D转换器或ADC,Analog to Digital Converter);将数字信号转换为模拟信号的电路称为数模转换器(简称D/A转换器或DAC,Digital to Analog Converter);A/D转换器和D/A转换器已成为信息系统中不可缺少的接口电路。为确保系统处理结果的精确度,A/D转换器和D/A转换器必须具有足够的转换精度;如果要实现快速变化信号的实时控制与检测,A/D与D/A转换器还要求具有较高的转换速度。转换精度与转换速度是衡量A/D与D/A转换器的重要技术指标。随着集成技术的发展,现已研制和生产出许多单片的和混合集成型的A/D和D/A转换器,它们具有愈来愈先进的技术指标。引脚描述寄存器描述9.WDTWatchdog Timer 中文名看门狗。是一个定时器电路,一般有一个输入,叫喂狗,一个输出到MCU的RST端,MCU正常工作的时候,每隔一段时间输出一个信号到喂狗端,给 WDT 清零,如果超过规定的时间不喂狗,(一般在程序跑飞时),WDT 定时超过,就会给出一个复位信号到MCU,使MCU复位. 防止MCU死机. 看门狗的作用就是防止程序发生死循环,或者说程序跑飞。工作原理:在系统运行以后也就启动了看门狗的计数器,看门狗就开始自动计数,如果到了一定的时间还不去清看门狗,那么看门狗计数器就会溢出从而引起看门狗中断,造成系统复位。所以在使用有看门狗的芯片时要注意清看门狗。硬件看门狗是利用了一个定时器,来监控主程序的运行,也就是说在主程序的运行过程中,我们要在定时时间到之前对定时器进行复位如果出现死循环,或者说 PC指针不能回来。那么定时时间到后就会使单片机复位。软件看门狗技术的原理和这差不多,只不过是用软件的方法实现,我们还是以51系列来讲,我们知道在51单片机中有两个定时器,我们就可以用这两个定时器来对主程序的运行进行监控。我们可以对T0设定一定的定时时间,当产生定时中断的时候对一个变量进行赋值,而这个变量在主程序运行的开始已经有了一个初值,在这里我们要设定的定时值要小于主程序的运行时间,这样在主程序的尾部对变量的值进行判断,如果值发生了预期的变化,就说明T0中断正常,如果没有发生变化则使程序复位。对于T1我们用来监控主程序的运行,我们给T1设定一定的定时时间,在主程序中对其进行复位,如果不能在一定的时间里对其进行复位,T1 的定时中断就会使单片机复位。在这里T1的定时时间要设的大于主程序的运行时间,给主程序留有一定的的裕量。而T1的中断正常与否我们再由T0定时中断子程序来监视。这样就够成了一个循环,T0监视T1,T1监视主程序,主程序又来监视T0,从而保证系统的稳定运行。51 系列有专门的看门狗定时器,对系统频率进行分频计数,定时器溢出时,将引起复位.看门狗可设定溢出率,也可单独用来作为定时器使用.看门狗使用注意:大多数51 系列单片机都有看门狗,当看门狗没有被定时清零时,将引起复位。这可防止程序跑飞。设计者必须清楚看门狗的溢出时间以决定在合适的时候,清看门狗。清看门狗也不能太过频繁否则会造成资源浪费。程序正常运行时,软件每隔一定的时间(小于定时器的溢出周期)给定时器置数,即可预防溢出中断而引起的误复位。看门狗运用:看门狗是恢复系统的正常运行及有效的监视管理器(具有锁定
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年荡秋千要当心幼儿园课件
- 2026年幼儿园保育员预防性卫生消毒培训
- 2026年防中暑的措施有哪些幼儿园
- 邢台市巨鹿县2027届数学六上期末联考试题含解析
- 吉林省长春市二道区2026年数学八年级第一学期期末综合测试试题含解析
- 安徽省宿州市宿城一中学2026年七上数学期末联考模拟试题含解析
- 山东省济宁市泗水县2026年六上数学期末监测试题含解析
- 广东省高州市九校2026年数学七年级第一学期期末经典试题含解析
- 保山市隆阳区2026年六年级数学第一学期期末复习检测模拟试题含解析
- 新疆师范大附属中学2026年物理八上期末监测试题含解析
- 2026年注册安全工程师考试《安全管理》冲刺押题试卷(含解析)
- 2026-2030中国碳化硅(SiC)半导体器件市场发展现状及未来供需平衡预测报告
- 癫痫患者发作急救流程及日常护理建议
- 2026年国家电投招聘笔试参考题库含答案解析
- 防范银狐木马病毒与补贴诈骗信息课件
- 2025年全国青少年信息素养大赛C++算法创意实践挑战赛(小学组-复赛)真题(含答案)
- 2026年河北省工人技师公共基础考试试题及答案
- 六化建设培训
- TSG08-2026《特种设备使用管理规则》全面解读课件
- 经尿道前列腺钬激光剜除术后护理查房
- 钦州市灵山县三隆镇横岗岭村玻璃用砂岩环评报告
评论
0/150
提交评论