11.8.4. 寄存器定义

寄存器列表

寄存器名

偏移地址

寄存器功能描述

CIR_MCR

0x00

CIR模块控制寄存器

CIR_INTR

0x04

CIR模块中断控制寄存器

CIR_INTEN

0x08

CIR模块中断控制寄存器

CIR_TXSTAT

0x0C

CIR发送状态寄存器

CIR_RXSTAT

0x10

CIR接收状态寄存器

CIR_RXCLK

0x14

CIR接收采样时钟寄存器

CIR_RX_THRES

0x18

CIR接收阈值配置寄存器

CIR_RX_CFG

0x1C

CIR接收配置寄存器

CIR_TX_CFG

0x20

CIR发送配置寄存器

CIR_TIDC

0x24

CIR发送间隔时间寄存器

CIR_CARR_CFG

0x2C

CIR载波配置寄存器

CIR_RXFIFO

0x30

CIR接收缓存寄存器

CIR_TXFIFO

0x80

CIR发送缓存寄存器

CIR_VERSION

0xFFC

CIR模块版本号

寄存器描述

11.8.4.1. 0x000 CIR_MCR

默认值:0x00000000

CIR控制寄存器(CIR_MCR)

位域

类型

默认值

描述

31:18

-

-

-

17

WAC

0x0

TX_FIFO_CLR:TX FIFO CLEAR,清TX FIFO
0x0:未使能
0x1:Clear Tx FIFO

16

WAC

0x0

RX_FIFO_CLR:RX FIFO CLEAR,清RX FIFO
0x0:未使能
0x1:Clear Rx FIFO

15:10

-

-

-

9

WAC

0x0

TX_STOP:Transmit Stop Control,发送停止控制,仅用于循环模式。
0x0:硬件发送完FIFO的数据后自动将该bit清0
0x1:循环发送停止。由开始到停止,FIFO中数据必须被发送完。

8

WAC

0x0

TX_START:Transmit Start Control,发送启动控制。在循环模式和
非循环模式都需要。
0x0:硬件发送完FIFO的数据后自动将该bit清0
0x1:发送开始。由开始到停止,FIFO中数据必须被发送完。在循环模式下,FIFO中的数据会
在一定的间隔时间IDC_THRES后反复发送,直到TX_STOP为1时才会在发送完当次命令后停止。

7:3

-

-

-

1

R/W

0x0

TX_EN:Transmitter Enable,发送器使能
0x0:未使能
0x1:使能

0

R/W

0x0

RX_EN:Receiver Enable,接收器使能
0x0:未使能
0x1:使能

11.8.4.2. 0x004 CIR_INTR

默认值:0x00000000

CIR中断寄存器(CIR_INTR)

位域

类型

默认值

描述

31:7

-

-

-

6

R/W1C

0x0

TXB_AVL _INT:TX FIFO Available Interrupt Flag,发送缓存可用中断
0x0:发送缓存不可用。
0x1:发送缓存可用。达到TXB_EMPTY_LEVEL时触发。

5

R/W1C

0x0

TXEND_INT:Transmit End Interrupt,发送结束中断
0x0:发送未完成。
0x1:发送完成。

4

R/W1C

0x0

TX_UNF_INT:Transmit FIFO Underflow Interrupt for Non-cyclical Pulse,
非循环发送下溢出中断
0x0:发送器FIFO 无下溢出。
0x1:发送器FIFO 下溢出。

3

-

-

-

2

R/W1C

0x0

RXB_AVL _INT:RX FIFO Available Interrupt Flag,接收缓存可用中断。
0x0:接收缓存不可用。
0x1:接收缓存可用。达到RXB_AVL_LEVEL时触发。

1

R/W1C

0x0

RX_END_INT:Receive End Interrupt,接收结束中断
0x0:接收未结束
0x1:接收结束

0

R/W1C

0x0

RX_OVF_INT:Receive Overflow Interrupt,接收缓存溢出中断
0x0:接收器FIFO未溢出
0x1:接收器FIFO溢出

11.8.4.3. 0x008 CIR_INTEN

默认值:0x00000063

CIR中断使能控制寄存器(CIR_INTEN)

位域

类型

默认值

描述

31:24

-

-

-

23:16

R/W

0x0

TXB_EMPTY_LEVEL:TX FIFO Empty Level,发送缓存空闲深度。达到该设置值
触发TXB_AVL_INT。

