12.1.7. 寄存器列表
Module Name |
Mapping Size |
Offset |
---|---|---|
ADCIM |
4 KB |
0x000 |
Register Name |
Offset |
Description |
---|---|---|
ADCIM_MCSR |
0x000 |
ADCIM模块控制状态(ADCIM Module Control State Register) |
ADCIM_CALCSR |
0x004 |
ADCIM校准控制(ADCIM Calibration Control Set Register) |
ADCIM_FIFOSTS |
0x008 |
ADCIM FIFO状态(ADCIM FIFO States) |
- |
0x00C~0xFF8 |
- |
ADCIM_VERSION |
0xFFC |
模块版本(ADCIM Version) |
12.1.8. 寄存器描述
12.1.8.1. 0x000 ADCIM_MCSR
默认值:0x00000000 |
ADCIM模块控制状态(ADCIM Module Control State Register) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:17 |
_ |
_ |
_
|
16 |
RO |
0 |
BUSY(ADC忙闲标志)
0: ADC模块Idle状态,没有采样命令需要处理;
1: ADC模块正处于Busy状态,正在处理采样命令(包括捕获和转换)。
|
15:8 |
R/W |
0x00 |
SEMFLAG(信号量标志)
本字段为一个8-bit寄存器,可以为软件任意读写,不会对硬件行为产生
任何影响。目的就是作为本模块被多个应用模块共享时的信号量标志。
每寄存器位的定义由软件自由定义。
|
7:4 |
_ |
_ |
_
|
3:0 |
RO |
0x00 |
CHN(Number of Channel Processing,正在处理的通道号)
本字段仅作为Debug使用,表示当前正在采样的通道号,仅在BUSY=1时有效。
|
12.1.8.2. 0x004 ADCIM_CALCSR
默认值:0x08002F00 |
ADCIM校准控制(ADCIM Calibration Control Set Register) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31 |
W |
0 |
CALVAL_UPD(Calibration Value Update,ADC校准值更新)
(写完之后,马上变为0)
通过软件设置CALVAL的同时,置位本字段,表示软件需要更新CALVAL值
,本字段被置位后会触发内部更新的动作,硬件更新完毕之后,
会自动清零本字段。
|
30:28 |
_ |
_ |
_
|
27:16 |
R/W |
0x800 |
CALVAL(Calibration Value,ADC校准输出值)
ADC的校准过程是去采样一个参考电压的中间电平,就会返回一个
12bits的值,本字段会把这个值保存下来。并且由硬件使用这个值
对所有的采样数据进行校准。
如果希望使用一个非硬件自动校准取得的值,对ADC数据进行校准,
还可以通过软件设置一个合适的值,硬件就会参考本字段,
对ADC采样数据进行自动校准。
|
15:8 |
R/W |
0x2F |
ADC_ACQ(ADC校准捕获时间)
本字段定义了校准时ADC通道的捕获时间长度。本计数值单位为ADC_CLK的
周期数,
TADCACQ =(ADC_ACQ+1)*TADC_CLK 。假设 ADC_CLK=24MHz ,ADC_ACQ=0x2F , TADCACQ = (47+1)*41.67ns = 2us 。 |
7:2 |
_ |
_ |
_
|
1 |
R/W |
0 |
DCALMASK(Data Calibration Mask,采样数据校准屏蔽)
0: 硬件默认对采样数据进行校准后送给ADC应用功能模块;
1: 屏蔽采样数据校准功能,本模块直接把来自ADC模拟电路的
采样数据不经校准地送给ADC应用功能模块。
|
0 |
R/WAC |
0 |
CALEN(Calibration Enable,ADC校准使能)
本使能信号由软件置位,使能ADC校准,ADC校准完后,对此控制信号
自动清零。软件查询到此信号被清零后,意味着校准已完成。
|
12.1.8.3. 0x008 ADCIM_FIFOSTS
默认值:0x00000040 |
ADCIM FIFO状态(ADCIM FIFO States) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:7 |
_ |
_ |
_
|
6 |
RO |
1 |
ADC Arbiter Idle Status
For Debug Only
ADC命令仲裁状态,0表示ADC接口模块正在接收其他模块的命令;
1表示ADC接口模块正处于Idle状态
|
5 |
RO |
0 |
FIFO Error Status
For Debug Only
0: 表示命令FIFO正常;
1: 表示命令FIFO Error(Overflow/Underflow)。
|
4:0 |
RO |
0x00 |
FIFOCTR(FIFO Counter,FIFO计数器)
本字段用于显示采样命令FIFO的占用情况。FIFO深度为16,本字段
的有效值为0~16(0x00~0x10),表示FIFO内未处理的采样命令数。
|
12.1.8.4. 0xFFC ADCIM_VERSION
默认值:0x00000100 |
模块版本(ADCIM Version) |
||
---|---|---|---|
位域 |
类型 |
默认值 |
描述 |
31:0 |
RO |
0x00000100 |
Version(模块版本号)
采用BCD码显示,V1.00
|