RH850P1X芯片学习笔记-A/D Converter (ADCF)

文章目录

    • Features of RH850/P1x-C ADCF
      • Number of Units
      • Register Base Address
      • Clock Supply
      • Interrupts and DMA
      • Hardware Reset
      • External Input/Output Signals
      • Virtual Channel
    • Overview
      • Functional Overview
      • Block Diagram
      • Physical Channels, Virtual Channels and Scan Groups
    • Registers
      • List of Registers
      • ADCF0ADSYNSTCR — AD Synchronization Start Control Register
      • ADCF0ADTSYNSTCR — AD Timer Synchronization Start Control Register
      • ADCFnVCRj — Virtual Channel Register j
      • ADCFnDRj — Data Register j
      • ADCFnDIRj — Data Supplementary Information Register j
      • ADCFnADHALTR — AD Halt Register
      • ADCFnADCR1 — AD Control Register 1
      • ADCFnMPXCURCR — MPX Current Control Register
      • ADCFnMPXCURR — MPX Current Register
      • ADCFnMPXOWR — MPX Optional Wait Register
      • ADCFnADCR2 — AD Control Register 2
      • ADCFnADENDP0 — A/D Conversion Monitor Virtual Channel Pointer
      • ADCFnSFTCR — Safety Control Register
      • ADCFnTDCR —Pin Level Diagnostic Control Register
      • ADCFnULLMTBR0 to 2 — Upper-Limit/Lower-Limit Table Registers 0 to 2
      • ADCFnECR — Error Clear Register
      • ADCFnULER — Upper-Limit/Lower-Limit Error Register
      • ADCFnOWER — Overwrite Error Register
      • ADCFnPER — Parity Error Register
      • ADCFnIDER — ID Error Register
      • ADCFnSGSTCRx — Scan Group x Start Control Register
      • ADCFnADTSTCRy — AD Timer y Start Control Register
      • ADCFnADTENDCRy — AD Timer y End Control Register
      • ADCFnSGCRx — Scan Group x Control Register
      • ADCFnSGVCSPx — Scan Group x Start Virtual Channel Pointer
      • ADCFnSGVCEPx — Scan Group x End Virtual Channel Pointer
      • ADCFnSGMCYCRx — Scan Group x Multicycle Register
      • ADCFnSGSRx — Scan Group x Status Register
      • ADCFnADTIPRy — AD Timer Initial Phase Register y
      • ADCFnADTPRRy — AD Timer Period Register y
      • ADCFnULLMSRx — Scan Group x Upper-Limit/Lower-Limit Table Select Register
    • Function
      • 正常AD转换操作示例
        • 多周期扫描模式
        • 连续扫描模式
      • 加法模式下正常A/D转换示例
      • 外部模拟多路复用器的操作示例
        • 使用外部模拟多路复用器示例(端口输出)
      • 同步挂起和恢复操作示例
      • 异步挂起和恢复操作示例
      • Example of A/D Timer Operation
      • Diagnostic Function
      • ADC conversion time
      • 模拟输入采样和扫描组处理时间
      • Hardware Trigger Functions
    • Operation
      • Initial Settings
      • Trigger Input Flow
    • Difference among P1M-C, P1H-C and P1H-CE

Features of RH850/P1x-C ADCF

Number of Units


ADC硬件由n表示

通道由m表示

数据寄存器和虚拟通道的数量由索引“j”标识,例如,数据寄存器j为ADCFnDRj

扫描组用字母“x”表示(x = 0到4)。

A/D定时器的数量由字母“y”表示(y = 3,4)。

Register Base Address

ADCF基址列在下表中。
ADCF寄存器地址是作为相对于单个基址的偏移量给出的。

Clock Supply

下表列出了ADCF的时钟供应。


一般ADC时钟为40M

注:只有当CLK_LSB = 8mhz - 40mhz时,才能保证电特性。

Interrupts and DMA


错误中断是下列中断的逻辑和。

  • 上限/下限比较错误
  • 覆盖错误
  • ID错误

Hardware Reset

下表列出了ADCF复位源。ADCF通过这些复位条件进行初始化

External Input/Output Signals

ADCF的外部输入/输出信号如下表所示

Virtual Channel

每个ADCF有虚拟通道,如表27.44所示。为每个虚拟通道设置要进行A/D转换的模拟通道和其他伴随信息。通过对每个扫描组中的起始虚拟通道指针和结束虚拟通道指针所指示的虚拟通道依次进行处理,可以对任意顺序的任意模拟通道进行A/D转换的扫描

Overview

Functional Overview

ADCF具有以下特性。

•先进的A/D转换器

分辨率:12位

A/D转换方法:逐次逼近法

转换速度:1.0μs

•支持五个扫描组