15:14

-

-

-

13:8

R/W

0x0

RXB_AVL _LEVEL:RX FIFO Available Level,接收缓存可用字节深度。达到该设置值
触发RXB_AVL_INT。

7

-

-

-

6

R/W

0x1

TXB_AVL _EN:TX FIFO Available Interrupt Enable,发送缓存可用中断使能

5

R/W

0x1

TXEND_EN:Transmit Ended Interrupt Enable,发送结束中断使能

4

R/W

0x0

TX_UNF_EN:Transmit FIFO Underflow Interrupt Enable for non-Cyclical Pulse,
非循环发送下溢出中断使能。

3

-

-

-

2

R/W

0x0

RXB_AVL_EN:RX FIFO Available Interrupt Enable,接收缓存可用中断使能

1

R/W

0x1

RXEND_EN:Receive Ended Interrupt Enable,接收结束中断使能

0

R/W

0x1

RX_OVF_EN:Receive Overflow Interrupt Enable,接收缓存溢出断使能

11.8.4.4. 0x00C CIR_TXSTAT

默认值:0x00000100

CIR发送状态寄存器(CIR_TXSTAT)

位域

类型

默认值

描述

31:12

-

-

-

11

RO

0x0

TX_STAT:Transmitter Status,发送器状态
0x0:Idle,空闲,当FIFO中所有数据被发送完时自动清0
0x1:Active,激活

10

RO

0x0

TX_FIFO_ERR:FIFO Error Flag,发送FIFO错误标志。
0x0:no error
0x1:error, such as overflow or underflow

9

RO

0x0

TX_FIFO_FULL:FIFO Full Flag,发送FIFO满标志。
0x0:not full
0x1:full

8

RO

0x1

TX_FIFO_EMPTY:TX FIFO Empty Flag,发送FIFO空标志。
0x0:not empty
0x1:empty

7

-

-

-

6:0

RO

0x7F

TX_FIFO_DLEN:TX FIFO Data Length,TX FIFO 当前有效数据量指示
0x00:发送缓存中还有1byte待发送
0x01:发送缓存中还有2byte待发送
… …
0x7F:发送缓存中还有128bytes待发送

11.8.4.5. 0x010 CIR_RXSTAT

默认值:0x00000100

CIR接收状态寄存器(CIR_RXSTAT)

位域

类型

默认值

描述

31:12

-

-

-

11

RO

0x0

RX_STAT:Receiver Status,接收器状态
0x0:Idle,空闲
0x1:Active,激活

10

RO

0x0

RX_FIFO_ERR:FIFO Error Flag,接收FIFO错误标志。
0x0:no error
0x1:error, such as overflow or underflow

9

RO

0x0

RX_FIFO_FULL:FIFO Full Flag,接收FIFO满标志。
0x0:not full
0x1:full

8

RO

0x1

RX_FIFO_EMPTY:RX FIFO Empty Flag,接收FIFO空标志。
0x0:not empty
0x1:empty

7:6

-

-

-

5:0

RO

0x00

RX_FIFO_DLEN:RX FIFO Data Length,RX FIFO 当前有效数据量指示
0x00:接收缓存中还有1byte待取走
0x01:接收缓存中还有2byte待取走
… …
0x3F:接收缓存中还有64bytes待取走

11.8.4.6. 0x014 CIR_RXCLK

默认值:0x00000000

CIR接收采样时钟寄存器(CIR_RXCLK)

位域

类型

默认值

描述

31:16

-

-

-

15:0

R/W

0x0

DIV_RXCLK:Receive Sample Clock Divider,接收采样时钟分频系数(1~65535)

11.8.4.7. 0x018 CIR_RX_THRES

默认值:0x000F00FF

CIR接收阈值配置寄存器(CIR_RX_THRES)

位域

类型

默认值

描述

31:16

R/W

0x0F

ACTIVE_THRES:Active Threshold,激活阈值。
接收器由空闲状态转变到激活状态的阈值。当接收器处于空闲状态,若输入信号电平发生变化
(上升沿或下降沿),且持续时间大于ACTIVE_THRES*Trx_clk时,接收器认为这是一个
激活码,将转变为激活状态,并开始捕获CIR_RX信号。

15:0

R/W

0xFF

