lpc1768的rit使用】的更多相关文章

LPC1768在系统滴答定时器和通用定时器之外还引入了一个定时器,叫做重复定时器RIT,该定时器只能用于定时操作,带有一个中断,我个人的感觉,这似乎是为了延时函数设计的一个定时器 那么使用该定时器时遵循什么流程? 第一,打开时钟 第二,我们要确定定时器从pclk分频数值,这要靠另外一个寄存器 第三,先关闭定时器 第四 设置寄存器比较值 第五 清空或者屏蔽一些特定的比较屏蔽位 最后打开中断,启动定时器 #define RIT_INT_POSITION 0 #define RIT_ENCLR_POS…
一.背景 USB在持续通信几十万次后,会出现USB IN中断丢失几次的情况,分析是中断优先级不够高,导 致USB中断在排队,然而排队还未完成,又有新的USB中断发生,致使其中断丢失.LPC1769的所有中 断默认为最高优先级"(数字越低,优先级越高),因此能想到的第一个解决办法既是降低除USB外所 有中断的优先级. 本篇即对LPC1769的中断优先级及优先级分组做个概述. 附:LPC1768/LPC1769除支持最高主频不同外,其他暂时没发现有什么差别. 二.正文 首先,说说中断优先级,所有中断…
一.背景: 使用LPC1769来做CAN的收发,在此对使用LPC1769的CAN控制器进行收发做个总结和记录,以备下 次开发快速上手使用. 附:LPC1768/1769除了支持最高频率不同以外,其它基本上一致. 二.正文: 先贴一张LPC1769 CAN控制器的方框图: . 由上图可见,整个CAN控制器一头是CPU,另一头是CAN收发器: CAN收发器负责CAN数据与CAN网络的通信.CAN内核模块解析和封装要发送到CAN收发器以及从CAN 收发器发过来的数据,此处CAN内核工作由硬件自行完成.…
LPC1768芯片带有USB设备控制器,前面写的文章都是在说比较简单的设备驱动,今天来说复杂一点的 首先是硬件层的配置 #ifndef __USBHW_H__ #define __USBHW_H__ #include "debugSerial.h" #include "usbreg.h" #include "usb.h" #include "usbuser.h" #include "usbcfg.h" #i…
IIS是飞利浦公司定义的一种用于音频传输的数字总线,LPC1768支持该总线, I2S接口为一条3线串行总线,含有1根数据线.1根时钟线和1根字选择信号线.基本的I2S连接具有一个主机(其总是为主机)和一个从机.LPC1700系列Cortex—M3微控制器的I2S提供了彼此独立的发送和接收通道,每个通道都可作为主机或从机. 使用代码如下 void IISInit(void) { //打开IIS时钟 LPC_SC->PCONP |= 1<<27; LPC_SC->PCLKSEL1 &…
LPC1768有三路IIC,其中IIC0支持高速模式和plus模式,另外两路是普通IIC,使用IIC的过程如下 首先依然是打开IIC时钟,同时打开GPIO时钟 然后配置引脚为IIC功能 另外,因为iic0支持plus结构,所以gpio控制的时候还有这个寄存器需要设置 接下来设置IIC的高低电平占空比 最后使能接口就可以使用了 初始化示例代码如下 void IIC0Init(u32 baud) { u32 t = (SystemCoreClock/4)/baud; //打开IIC时钟 LPC_SC…
Lpc1768内置了四个串口通讯模块,都是异步通讯模块,其中,串口0/2/3是普通串口通讯,串口1与 UART0/2/3 基本相同,只是增加了一个 Modem 接口和 RS-486/EIA-486 模 式,不支持 IrDA,我们今天以串口0来演示串口的使用. 首先,使用串口0要打开串口0的时钟 然后要配置相应的输入输出IO口为串口通讯功能 然后,要控制串口0的时钟源,1768的大部分外设时钟都可以选择从cpu时钟中进行分频 接着,需要设置串口的通讯位,停止位以及波特率等 通过该寄存器能够设置波特…
LPC1768的外部中断严格来说只有四个,分别是EINT0,EINT1,EINT2,EINT3,技术手册上有如下说明 控制这四个外部中断靠以下寄存器 这三个寄存器的0 1 2 3位分别代表中断的0 1 2 3,EXTINT寄存器表示中断是否发生,在发生中断的时候该寄存器会置位,可以通过写1清零,EXTMODE寄存器表示触发模式,有电平触发和变化沿触发两种,EXTPOLAR与EXTMODE,在电平触发模式下,决定高电平还是低电平触发,在变化沿触发的情况下决定上升沿还是下降沿触发 这三个中断分别相关…
LPC1788通用IO口的控制包含了一些基本的组件,比如设置推挽输出,开漏输出,上拉电阻等,我们今天来看看. 首先使用GPIO要打开GPIO的系统时钟   LPC_SC->PCONP |= (1<<15);//gpio 时钟 然后需要选择我们选定引脚的功能,有些引脚有多个功能,通过寄存器可以从中选择一个   之后是设置相关引脚的外部电阻状态pinmode寄存器   然后设置开漏方式pinmode_od 到这里,引脚的基本功能就OK了,此时要操作GPIO还需要设置几个东西 输入输出方向FI…
在合并Region的过程中出现永久RIT怎么办?笔者在生产环境中就遇到过这种情况,在批量合并Region的过程中,出现了永久MERGING_NEW的情况,虽然这种情况不会影响现有集群的正常的服务能力,但是如果集群有某个节点发生重启,那么可能此时该RegionServer上的Region是没法均衡的.因为在RIT状态时,HBase是不会执行Region负载均衡的,即使手动执行balancer命令也是无效的. 如果不解决这种RIT情况,那么后续有HBase节点相继重启,这样会导致整个集群的Regio…