每个ADCF有5个扫描组。扫描设置可以独立地为每个扫描组。

•两种扫描模式

每个ADCF有两种扫描模式。

多周期扫描模式:指定扫描次数。

连续扫描模式:无限制地重复执行扫描。

•区间功能

ADCF可以通过使用扫描组3和4中配备的A/D定时器在任何周期中启动扫描组。这将启用插入间隔的扫描

•A/ d转换增值功能

ADCF对一个通道顺序执行两次或四次A/D转换,并将相加结果存储在数据寄存器中。可以为每个虚拟通道设置添加计数。

利用这一结果可以得到移动平均滤波器的效果。然而,此功能并不总是确保A/D转换精度得到提高。

•扩展的物理通道

每个ADCF可以通过使用外部模拟多路复用器扩展物理信道。(可用通道为an0006和AN1I00。)

•虚拟通道概念

虚拟通道数大于物理通道数。

每个虚拟通道可以自由分配给每个物理转换通道

•数据寄存器

提供了与虚拟通道相对应的数据寄存器

•为每个扫描组启动触发器

硬件触发器和软件触发器可以启动每个扫描组的处理。只有扫描组3和4可以通过A/D定时器触发开始处理

•异步/同步挂起和恢复功能

对扫描组的处理可以中断正在进行的对另一个扫描组的处理。优先事项如下:

SG0 < SG1 < SG2 < SG3 < SG4 (SG: Scan group)

SG4优先级最高

如果一个高优先级SG的请求正在处理中,而一个低优先级SG正在处理中,那么在正在进行的虚拟通道处理停止后,低优先级SG将挂起(同步挂起)或在正在进行的虚拟通道处理后立即停止(异步挂起),然后执行高优先级SG的处理。高优先级SG处理完毕后,低优先级SG暂停的虚拟通道处理恢复

也可以设置为:当高优先级SG中断SG0处理时,发生异步挂起;当高优先级SG中断非SG0的低优先级SG时,发生同步挂起。

•支持扫描结束中断和DMA传输

每个扫描组可以产生一个中断请求到INTC,并激活DMAC,每次处理由虚拟通道指针结束或虚拟通道结束所指示的虚拟通道。

•模拟转换电压可设置

A0VREFH引脚和A1VREFH引脚可用于设置模拟转换的电压范围。

•丰富的安全功能

ADCF具有丰富的安全功能,包括A/D转换电路诊断功能、引脚级诊断功能、断线检测、模拟选择正常检查、数据寄存器上限/下限检查、数据寄存器奇偶校验、数据寄存器覆盖检查、数据寄存器读取和清除功能

Block Diagram

Physical Channels, Virtual Channels and Scan Groups

每个物理通道m是指一个外部A/D转换器输入ANnIm。

从应用软件的角度来看,虚拟通道就是A/D转换器通道。

虚拟通道数j大于物理通道数m。

每个虚拟通道j可以通过其虚拟通道寄存器ADCFnVCRj的GCTRL[4:0]位分配给每个物理通道

任意数量的连续虚拟通道可以组合为五个扫描组之一SGx, x = 0到4。

参数定义扫描组的虚拟通道集

•扫描组x启动虚拟通道指针ADCFnSGVCSPx.VCSP[5:0]

•扫描组x结束虚拟通道指针ADCFnSGVCEPx.VCEP[5:0]

虚拟通道的转换结果存储在ADCFnDRj寄存器中。

每个32位ADCFnDRj寄存器存储两个连续的虚拟通道j和(j+1)的结果。

转换结果也存储在数据补充信息寄存器ADCFnDIRj (j = 0 ~ 35)中。这个寄存器包含一些关于转换的附加信息。

•扫描组x虚拟通道:j = 4 ~ 9

•虚拟到物理通道分配:


在扫描组x的转换开始触发后,第一个虚拟通道ADCFnVCR4,即分配的物理通道ANnI01进行转换,并将结果存储在ADCFnDR4.DR4[15:0]中。

下一个转换结果为ADCFnDR4.DR5[15:0]。

内部扫描指针是递增的,并移动到下一个虚拟通道。

Registers

List of Registers

ADCF0ADSYNSTCR — AD Synchronization Start Control Register

ADCF0ADSYNSTCR是一个8位的只写寄存器,控制ADCF0和ADCF1的每个扫描组同时开始A/D转换。寄存器位总是读为0。


ADSTART:启动ADCF0和ADCF1扫描组的A/D转换。

ADCFn SGx启动条件:

对于ADCFn的SGx,当SGACT为0,ADSTARTE为1时,将1写入ADSTART

对于ADSTARTE已设置为1的扫描组(ADCF0和ADCF1),同时开始A/D转换。

ADCF0ADTSYNSTCR — AD Timer Synchronization Start Control Register

ADCF0ADTSYNSTCR是一个8位的只写寄存器,控制ADCF0和ADCF1的每个A/D定时器计数操作的同时开始。寄存器位总是读为0。


ADTSTART:启动ADCF0和ADCF1的A/D计时器的计数操作。

ADCFn的SGx启动条件:

对于ADCFn的A/D定时器x,当ADTACT为0并且ADTSTARTE为1时,1被写入ADTSTART。

对于ADTST已设置为1的(ADCF0和ADCF1的)A/D计时器,同时启动计数操作。

注:x=3,4

ADCFnVCRj — Virtual Channel Register j

ADCFnVCRj是一个32位可读/可写寄存器,用于每个虚拟通道

PUE, PDE:Pull-Up/Down resistor

00:关闭上拉电阻和下拉电阻

01:使能下拉电阻。电阻在采样时间内使能。

10:使能上拉电阻。电阻在采样时间内使能。

11:禁止设置。

CNVCLS[2:0]:转换类型

0H:正常A/D转换

3 h:诊断

4H:加法模式的普通A/D转换

5H:与MPX的正常A/D转换

6H:带加法模式MPX的普通A/D转换

除上述情况外:禁止设置

ADIE:使能虚拟通道结束中断

0: SGx中虚拟通道j的虚拟通道末端不输出ADInx

1: ADInx是SGx中虚拟通道j的虚拟通道端输出

ADCFnSGCRx中的ADIE与ADCFnVCRj中的ADIE是独立的。


GCTRL[4:0]:一般控制

将GCTRL[4:0]中不使用的位写为0。

CNVCLS[2:0]=0时,GCTRL[4:0]表示对应的物理通道

CNVCLS[2:0]=3时,GCTRL[4:0]表示诊断电压

CNVCLS[2:0]=4时,GCTRL[4:0]表示对应的物理通道,ADDNT指定的计数适用于添加的数量

CNVCLS[2:0]=5时,GCTRL[4:0]表示设置MPX通道。

指定要传输到外部模拟多路复用器的MPX值。

中断请求(INTADCFnMPX)或DMA请求由GCTRL[4:0]输出,在虚拟通道开始时转移到ADCFnMPXCURR。

在DMAC中断或启动后,通过将ADCFnMPXCURR传输到I/O端口的PyDR或PyMDR,可以将MPX值传输到外部模拟多路复用器。
CNVCLS[2:0]=6时,GCTRL[4:0]表示设置MPX通道。ADDNT指定的计数适用于添加的数量

ADCFnDRj — Data Register j

该寄存器为32位只读寄存器,用于存储对应的A/D转换结果

转换结果ADCFnVCR (j + 1)存储在高16位,ADCFnVCRj的转换结果存储在低16位。

ADCFnDRj格式取决于ADCFnADCR2的DFMT设置和ADDNT设置(when CNVCLS[2:0] = 4H, 6H).

当读取ADCFnDRj或ADCFnDIRj且RDCLRE为1时,将ADCFnDRj清除为0000H。


DFMT=0时表示小数,符号位S一直为0

DFMT=1时表示整数,符号位S一直为0
当CNVCLS[2:0] = 4H, 6H时,ADDNT中的格式设置有效。

如果CNVCLS[2:0]不是4H, 6H,格式为“convert once”。

ADCFnDIRj — Data Supplementary Information Register j

ADCFnDIRj是一个32位只读寄存器,用于存储ADCFnDRj的补充信息和A/D转换值。为每个虚拟信道提供ADCFnDIRj。当读取ADCFnDRj或ADCFnDIRj而RDCLRE设置为1时,ADCFnDIRj被清除为0000 0000H。无论RDCLRE设置如何,当读取ADCFnDRj或ADCFnDIRj时,WFLG被清除。此寄存器必须始终作为32位数据读取。ADCFnDRj是从16个低位中读取的


WFLG:写标志

1:设置条件

A/D转换值存储在ADCFnDRj中

0:清除条件

读取ADCFnDRj或ADCFnDIRj。

PRTY:奇偶校验
ADCFnDRj的奇偶校验位(偶校验)。
ID[4:0]:包含转换通道的物理通道信息。

ADCFnADHALTR — AD Halt Register

ADCFnADHALTR是一个8位的只写寄存器,用于停止ADC。寄存器位总是读为0。


HALT:所有扫描组和AD定时器停止并初始化,ADC变为空闲状态,写1进入halt状态

ADCFnADCR1 — AD Control Register 1

ADCFnADCR1是一个用于ADC公共控制的8位可读/可写寄存器。


SUSMTD [1:0]:暂停的方法

当高优先级扫描组中断低优先级扫描组时,这些位选择挂起方法

同步挂起:如果高优先级SG的请求存在,而低优先级SG正在处理,则在正在进行的虚拟通道处理完成后,暂停低优先级SG的处理,然后执行高优先级SG的处理。高优先级SG处理完毕后,恢复低优先级SG暂停的虚拟通道处理。

异步挂起:如果在处理较低优先级的SG时存在来自较高优先级SG的请求,则正在进行的虚拟信道处理将立即挂起,然后执行针对较高优先级的SG的处理。在完成针对较高优先级SG的处理之后,恢复针对较低优先级SG的暂停的虚拟信道处理。

0H:同步挂起

1H:当高优先级SG中断SG0时,异步挂起

当高优先级SG中断低优先级SG(SG0)除外时,同步挂起



2H:异步挂起

3H:禁止设置

ADCFnMPXCURCR — MPX Current Control Register

ADCFnMPXCURCR是一个控制ADCFnMPXCURR格式的寄存器


MSKCFMT0:MSKC格式规范

ADCFnMPXCURR的MSKC[3:0]格式

0: MSKC[3:0] = 0000

1: MSKC[3:0] = 1111

ADCFnMPXCURR — MPX Current Register

ADCFnMPXCURR是一个32位只读寄存器,用于存储外部模拟多路复用器的MPX值。


MSKC[3:0]:根据上面的MSKCFMT0配置

MPXCUR[3:0]:当前MPX值

当ADCFnVCRj中CNVCLS[2:0]设置为5H或6H的虚拟通道启动时,ADCFnVCRj中的GCTRL[3:0]被转换为MPXCUR[3:0]

ADCFnMPXOWR — MPX Optional Wait Register

ADCFnMPXOWR是一个寄存器,它指定要插入外部模拟多路复用器的等待时间。


MPXOW:MPX可选等待

这些位指定在ADCFnVCRj中CNVCLS[2:0]为5H或6H的虚拟通道启动后,在A/D转换开始之前插入的等待时间。

ADCFnADCR2 — AD Control Register 2

ADCFnADCR2是一个用于ADCF公共控制的8位可读/可写寄存器。


DFMT:数据格式

0: Signed定点格式

1:表示有符号整数格式

ADDNT:添加计数选择

0:加两次

1:加4次

该寄存器仅在CNVCLS[2:0]为4H, 6H时有效。

ADCFnADENDP0 — A/D Conversion Monitor Virtual Channel Pointer

ADCFnADENDP0是一个8位的可读/可写寄存器,它选择一个虚拟通道输出A/D转换时序到ADENDn


ENDP[5:0]:A/D转换监视器虚拟通道指针

当由ADCFnADENDP0选择的虚拟通道启动时,高电平从ADEND引脚输出。当ADCFnADENDP0选择的虚拟通道结束时,输出低电平

ADCFnSFTCR — Safety Control Register

ADCFnSFTCR是一个用于安全控制的8位可读/可写寄存器。


RDCLRE:读取和清除使能

0:未通过读取ADCFnDRj或ADCFnDIRj,清除ADCFnDRj和ADCFnDIRj

1:通过读取ADCFnDRj或ADCFnDIRj,清除ADCFnDRj和ADCFnDIRj

ULEIE:上限/下限错误中断使能

0:禁用

1:启用

OWEIE:Overwrite错误中断使能

0:禁用

1:启用

PEIE:奇偶校验错误中断启用

0:禁用

1:启用

IDEIE:ID错误中断使能

0:禁用

1:启用

ADCFnTDCR —Pin Level Diagnostic Control Register

ADCFnTDCR是一个控制引脚电平诊断的8位可读/可写寄存器。


TDE:引脚电平诊断使能

0:关闭引脚电平诊断。

1:使能引脚电平诊断。

当TDE设置为1时,所有模拟引脚与输入缓冲区断开连接。

当TDE设置为0时,所有模拟引脚都连接到输入缓冲区。

当TDE设为1时,电压固定在TDLV[1:0]规定的电平上。

在这种状态下执行A/D转换并检查A/D转换值可以诊断从模拟引脚到ADCF的路径

TDLV[1:0]:引脚电平诊断

0H:偶数物理通道组向AnVSS放电,奇数物理通道组向AnVCC充电。

1H:偶数物理通道组向AnVCC充电,奇数物理通道组向AnVSS放电。

2H:偶数物理通道组向AnVSS放电,奇数物理通道组向1/2*AnVCC充电。

3H:偶数物理通道组充电到1/2*AnVCC,奇数物理通道组放电到AnVSS。

ADCFnULLMTBR0 to 2 — Upper-Limit/Lower-Limit Table Registers 0 to 2

ADCFnULLMTBR0-2为32位可读/可写寄存器,用于设置A/D转换值的上下限。通过ADCFnLLMSRx中的ULS[1:0]指定ADCFnULLMBR0到2中的任何一个


ULMTB[15:0]:上限表

这些位指定A/D转换值的上限值。当满足以下条件时,设置ULE(上限/下限错误)。

ULMTB[15:0] < A/D转换值

无论ADCFnDRj的格式如何,ULMTB[15:0]格式都是带签名的定点格式。如果ADCFnDRj格式选择有符号整数格式,则将ADCFnDRj格式替换为有符号定点格式,然后比较值。注意,ULMTB[15]和ULMTB[0]总是固定为0。

LLMTB[15:0]:下限表

这些位指定A/D转换值的下限。当满足以下条件时,设置ULE(上限/下限错误)。

LLMTB[15:0] > A/D转换值

LLMTB[15:0]格式是带签名的定点格式,与ADCFnDRj格式无关。如果ADCFnDRj格式选择有符号整数格式,则将ADCFnDRj格式替换为有符号定点格式,然后比较值。注意LLMTB[15]和LLMTB[0]总是固定为0。

ADCFnECR — Error Clear Register

ADCFnECR是一个控制错误清除的8位只写寄存器。寄存器位总是读为0.


ULEC:上限/下限错误清除,写1清除

OWEC:Overwrite错误清除,写1清除

PEC:奇偶校验错误清除,写1清除

IDEC:ID错误清除,写1清除

ADCFnULER — Upper-Limit/Lower-Limit Error Register

ADCFnULER是一个8位只读寄存器,表示上限/下限错误


ULE:超上限或超下限

ULECAP[5:0]:上限/下限错误捕获

捕获发生上限/下限错误时的虚拟通道

ADCFnOWER — Overwrite Error Register

ADCFnOWER是一个8位的只读寄存器,表示覆盖错误


OWE:Overwrite错误标志

OWECAP[5:0]:错误时对应的虚拟通道

ADCFnPER — Parity Error Register

ADCFnPER是一个表示奇偶校验错误的8位只读寄存器。


PE:校验错误

PECAP[5:0]:校验错误时对应的虚拟通道

ADCFnIDER — ID Error Register

ADCFnIDER是一个8位的只读寄存器,表示ID错误。

IDE:ID错误标志

IDECAP[5:0]:ID错误时对应的虚拟通道

ADCFnSGSTCRx — Scan Group x Start Control Register

ADCFnSGSTCRx是一个8位的只写寄存器,控制扫描组x的开始。寄存器位总是读取为0。


启动扫描组x的条件:当SGACT = 0时,将值1写入SGST

ADCFnADTSTCRy — AD Timer y Start Control Register

ADCFnADTSTCRy是一个8位的只写寄存器,控制AD定时器y的开始。寄存器位总是读取为0。


启动A/D定时器y的条件:当ADTACT = 0时,将值1写入ADTST

ADCFnADTENDCRy — AD Timer y End Control Register

ADCFnADTENDCRy是一个8位的只写寄存器,控制AD定时器y的结束。寄存器位总是读取为0。


完成A/D定时器y的条件:当ADTACT = 1时,将值1写入ADTEND

ADCFnSGCRx — Scan Group x Control Register

ADCFnSGCRx是一个控制扫描组x的8位可读/可写寄存器。


ADSTARTE:扫描组同步启动启用

0:禁用ADSTART。

1:使能ADSTART。

SCANMD:扫描模式

0:表示多周期扫描模式

1:连续扫描模式

在多周期扫描模式下,扫描可以按照ADCFnSGMCYCRx指定的次数重复进行

在连续扫描模式下,重复扫描没有次数限制。

ADIE:扫描结束中断启用

0:扫描SGx结束时不输出ADInx。

1:在扫描SGx结束时输出ADInx。

TRGMD[0]:触发模式

0H:关闭SGx的触发输入。

1H:选择SGx_TRG硬件触发器作为SGx的触发器输入。

当x=3,4时


ADTSTARTE:AD定时器同步启动使能

0:禁用ADSTART。

1:使能ADSTART

TRGMD[1:0]:触发模式

0H:关闭SGx的触发输入。

未使能AD定时器x的触发输入。

1H:选择SGx_TRG硬件触发器作为SGx的触发器输入。

未使能AD定时器x的触发输入。

2H:选择AD定时器触发器x作为SGx的触发输入。

未使能AD定时器x的触发输入。

3H:选择AD定时器触发器x作为SGx的触发输入。

选择SGx_TRG硬件触发器作为AD定时器x的触发器输入。

ADCFnSGVCSPx — Scan Group x Start Virtual Channel Pointer

ADCFnSGVCSPx是一个8位的可读/可写寄存器,它指定了一个虚拟通道的开始指针。


VCSP[5:0]:启动虚拟通道指针

这些位选择要开始扫描的虚拟通道。

当SGx启动时,执行从ADCFnSGVCSPx到ADCFnSGVCEPx的虚拟通道处理。

ADCFnSGVCEPx — Scan Group x End Virtual Channel Pointer

ADCFnSGVCEPx是一个8位的可读/可写寄存器,它指定了一个虚拟通道的结束指针。


VCEP[5:0]:结束虚拟通道指针

这些位选择扫描要结束的虚拟通道。

当SGx启动时,执行从ADCFnSGVCSPx到ADCFnSGVCEPx的虚拟通道处理。

ADCFnSGMCYCRx — Scan Group x Multicycle Register

ADCFnSGMCYCRx是一个8位的可读/可写寄存器,用于指定多周期扫描模式下的扫描次数。


MCYC[7:0]:这些位指定在多周期扫描模式下的扫描次数

扫描次数= MCYC[7:0] + 1

ADCFnSGSRx — Scan Group x Status Register

ADCFnSGSRx是一个8位的只读寄存器,表示扫描组x的状态。


SGACT:扫描组状态

0: SGx暂挂没有转换。

1:有一个转换在SGx待处理。

如果该位为1,则SGx的状态为以下任意一种:

•触发器请求被搁置

•转换正在进行中

•由于发生更高优先级的转换,转换被搁置

当x=3,4时

ADTACT:A/D定时器状态

0: A/D定时器x处于空闲状态。

1: A/D定时器x运行

ADCFnADTIPRy — AD Timer Initial Phase Register y

ADCFnADTIPRy是一个32位可读/可写寄存器,用于设置A /D定时器y的初始相位。


ADTIP[20:0]:A/D定时器初始相位

这些位设置A/D定时器y的初始相位。

(1) A/D定时器y启动后,ADCFnADTIPRy被加载到A/D定时器y,定时器倒计时。

(2) A/D定时器y变为0后,输出A/D定时器触发器y一个周期;ADCFnADTPRRy被加载到A/D定时器y,定时器再次倒数。

之后重复过程(2)

ADCFnADTPRRy — AD Timer Period Register y

ADCFnADTPRRy是一个32位可读/可写寄存器,用于设置A /D定时器y的周期


ADTPR[20:0]:A/D定时器周期

ADCFnULLMSRx — Scan Group x Upper-Limit/Lower-Limit Table Select Register

ADCFnULLMSRx是一个控制扫描组x的8位可读/可写寄存器。


ULS:上限/下限表选择

0H:不检查上限和下限。

1H:在ADCFnULLMTBR0中检查上限和下限。

2H:在ADCFnULLMTBR1中检查上限和下限。

3H:在ADCFnULLMTBR2中检查上限和下限。

在ADCFnDRj中存储A/D转换值时,使用ULS[1:0]选择的上限/下限表检查上限和下限。

Function

正常AD转换操作示例

多周期扫描模式

下图是使用普通A/D转换模式(CNVCLS[2:0]h = 0)对多周期扫描模式下的扫描组0进行2周期扫描转换4个虚拟通道的操作示例。

连续扫描模式

图27.5是使用正常A/D转换模式(CNVCLS[2:0] = 0H)转换连续扫描模式下扫描组0的四个虚拟通道的操作示例。

加法模式下正常A/D转换示例

图27.6显示了在加法模式下使用普通A/D转换(CLVCLS[2:0] = 4H)为扫描组0转换4个虚拟通道的操作示例。

外部模拟多路复用器的操作示例

下面展示了使用MPX模式(CNVCLS[2:0] = 5H)的正常A/D转换或使用MPX模式的加法模式(CNVCLS[2:0] = 6H)的正常A/D转换的外部模拟复用器的操作示例。

使用外部模拟多路复用器示例(端口输出)

同步挂起和恢复操作示例

图27.8显示了一个高优先级时同步挂起和恢复操作的示例
SG中断低优先级的SG。


SG0还在执行过程中SG2触发,则SG0的此通道先执行完,然后执行SG2,再接着执行SG0的后面的通道

异步挂起和恢复操作示例

图27.9显示了一个更高优先级时异步挂起和恢复操作的示例
SG中断低优先级的SG。

SG0的通道1还在执行过程中SG2触发,则SG0停止转换,切换到SG2转换,完成后重新执行SG0对应的通道转换

Example of A/D Timer Operation

A/D定时器计数基于内部ADC时钟ADCFCLK。

Diagnostic Function

ADCF具有以下诊断功能。

•PIN电平诊断功能

•SAR-ADC诊断功能

•开路和断路检测

ADC conversion time

下表显示了不同内部时钟频率下的ADC转换时间。有关更多细节,请参阅时钟章节。

模拟输入采样和扫描组处理时间

ADCF具有嵌入式采样保持电路。当ADCFnSGCRx的SGST位设置为1且扫描组开始延迟时间(tD)过去后,ADC执行采样,然后开始顺序比较转换处理。

扫描组处理时间tSG包括扫描组开始延迟时间tD (Scan group processing time)、采样时间tSPL (sampling time)、顺序比较转换处理时间tSAR (sequential compare conversion processing time)和扫描组结束延迟时间tED (Scan group end delay time)。

Table27.43, Scan Group Processing Time,显示扫描组处理时间

在多周期扫描模式下,当i =虚拟通道数,j =多周期数时,扫描组处理时间tSG (scan group processing time)的计算公式如下:

tSG = tD + (tSPL + tSAR) × i × j + tED

连续扫描模式下的第一周期扫描:tD + (tSPL + tSAR) × i

连续扫描模式下的第二次及后续扫描:(tSPL + tSAR) × i

Hardware Trigger Functions

对于每个扫描组x,提供一个触发输入SGx_TRG,启动相应扫描组通道的转换

扫描组转换触发信号SGx_TRG可以由几个来源产生:

•扫描组SG0至SG4

外部触发信号adtrn。

有关连接触发信号的详细信息,请参见Section 26, Peripheral Interconnect(PIC).

•扫描组SG3 ~ SG4

SG3、SG4可通过A/D定时器启动

AD时间可以通过PIC的触发信号启动

外部触发信号ADCFnTRGx通过数字噪声滤波器来消除噪声和信号故障。

Operation

Initial Settings

Trigger Input Flow

ADCF的A/D转换启动触发器包括硬件触发器、软件触发器和A/D定时器触发器。扫描组x (x = 0 ~ 4)支持ADSTART和SGST指定的软件触发(SG0到SG4), SGx_TRG (x = 0到4)的硬件触发器,以及A/D定时器触发器(SG3和SG4)。

Difference among P1M-C, P1H-C and P1H-CE


P1H-C只有32路ADC通道

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/298916.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

SPRING BOOT发送邮件验证码(Gmail邮箱)

SPRING BOOT邮件发送验证码 一、Gmail邮箱配置 1、进入Gmail(https://mail.google.com) 2、打开谷歌右上角设置 3、启用POP/IMP 4、启用两步验证(https://myaccount.google.com/security) 5、建立应用程式密码 6、复制保存应用程式密码 二、代码 1、引入依赖 <d…

【LMM 012】TinyGPT-V:24G显存训练,8G显存推理的高效多模态大模型

论文标题&#xff1a;TinyGPT-V: Efficient Multimodal Large Language Model via Small Backbones 论文作者&#xff1a;Zhengqing Yuan, Zhaoxu Li, Lichao Sun 作者单位&#xff1a;Anhui Polytechnic University, Nanyang Technological University, Lehigh University 论文…

Window端口占用处理

您好&#xff0c;我是码农飞哥&#xff08;wei158556&#xff09;&#xff0c;感谢您阅读本文&#xff0c;欢迎一键三连哦。 &#x1f4aa;&#x1f3fb; 1. Python基础专栏&#xff0c;基础知识一网打尽&#xff0c;9.9元买不了吃亏&#xff0c;买不了上当。 Python从入门到精…

C#编程-实现函数重载

考虑一个示例&#xff1a;您必须编写一个程序来实现计算器的功能。计算器执行各种运算&#xff0c;例如数字的加、减及乘等。可以对任何类型的数据执行这些运算。这是否意味着您必须定义单独的函数名&#xff08;如addInteger、addFloat和addDoublie&#xff09;对每种此类数字…

VMware VCP+VCAP持续通过

稳定通过&#xff0c;安全可靠

LOG滤波器原理探究---计算机视觉和特征检测

先来看几个滤波器公式&#xff1a; 高斯滤波器&#xff1a; G ( x , y ; σ ) 1 2 π σ 2 e − x 2 y 2 2 σ 2 G(x,y;\sigma) \frac{1}{2 \pi \sigma^2} e^{-\frac{x^2 y^2}{2\sigma^2}} G(x,y;σ)2πσ21​e−2σ2x2y2​ 图像的二阶导数&#xff1a; ∇ 2 f ∂ 2 f ∂…

看图识熊(二)

使用Tools for AI封装onnx模型并推理 进行这一步之前&#xff0c;请确保已正确安装配置了Visual Studio 2017 和 Microsoft Visual Studio Tools for AI环境。 项目的代码也可以在这里找到&#xff0c;下面的步骤是带着大家从头到尾做一遍。 界面设计 创建Windows窗体应用(…

ssm基于Java Web的怀旧唱片售卖系统论文

摘 要 传统办法管理信息首先需要花费的时间比较多&#xff0c;其次数据出错率比较高&#xff0c;而且对错误的数据进行更改也比较困难&#xff0c;最后&#xff0c;检索数据费事费力。因此&#xff0c;在计算机上安装怀旧唱片售卖系统软件来发挥其高效地信息处理的作用&#x…

k8s集群部署Harbor镜像仓库

部署k8s集群参考 https://blog.csdn.net/m0_59933574/article/details/134936188?spm1001.2014.3001.5502https://blog.csdn.net/m0_59933574/article/details/134936188?spm1001.2014.3001.5502 安装Harbor 准备一台干净服务器&#xff0c;关闭防火墙与selinux 下载dock…

探索 2024 年:未来可能带来的新奇事物

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

XML技术分析02

一、XML——树形结构 <?xml version"1.0" encoding"ISO-8859-1"?><note><to>George</to><from>John</from><heading>Reminder</heading><body>Dont forget the meeting!</body> </note…

LeetCode 42:接雨水

一、题目描述 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图&#xff0c;计算按此排列的柱子&#xff0c;下雨之后能接多少雨水。 示例 1&#xff1a; 输入&#xff1a;height [0,1,0,2,1,0,1,3,2,1,2,1] 输出&#xff1a;6 解释&#xff1a;上面是由数组 [0,1,0,2,1,0,…

LeetCode刷题--- 不同路径 II

个人主页&#xff1a;元清加油_【C】,【C语言】,【数据结构与算法】-CSDN博客 个人专栏 力扣递归算法题 http://t.csdnimg.cn/yUl2I 【C】 ​​​​​​http://t.csdnimg.cn/6AbpV 数据结构与算法 ​​​http://t.csdnimg.cn/hKh2l 前言&#xff1a;这个专栏主要讲述动…

Simply主题 简约风格的Emlog博客模板 响应式布局

主题介绍 Simply是一款简约风格的Emlog博客模板&#xff0c;响应式布局、界面简单大方&#xff0c;实用性强&#xff01; 支持夜间模式&#xff0c;采用localStorage存储配置。IOS系统下支持随系统自动切换浅/深色模式。 文章页支持显示文章字数及阅读时间。 支持http/https …

书摘:C 嵌入式系统设计模式 06

本书的原著为&#xff1a;《Design Patterns for Embedded Systems in C ——An Embedded Software Engineering Toolkit 》&#xff0c;讲解的是嵌入式系统设计模式&#xff0c;是一本不可多得的好书。 本系列描述我对书中内容的理解。本文章描述原书第 2 章的内容。 作为嵌入…

BetaFlight开源代码之电压校准

BetaFlight开源代码之电压校准 1. 源由2. 分析数据流3. 采样电路3. 原理4. 示例5. 实测&转换数据6. 参考资料 1. 源由 既然复杂的BetaFlight开源代码之电流校准都过了一遍&#xff0c;电压相对来说是比较简单的&#xff0c;一起过一下 2. 分析数据流 电源路径1》采样电路…

Pix2Seq 算法阅读记录

目录 前向传播过程 训练过程&#xff1a; 网络结构 前向传播过程 batch_preds--> tgt-->tgtcat(tgt, padding)-->tgt_embedding-->tgt_mask,tgt_padding_mask 以NLP的角度&#xff0c;tgt 代表了 词汇表的长度&#xff0c;encoder部分直接对图像进行处理&#…

优势演员-评论家算法 A2C

优势演员-评论家算法 A2C 优势演员-评论家算法 A2C主要思想目标函数 优势演员-评论家算法 A2C 前置知识&#xff1a;演员-评论家算法&#xff1a;多智能体强化学习核心框架 主要思想 AC 网络结构&#xff1a; 策略网络 - 演员: 这个网络负责根据当前的状态选择动作。它输出的是…

LabVIEW在指针式仪表读数中的应用

在LabVIEW环境中&#xff0c;为实现指针式仪表的自动读数&#xff0c;首先进行图像预处理&#xff0c;包括图像缩放、灰度化和二值化&#xff0c;以提高处理速度和减少噪声干扰。利用LabVIEW的图像处理功能&#xff0c;灰度化和二值化操作简化了图像的色彩信息&#xff0c;便于…

Java HashMap 面试题(一)

HashMap 面试题&#xff08;一&#xff09; 文章目录 HashMap 面试题&#xff08;一&#xff09;3.3 面试题-说一下HashMap的实现原理&#xff1f;面试题-HashMap的put方法的具体流程hashMap常见属性源码分析 3.3 面试题-说一下HashMap的实现原理&#xff1f; HashMap的数据结…