IDLE_THRES:Idle Threshold,空闲阈值
接收器根据该阈值决定当前指令是否完成被接收。若无CIR_RX输入,接收器处于空闲状态。
当CIR_RX信号保持高电平或低电平,且持续时间大于 IDLE_THRES*Trx_clk时,
表示前一个指令完成接收。

11.8.4.8. 0x01C CIR_RX_CFG

默认值:0x01FF0000

CIR接收配置寄存器(CIR_RX_CFG)

位域

类型

默认值

描述

31:16

R/W

0x1FF

NOSIE_THRES:Nosie Threshold,噪声阈值
CIR_RX信号脉冲(高电平或低电平)持续时间小于NOSIE_THRES个采样周期Tpclk,
该脉冲将被当作噪声干扰而被忽略。
0x0:所有采样都存储于RX_FIFO
0x1:若信号小于等于1个周期Tpclk,忽略
0x2:若信号小于等于2个周期Tpclk,忽略
0xFFFF:若信号小于等于65535个周期Tpclk,忽略

15:8

-

-

-

7:3

-

-

-

2

W1C

0x0

DBC_LEVEL_SET:Debounce 输出初始化电平设置
0x0:Debounce 输出初始化电平为1
0x1:Debounce 输出初始化电平与RX_LEVEL一致

1

R/W

0x0

RX_LEVEL:RX输入信号电平
0x0:空闲状态下为低电平、激活状态下为高电平
0x1:空闲状态下为高电平、激活状态下为低电平

0

R/W

0x0

RX_INVERT:RX信号极性反相
0x0:信号不反相
0x1:信号反相

11.8.4.9. 0x020 CIR_TX_CFG

默认值:0x00000000

CIR发送配置寄存器(CIR_TX_CFG)

位域

类型

默认值

描述

31:8

-

-

-

7:3

-

-

-

2

R/W

0x0

TX_MODE:Transmit Mode,发送模式
0x0:非循环发送模式
0x1:循环发送模式

1

R/W

0x0

TX_OUT_MODE:Transmit Out Mode,发送输出模式
0x0:发送信号调制
0x1:发送信号不调制

0

R/W

0x0

TX_INVERT:Transmit Signal Invert,TX信号极性反相
0x0:信号不反相
0x1:信号反相

11.8.4.10. 0x024 CIR_TIDC

默认值:0x00000000

CIR发送间隔时间寄存器(CIR_TIDC)

位域

类型

默认值

描述

31:16

-

-

-

15:0

R/W

0x0

IDC_THRES:Idle Duration Counter Threshold,空闲持续时间计数阈值,0~65536
循环发送间隔时间= IDC_THRES*Ttx_clk

11.8.4.11. 0x02c CIR_CARR_CFG

默认值:0x0003000b

CIR发送载波配置寄存器(CIR_CARR_CFG)

位域

类型

默认值

描述

31:16

R/W

0x3

CARRIER_HIGH:Carrier High Pulse Number,载波高电平脉冲个数,以APB_CLK为基本单位。
用于配置载波频率及占空比。
TX_CLK=24MHz/(CARR_HIGH+1+CARR_LOW+1);
DUTY=(CARR_HIGH+1)/(CARR_HIGH+1+CARR_LOW+1)

15:0

R/W

0xb

CARRIER_LOW:Carrier Low Pulse Number,载波低电平脉冲个数,以APB_CLK为基本单位。
用于配置载波频率及占空比。

11.8.4.12. 0x030 CIR_RXFIFO

默认值:0x00000000

CIR接收缓存寄存器(CIR_RXFIFO)

位域

类型

默认值

描述

31:8

-

-

-

7:0

R/W

0x0

RXFIFO:Receive Byte FIFO,接收字节缓存

11.8.4.13. 0x080 CIR_TXFIFO

默认值:0x00000000

CIR发送缓存寄存器(CIR_TXFIFO)

位域

类型

默认值

描述

31:8

-

-

-

7:0

W

0x0

TXFIFO:Transmit Byte FIFO,发送字节缓存
当发送触发,FIFO中的数据将被发送,直至所有数据字节数量都被发送完。

11.8.4.14. 0xFFC CIR_VERSION

默认值:0x00000100

CIR版本寄存器(VERSION)

位域

类型

默认值

描述

31:0

RO

0x00000100

Version (版本号),采用BCD码,V1.00