📄 lpc213xdef.h
字号:
#define AMRDOM 3//为1 时,日期(月)值不与报警寄存器比较。
#define AMRDOW 4//为1 时,星期值不与报警寄存器比较。
#define AMRDOY 5//为1 时,日期(年)值不与报警寄存器比较。
#define AMRMON 6//为1 时,月值不与报警寄存器比较。
#define AMRYEAR 7//为1 时,年值不与报警寄存器比较。
/*---------------------------------------
TX中断寄存器TXIR位定义
----------------------------------------*/
#define MR0 0//匹配通道0中断标志
#define MR1 1//匹配通道1中断标志
#define MR2 2//匹配通道2中断标志
#define MR3 3//匹配通道3中断标志
#define CR0 4//捕获通道0事件中断标志
#define CR1 5//捕获通道0事件中断标志
#define CR2 6//捕获通道0事件中断标志
#define CR3 7//捕获通道0事件中断标志
/*---------------------------------------
UARTx标识中断寄存器UXIIR
----------------------------------------*/
#define IIR0 0//中断挂起 0:至少有1个中断被挂起(挂起的中断可通过UXIER3:1确定)
#define IIR1 1//中断标识1
#define IIR2 2//中断标识2
#define IIR3 3//中断标识3
/*---------------------------------------
UARTx线状态寄存器UXLSR
----------------------------------------*/
#define RDR 0//接收数据就绪
#define OE 1//溢出错误
#define PE 2//奇偶错误
#define FE 3//帧错误
#define BI 4//间隔中断
#define THRE 5//发送保持寄存器空
#define TEMT 6//发送器空
#define RXFE 7//Rx FIFO错误
/*--------------------------------------------
I2C控制置位寄存器I2CONSET位定义
---------------------------------------------*/
#define AA 2//应答标志。
#define SI 3//I2C中断标志。
#define STO 4//停止标志。
#define STA 5//起始标志。
#define I2EN 6//I2C接口使能。
/*--------------------------------------------
I2C控制清零寄存器I2CONCLR位定义
---------------------------------------------*/
#define AAC 2//应答标志。
#define SIC 3//I2C中断标志。
#define STAC 5//起始标志。
#define I2ENC 6//I2C接口使能。
/*---------------------------------------
I2C运行状态代码定义
----------------------------------------*/
#define I2C_START 0x08//已发送起始条件
#define I2C_REP_START 0x10//已发送重复起始条件
/* Master Transmitter */ //主发送器模式
#define I2C_MT_SLA_ACK 0x18//已发送SLA+W,且已接收ACK
#define I2C_MT_SLA_NACK 0x20//已发送SLA+W,且未接收ACK
#define I2C_MT_DATA_ACK 0x28//已发送I2DAT 中的数据字节,且已接收ACK
#define I2C_MT_DATA_NACK 0x30//已发送I2DAT 中的数据字节,且未接收ACK
#define I2C_MT_ARB_LOST 0x38//在SLA+R/W或数据字节丢失仲裁
/* Master Receiver */ //主接收器模式
#define I2C_MR_ARB_LOST 0x38//在非ACK位中丢失仲裁
#define I2C_MR_SLA_ACK 0x40//已发送SLA+R,且已接收ACK
#define I2C_MR_SLA_NACK 0x48//已发送SLA+R,且未接收ACK
#define I2C_MR_DATA_ACK 0x50//已接受数据字节,且已返回ACK
#define I2C_MR_DATA_NACK 0x58//已接受数据字节,且未返回ACK
/* Slave Transmitter */ //从发送器模式
#define I2C_ST_SLA_ACK 0xA8//已接收自身SLA+R,且已返回ACK
#define I2C_ST_ARB_LOST_SLA_ACK 0xB0//主控器时在SLA+R/W中丢失仲裁,已接收自身SLA+R,且已返回ACK
#define I2C_ST_DATA_ACK 0xB8//已发送I2DAT 中的数据字节,且已返回ACK
#define I2C_ST_DATA_NACK 0xC0//已发送I2DAT 中的数据字节,且未返回ACK
#define I2C_ST_LAST_DATA 0xC8//已发送I2DAT 中最后的数据字节(AA = 0),且已返回ACK
/* Slave Receiver */ //从接收器模式
#define I2C_SR_SLA_ACK 0x60//已接收自身SLA+W,且已返回ACK
#define I2C_SR_ARB_LOST_SLA_ACK 0x68//主控器时在SLA+W中丢失仲裁,已接收自身SLA+W,且已返回ACK
#define I2C_SR_GCALL_ACK 0x70//已接收通用调用地址(00H),且已返回ACK
#define I2C_SR_ARB_LOST_GCALL_ACK 0x78//主控器时在SLA+R/W中丢失仲裁,已接收通用调用地址,且已返回ACK
#define I2C_SR_DATA_ACK 0x80//前一次寻址使用自身从地址,已接收数据字节,且已返回ACK
#define I2C_SR_DATA_NACK 0x88//前一次寻址使用自身从地址,已接收数据字节,且未返回ACK
#define I2C_SR_GCALL_DATA_ACK 0x90//前一次寻址使用通用调用地址,已接收数据字节,且已返回ACK
#define I2C_SR_GCALL_DATA_NACK 0x98//前一次寻址使用通用调用地址,已接收数据字节,且未返回ACK
#define I2C_SR_STOP 0xA0//当使用SLV/TRX或SLV/TRX静态寻址时接收到停止条件或重复的起始条件
/* Misc */ //两种特殊状态
#define I2C_NO_INFO 0xF8//无可用的相关状态信息,SI = 0
#define I2C_BUS_ERROR 0x00//由于非法的起始或停止条件,在MST或选择的从收模式中出现总线错误。当外部干扰使I2C模块进入一个未定义的状态时,也会出现00H状态
/*-------------------------------------------
PWM匹配控制寄存器PWMMCR位定义
--------------------------------------------*/
#define PWMMCRI0 0//中断
#define PWMMCRR0 1//复位
#define PWMMCRS0 2//停止
#define PWMMCRI1 3//中断
#define PWMMCRR1 4//复位
#define PWMMCRS1 5//停止
#define PWMMCRI2 6//中断
#define PWMMCRR2 7//复位
#define PWMMCRS2 8//停止
#define PWMMCRI3 9//中断
#define PWMMCRR3 10//复位
#define PWMMCRS3 11//停止
#define PWMMCRI4 12//中断
#define PWMMCRR4 13//复位
#define PWMMCRS4 14//停止
#define PWMMCRI5 15//中断
#define PWMMCRR5 16//复位
#define PWMMCRS5 17//停止
#define PWMMCRI6 18//中断
#define PWMMCRR6 19//复位
#define PWMMCRS6 20//停止
/*---------------------------------------
PWM控制寄存器PWMPCR位定义
----------------------------------------*/
#define PWMSEL1 1//保留
#define PWMSEL2 2//0:PWM2选择单边沿控制模式,1:PWM2选择双边沿控制模式
#define PWMSEL3 3//0:PWM3选择单边沿控制模式,1:PWM3选择双边沿控制模式
#define PWMSEL4 4//0:PWM4选择单边沿控制模式,1:PWM4选择双边沿控制模式
#define PWMSEL5 5//0:PWM5选择单边沿控制模式,1:PWM5选择双边沿控制模式
#define PWMSEL6 6//0:PWM6选择单边沿控制模式,1:PWM6选择双边沿控制模式
#define PWMENA1 9//0:禁止PWM1输出,1:使能PWM1输出
#define PWMENA2 10//0:禁止PWM2输出,1:使能PWM2输出
#define PWMENA3 11//0:禁止PWM3输出,1:使能PWM3输出
#define PWMENA4 12//0:禁止PWM4输出,1:使能PWM4输出
#define PWMENA5 13//0:禁止PWM5输出,1:使能PWM5输出
#define PWMENA6 14//0:禁止PWM6输出,1:使能PWM6输出
/*-------------------------------------------
PWM锁存使能寄存器PWMLER位定义
--------------------------------------------*/
#define PWMLER0 0//使能PWM匹配0锁存
#define PWMLER1 1//使能PWM匹配1锁存
#define PWMLER2 2//使能PWM匹配2锁存
#define PWMLER3 3//使能PWM匹配3锁存
#define PWMLER4 4//使能PWM匹配4锁存
#define PWMLER5 5//使能PWM匹配5锁存
#define PWMLER6 6//使能PWM匹配6锁存
/*---------------------------------------
A/D控制寄存器ADCR位定义
----------------------------------------*/
#define ADSEL 0//7:0=0000000 输入通道选择
#define ADCLKDIV 8//15:8=00000000 时钟分频
#define ADBURST 16//突发模式
#define ADCLKS 17//19:17=000 突发模式时钟选择
#define ADPDN 21//掉电
#define ADTEST 22//23:22=00 器件测试
#define ADSTART 24//26:24=000 启动控制
#define ADEDGE 27//边沿选择
/*-----------------------------------------
A/D 数据寄存器ADDR位定义
-------------------------------------------*/
#define ADV_Vref 6//15:6
#define ADCHN 24//26:24 LS位的转换通道
#define ADOVERUN 30//
#define ADDONE 31//A/D转换结束时该位置位。该位在ADDR被读出和ADCR被写入时清零。
/*-----------------------------------------
复位源识别寄存器RSID位定义
------------------------------------------*/
#define POR 0//RSID.0//POR信号有效时该位置位,并清除RSID寄存器的其它位
#define EXTR 1//RSID.1//RESET信号有效时该位置位
#define WDTR 2//RSID.2//当看门狗定时器溢出和看门狗方式寄存器的WDTRESET位为1时,该位置位。
//该位可被其它任何一个复位源清除。
#define BODR 3//RSID.3//当3.3V的电源降到低于2.6V时该位置位
/*-----------------------------------------
SSP状态寄存器S0SPSR位定义
------------------------------------------*/
#define SSPTFE 0//发送FIFO 空。发送FIFO 为空时该位为1,反之为0。
#define SSPTNF 1//发送FIFO 未满。Tx FIFO 满时该位为0,反之为1。
#define SSPRNE 2//接收FIFO 不为空。接收FIFO 为空时该位为0,反之为1。
#define SSPRFF 3//接收FIFO 满。接收FIFO 满时该位为1,反之为0。
#define SSPBSY 4//忙。SSP 控制器空闲、
/*-----------------------------------------
SPI控制寄存器S0SPCR位定义
------------------------------------------*/
#define SPICPHA 3//时钟相位控制
#define SPICPOL 4//时钟极性控制
#define SPIMSTR 5//主模式选择。为1时,SPI处于主模式。为0时,SPI处于从模式。
#define SPILSBF 6//传输的每个字节的移动方向.为0 时,SPI数据传输MSB(位7)在先
#define SPISPIE 7//中断使能。为1时,每次SPIF或MODF置位时都会产生硬件中断
/*-----------------------------------------
SPI 状态寄存器S0SPSR位定义
------------------------------------------*/
#define SPIABRT 3//从机中止。该位为1 时表示发生了从机中止。当读取该寄存器时,该位清零
#define SPIMODF 4//模式错误。为1 时表示发生了模式错误。
#define SPIROVR 5//读溢出。为1 时表示发生了读溢出。当读取该寄存器时,该位清零。
#define SPIWCOL 6//写冲突。为1 时表示发生了写冲突
#define SPISPIF 7//SPI 传输完成标志。为1 时表示一次SPI 数据传输完成。
/*-----------------------------------------
功率控制寄存器PCON位定义
------------------------------------------*/
#define IDL 0//空闲模式
#define PD 1//掉电模式
#define PDBOD 2//空闲模式
/*-------------------------------------------
外设功率控制寄存器PCONP位定义
--------------------------------------------*/
#define PCTIM0 1//定时器0使能
#define PCTIM1 2//定时器1使能
#define PCURT0 3//UART0使能
#define PCURT1 4//UART1使能
#define PCPWM0 5//PWM0使能
#define PCI2C0 7//I2C0接口使能
#define PCSPI0 8//SPI接口使能
#define PCRTC 9//RTC使能
#define PCSPI1 10//SSP接口使能
#define PCAD0 12//A/D转换器0使能
#define PCI2C1 19//I2C1接口使能
#define PCAD1 20//A/D转换器1使能
/*------------------------------------------
看门狗模式寄存器WDMOD位定义
-------------------------------------------*/
#define WDEN 0//看门狗中断使能位(只能置位)
#define WDRESET 1//看门狗复位使能位(只能置位)
#define WDTOF 2//看门狗超时标志
#define WDINT 3//看门狗中断标志(只读)
/*-----------------------------------------
PLL 控制寄存器位定义
------------------------------------------*/
#define PLLEN 0//PLL 使能
#define PLLLK 1//PLL 连接
/*-----------------------------------------
PLL 状态寄存器位定义
------------------------------------------*/
#define PLLE 8//PLL 使能位
#define PLLC 9//PLL 连接位
#define PLOCK 10//PLL 锁定状态
/*--------------------------------------------
外部中断标志寄存器EXTINT位定义
---------------------------------------------*/
#define EINT0 0//EXTINT.0//写'1'清除EINT0中断标志
#define EINT1 1//EXTINT.1//写'1'清除EINT1中断标志
#define EINT2 2//EXTINT.2//写'1'清除EINT2中断标志
#define EINT3 3//EXTINT.3//写'1'清除EINT3中断标志
/*--------------------------------------------
外部中断方式寄存器EXTMODE位定义
---------------------------------------------*/
#define EXTMODE0 0//EXTMODE.0//该位为0时,EINT0使用电平激活;该位为1时,EINT0使用边沿激活。
#define EXTMODE1 1//EXTMODE.1//该位为0时,EINT1使用电平激活;该位为1时,EINT1使用边沿激活。
#define EXTMODE2 2//EXTMODE.2//该位为0时,EINT2使用电平激活;该位为1时,EINT2使用边沿激活。
#define EXTMODE3 3//EXTMODE.3//该位为0时,EINT3使用电平激活;该位为1时,EINT3使用边沿激活。
/*----------------------------------------------
外部中断极性寄存器EXTPOLAR位定义
-----------------------------------------------*/
#define EXTPOLAR0 0//EXTPOLAR.0//该位为0时,EINT0低电平或下降沿有效(由EXTMODE0决定)。
//该位为1时,EINT0高电平或上升沿有效(由EXTMODE0决定)。
#define EXTPOLAR1 1//EXTPOLAR.1//该位为0时,EINT1低电平或下降沿有效(由EXTMODE1决定)。
//该位为1时,EINT1高电平或上升沿有效(由EXTMODE1决定)。
#define EXTPOLAR2 2//EXTPOLAR.2//该位为0时,EINT2低电平或下降沿有效(由EXTMODE2决定)。
//该位为1时,EINT2高电平或上升沿有效(由EXTMODE2决定)。
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -