寄存器描述
0x000 MCR
默认值:0x00000000 |
THS 模块控制 (THS Module Control Register) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:18 |
- |
- |
- |
17 |
R/W |
0 |
THS1_EN THS1 Enable, THS1 传感器使能
|
16 |
R/W |
0 |
THS0_EN THS0 Enable, THS0 传感器使能
|
15:8 |
R/W |
0x2F |
THS_ACQ THS Acquisition Time,THS 捕获时间,温度传感器的捕获时间长度。 计数值单位为 ADC_CLK 的周期数,T (THS_ACQ) = (THS_ACQ+1) * TADC_CLK。假设 ADC_CLK = 24 MHz,THS_ACQ = 0x2F,T (THS_ACQ) = (47 + 1) * 41.67 ns = 2 us。 |
7:6 |
- |
- |
- |
5:4 |
RO |
0x3 |
THS_MAX THS 最大编号 THSn 中 n 的最大编号,n+1 即为模块最多支持温度传感器数量。小于等于 3,即传感器数量最少为 1 个,最多为 4 个。 |
3:1 |
- |
- |
- |
0 |
R/W |
0 |
EN 模块使能
|
0x004 MINTR
默认值:0x00000000 |
THS 中断控制与状态 (THS Module Interrupt Register) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:20 |
- |
- |
- |
19 |
RO |
0 |
THS3_INTF THS3 Interrupt Flag,THS3 中断标志,只可读。 只要清除了相应 THS
的中断标志,就会自动清零
|
18 |
RO |
0 |
THS2_INTF() THS2 Interrupt Flag,THS2 中断标志,只可读。 只要清除了相应
THS 的中断标志,就会自动清零
|
17 |
RO |
0 |
THS1_INTF THS1 Interrupt Flag,THS1 中断标志,只可读。 只要清除了相应 THS
的中断标志,就会自动清零
|
16 |
RO |
0 |
THS0_INTF() THS0 Interrupt Flag,THS0 中断标志,只可读。 只要清除了相应
THS 的中断标志,就会自动清零
|
15:4 |
- |
- |
- |
3 |
R/W |
0 |
THS3_INTEN THS3 Interrupt Enable,THS3 中断使能信号
|
2 |
R/W |
0 |
THS2_INTEN THS2 Interrupt Enable,THS2 中断使能信号
|
1 |
R/W |
0 |
THS1_INTEN THS1 Interrupt Enable,THS1 中断使能信号
|
0 |
R/W |
0 |
THS0_INTEN THS0 Interrupt Enable,THS0 中断使能信号
|
0x010 MAXMACQ
默认值:0x00030100 |
THS 最大数量与捕获时间 (THS MAX NUM AND ACQ Register) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:18 |
- |
- |
- |
17:16 |
RO |
0x3 |
THS_MAX THS 最大编号,规定了 THSn 中 n 的最大编号 n+1,即为本模块实际使用的温度传感器数量。n 小于等于 3,即传感器数量最少为 1 个,最多为 4 个。 |
15:12 |
- |
- |
- |
11:0 |
R/W |
0x100 |
THS_ACQ THS 捕获时间,定义了温度传感器的捕获时间长度。 计数值单位为 ADC_CLK 的周期数。T(THS_ACQ )=(THS_ACQ+1)*TADC_CLK。假设 ADC_CLK=24MHz , THS_ACQ=0x2F, T(THS_ACQ )= (47+1)*41.67ns = 2us。 |
0x100+n*0x20 THSn_CFG
1默认值:0x000(n+8)2F00 |
THS 通道控制配置 (THS Channel N Config) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:28 |
- |
0x0 |
- |
26:20 |
- |
- |
- |
19:16 |
RO |
n+8 |
ADC_CHN ADC Channel Number,ADC 通道号 显示系统分配的 ADC 通道号,硬件会根据此通道号匹配 ADC 并获取返回的数据,软件驱动不需要使用,仅作 Debug 用。 |
15:8 |
R/W |
0x2F |
ADC_ACQ ADC Acquisition Time,ADC 捕获时间 ADC 通道的捕获时间长度。
|
7:5 |
- |
- |
- |
4 |
R/W |
0x0 |
ADC_PRI ADC Priority,ADC 采样的优先级控制
|
3 |
- |
- |
- |
2 |
R |
0x0 |
THS THS Channel State,工作状态:
|
1 |
R/W |
0x0 |
PSEN Periodic Sample Enable,温度传感器周期采样使能。
采样间隔由 THSn_ITV 寄存器设定。如果在软件清零之前硬件已经启动了一次新的采样,新采样会继续完成,并最终返回数据。 注: 不允许同时使能周期采样与单次采样,即 SSEN 与 PSEN
不能同时有效。
|
0 |
R/WAC |
0x0 |
SSEN Single Sample Enable,温度传感器单点采样使能。
由硬件自动清零,表示相应传感器的温度单点采样已完成。 注: 尽管描述为单点采样,但为了避免单次采样误差,可能需要通过单点多次采样后的数据进行算术平均,得到一个相对稳定的温度值,因此单点采样实际上会包含多次采样。对应的由硬件向
ADC 接口控制器连续发出多个采样命令。连续发出采样命令的个数由滤波器配置 FIL 设定。例如滤波器配置为 0x1(2
点平均),则每次启动 SSEN,硬件会连续发出 2 个采样命令,接收到 2 个温度数据之后,硬件自动清零
SSEN。
|
0x104+n*0x20 THSn_ITV
2默认值:0x016EFFFF |
THS 通道采样间隔配置 (THS Channel N Interval) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:16 |
R/W |
0x016E |
ITV Interval,采样间隔 周期采样的采样间隔,单位为 Multiple * TPCLK,即采样间隔 = ITV* Multiple * TPCLK。 假设 PCLK = 24 MHz,ITV = 0x16E = 366,DIV=65535,采样间隔 = 366 * (65535 + 1) * 41.67 ns = 1 s 注: 不可为 0。硬件自动保护:当软件配置为 0 时,效果等同于
1。
|
15:0 |
R/W |
0xFFFF |
DIV Divide CLK,分频时钟 时钟 (div_clk) 分频系数,单位为 PCLKT (div_clk) = (DIV+1) *T (PCLK) |
0x108+n*0x20 THSn_FIL
3默认值:0x00000000 |
THS 采样滤波配置 (THS Channel Filter) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:2 |
- |
- |
- |
1:0 |
R/W |
0x0 |
FIL Filter,滤波器配置 温度传感器采样数据算数平均滤波器的输入样本数。
定义了单次采样和周期采样每次的连续采样命令数量(采样点数),控制器接收对应的采样点数据后,进行算数平均,并把平均值通过本传感器的 THSn_DATA 寄存器返回。 |
0x10C+n*0x20 THSn_DATA
4默认值:0x00000000 |
THS 数据 (THS Channel N Data) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:12 |
- |
- |
- |
11:0 |
RO |
0x000 |
DATA ADC DATA,,ADC 采样数据 温度传感器的 ADC 采样数据结果。
注: 模块无数据
FIFO,本寄存器只能暂存一次的采样结果,如果未被及时读取,则会被后来新的采样数据直接覆盖。
|
0x110+n*0x20 THSn_INT
5默认值:0x00000000 |
THS 中断状态 (THS Channel N Interrupt) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:29 |
- |
- |
- |
28 |
R/W1C |
0x0 |
OTPF Over-Temperature-Protected Flag,过温保护标志,仅周期采样模式(THSn_CFG. PSEN=1)时有效。 操作方式为硬件置位,软件写 1 清零。当温度传感器采样值超过 THSn_OTPV.OTPV
,就会置为 1。
|
27 |
R/W1C |
0x0 |
LTARF Low-Temperature-Alarm Removed Flag,低温警告解除标志
|
26 |
R/W1C |
0x0 |
LTAVF Low-Temperature-Alarm Valid Flag,低温警告有效标志
|
25 |
R/W1C |
0x0 |
HTARF High-Temperature-Alarm Removed Flag,高温警告解除标志
|
24 |
R/W1C |
0x0 |
HTAVF High-Temperature-Alarm Valid Flag,高温警告有效标志
|
23:18 |
- |
- |
- |
17 |
R/W1C |
0x0 |
DOVWF Data Overwrite Flag,数据覆盖标志 硬件置位,软件写 1 清零。当 DRDYF = 1(软件未清零数据有效标志),而且又有新的有效数据时,硬件置为 1,表示数据寄存器由于软件未及时读取,产生了上次有效数据被覆盖的情况。 |
16 |
R/W1C |
0x0 |
DRDYF Data Ready Flag,数据有效标志 硬件置位,软件写 1 清零。当 THSn_DATA 寄存器有新的有效数据时,硬件置为 1,软件读取数据后,由软件操作清除。 |
15:12 |
- |
- |
OTPS
Over-Temperature-Protection Select,过温保护功能选择 使能之后,当温度传感器采样值超过
THSn_OTPV.OTPV,THS 模块会输出中断或者系统复位(SYS_RSTn),从而引起 CPU
中断或者系统复位。
|
11 |
R/W |
0x0 |
LTARIE Low-Temperature-Alarm Removed Interrupt Enable,低温警告解除中断使能 当使能时,低温警告解除标志 (LTARF)
的状态就会传递到温度传感器的总中断。
|
10 |
R/W |
0x0 |
LTAVIE Low-Temperature-Alarm Valid Interrupt Enable,低温警告有效中断使能 当使能时,低温警告有效标志 (LTAVF)
的状态就会传递到温度传感器的总中断。
|
9 |
R/W |
0x0 |
HTARIE High-Temperature-Alarm Removed Interrupt Enable,高温警告解除中断使能 当使能时,高温警告解除标志 (HTARF)
的状态就会传递到温度传感器的总中断。
|
8 |
R/W |
0x0 |
HTAVIE High-Temperature-Alarm Valid Interrupt Enable,高温警告有效中断使能 当使能时,高温警告有效标志 (HTAVF)
的状态就会传递到温度传感器的总中断。
|
7:2 |
- |
- |
- |
1 |
R/W |
0x0 |
DOVWIE Data Overwrite Interrupt Enable,数据覆盖中断使能 当使能时,数据覆盖标志 (DOVWF) 的状态就会传递到温度传感器的总中断。
|
0 |
R/W |
0x0 |
DRDYIE Data Ready Interrupt Enable,数据有效中断使能 当使能时,数据有效标志
(DRDYF) 的状态就会传递到温度传感器的总中断。
|
0x114+n*0x20 THSn_HTAV
默认值:0x00000000 |
THS 高温报警阈值设置 (Channel N High-Temperature Alarm Value) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31 |
R/W |
0 |
HTAE
高温警报使能
|
30:28 |
- |
- |
- |
27:16 |
R/W |
0x000 |
HTARV
高温警报解除阈值 当温度从高于高温警报有效阈值 (HTAVV) 的数值,降到高温警报解除阈值(HTARV)以下,高温警报解除标志(HTARF)就会被硬件置位。 注: HTARV> HTAVV。
|
15:12 |
- |
- |
- |
11:0 |
R/W |
0x000 |
HTAVV
高温警报有效阈值 当温度从低于高温警报解除阈值(HTARV)的数值,升到高温警报有效阈值 (HTAVV) 以上,高温警报有效标志 (HTAVF) 就会被硬件置位。 注: HTARV < HTAVV。
|
0x118+n*0x20 THSn_LTAV
默认值:0x00000000 |
THS 低温报警阈值设置 (Channel N Low-Temperature Alarm Value) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31 |
R/W |
0 |
LTAE
低温警报使能
|
30:28 |
- |
- |
- |
27:16 |
R/W |
0x000 |
LTARV
低温警报解除阈值 当温度从低于低温警报有效阈值 (LTAVV) 的数值,升到低温警报解除阈值 (LTARV) 以上,低温警报解除标志 (LTARF) 就会被硬件置位。 注: LTAVV> LTARV。
|
15:12 |
- |
- |
- |
11:0 |
R/W |
0x000 |
LTAVV
低温警报有效阈值 当温度从高于低温警报解除阈值 (LTARV) 的数值,降到低温警报有效阈值 (LTAVV) 以下,低温警报有效标志(LTAVF)就会被硬件置位。 注: LTAVV> LTARV。
|
0x11C+n*0x20 THSn_OTPV
6默认值:0x00000000 |
THS 过温保护阈值设置 (Channel N Over Temperature Protect Value) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31 |
R/W |
0 |
OTPE 过温保护使能
|
30:12 |
- |
- |
- |
11:0 |
R/W |
0x000 |
OTPV 过温保护阈值,大于高温阀值 当温度上升到过温保护阈值 (OTPV) 以上,过温保护标志 (OTPF) 就会被硬件置位。 |
0xFFC VERSION
默认值:0x00000200 |
THS 版本号 (THS Version) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:0 |
RO |
0x00000200 | Version(模块版本号) 采用 BCD 码显示,V2.0 |
n = 0~1 为 ths 通道号
n = 0~1 为 ths 通道号
n = 0~1 为 ths 通道号
n = 0~1 为 ths 通道号
n = 0~1 为 ths 通道号
n = 0~1 为 ths 通道号