您好,欢迎访问三七文档
当前位置:首页 > 金融/证券 > 综合/其它 > MPC5744P-ADC采集
MPC5744P-ADC配置1、综述在MPC5744P微控制器上有4个模拟数字转换器(ADC)模块。每个ADC由16个通道组成。采用12位连续近似寄存器(SAR)结构选择了特定的ADC集,允许在小于1us的情况下进行精确转换和采样。为了在运行你的应用程序时允许温度读数,ADC0有一个用于温度传感器TSENS0,ADC1有一个通道用于温度传感器TSENS1。此外,所有四个ADCs都具有看门狗功能,可以将ADC结果与预先定义的级别进行比较,然后将结果存储在适当的ADC结果位置。ADCs在两种不同的模式下运行:常规模式和运动控制模式。常规模式特点:•寄存器基于CPU的接口:每个通道的都有一个结果寄存器•ADC状态机管理三个请求流:常规命令、硬件注入命令、软件注入命令•软件和硬件注入之间的可选优先级•16路模拟看门狗将ADC的结果与预定义的级别(低、高、范围)进行比较。•DMA接口兼容电机控制模式特点:•仅触发模式•四个独立的结果队列(1x16项、2x8项、1x4项)•结果校准电路(左对齐,右对齐)•32位的读模式,它允许16位部分中的通道ID•DMA接口兼容与四个ADCs集成的是两个交叉触发单元(CTUs)。每个交叉触发单元(CTU)都允许在用户选择的条件下自动生成ADC转换请求,而CPU干预最少。这些转换请求发生在所谓的CTU控制模式中,发生在PWM期间,用于动态配置。下面的图表显示了四个不同的ADCs以及它们与设备上其他模块的交互。所有四个ADCs只有两个可能的ADC供应:ADC0和ADC1。必须启用这两种设备才能使用ADC功能。CTU接口每个ADC都由CTU(在CTU控制模式)控制。在这种模式下,CTU可以通过发送ADC命令来控制每个ADC。在CTU控制模式下,CPU能够在ADC寄存器中写入,但是它不能启动新的转换。对于MPC5744P设备,CTU0是ADC0和ADC1的控制器,而CTU1则控制ADC2和ADC3模块。eTimer接口所有四个ADCs都允许一个外部触发源启动转换。该特性通过在ADC的主配置寄存器(MCR)中的注入外部触发器(JTRGEN)位启用。对于MPC5744P,这个外部触发特性连接到一个eTimer模块的定时器通道5,eTimer发送一个外部触发器事件。eTimer1连接到ADC0和ADC1,eTimer2连接到ADC2和ADC3模块。DMA接口对于每个ADC,可以在每个通道转换后执行DMA请求。、FCCU接口MPC5744P设备上的每个ADC都连接到故障收集和控制单元(FCCU),并具有创建关键和非关键错误的能力。关于这些错误的含义,请参阅“FCCU”一章。ADCpinmuxing管脚多路复用技术ADC转换通道参考电压VDD_HV_ADRE0和VDD_HV_ADRE1都必须启动。两者都必须处于同一水平ADC模数转换器(ADC)使用连续的近似寄存器(SAR)体系结构,为广泛的应用程序提供精确和快速的转换。ADC由以下组成:•ADC数字接口(ADCD)。ADCD包含通过主机总线访问软件的配置、控制和状态寄存器。转换后的值存储在一个寄存器中,然后通过DMA或主机访问传输。•ADC模拟硬macrocell(ADCA)。模拟通道输入被输入到ADCA的输入中。每个通道都是在一个特定的时间内采样,并通过ADCA的数字模拟转换器(DAC)与数字代码产生的模拟电压进行比较。对ADCD进行比较结果,生成转换后的数字值ADC时钟信号ADC使用下列时钟信号:•Busclock—在ADCD上的总线时钟。用于访问寄存器和跨模块接口的操作时钟。•AD_clk—该信号由总线时钟派生而来,它是ADCA和ADCD中的SAR控制器的操作时钟。两个时钟之间的关系是由ADC_MCR[ADCLKSEL]字段的设置决定的。•如果ADC_MCR[ADCLKSEL]是1,时钟信号是一样的•如果ADC_MCR[ADCLKSEL]是0,AD_clk是总线时钟的一半注意:1.不管ADC_MCR[ADCLKSEL]字段的设置是什么,ADC时钟(AD_clk)的最大时钟速度是80MHz。2.根据你的芯片的配置和时间的需要,MCR[ADCLKSEL]可能永远需要是1。通道配置可以通过以下方式配置ADC通道:•通过编程转换计时寄存器(CTR),采样持续时间是独立控制的。•可以对单独的屏蔽寄存器进行编程,以配置要转换的通道(这些寄存器中的每个位代表一个通道)。•温度传感器(TSENS)和其他特殊通道(带隙、供应等)可在特定通道上使用。(查看可用的特定于芯片的配置。)•模拟看门狗允许对来自输入通道的转换值进行连续的硬件监视。(查看可用的特定于芯片的配置。)•电容自检测试•预采样开始转换转换可以由软件或硬件发起。ADCD有一个芯片上的交叉触发单元(CTU)接口,它也可以启动转换。CTU的界面支持CTU的控制模式。CTU触发的应用程序的一个例子就是当前的灯或led灯的控制回路。使用一个芯片上的定时器模块作为触发源,CTU可以发起周期性的转换。中断/DMA支持ADCD为各种通道转换条件提供了对每种通道的中断/DMA支持。数据可以通过DMA传输自测ADCD可以通过各种自我测试定期检查ADCA的健康状况,并在可用的情况下将任何关键/非关键故障与芯片故障收集和控制单元(FCCU)联系起来。不同测试的严重性(关键/非关键)是可编程的。特性:•分辨率:12位•最大速度:1M采样数/秒在80MHz•16通道•采样时间寄存器•精密通道:•0-15(ADC0)•0-15(ADC1)•0-41014(ADC2)•0-710-14(ADC3)注意:温度传感器使用CTR1寄存器值•操作模式:•普通•注入•CTU•正常模式支持单点/扫描(连续)•注入模式支持单点•预采样•省电模式•两个中断特性允许你在一个链中终止一个单通道或在普通的和注入的模式中终止一个完整的链•每个通道都有一个专用寄存器用于转换结果和操作模式(正常的、注入的或CTU)•模拟看门狗支持:•多达16个模拟监管机构•可配置的不同通道•自动关闭时钟特性•可编程的时钟预分频器(总线时钟除以2)•CTU控制方式•对每个通道的DMA支持•中断条件:•为正常的和注入的转换的单个通道的转换结束•对于正常的和注入的转换的链的转换结束•CTU转换结束•看门狗阈值交叉•软件启动校准•自我测试功能内存映射/寄存器定义注意:对于保留的和超出范围的地址,将会有一个访问错误。特殊的例外是039Ch和03A4h的预留空间:不要在这些位置写或更改任何值,否则ADC可能会出现故障。注意:查看特定于芯片的配置信息,因为并非所有的寄存器都可以在所有ADC实例中使用。控制逻辑寄存器:Controllogicregisters:•MainConfigurationRegister(ADC_MCR)•MainStatusregister(ADC_MSR)•InterruptStatusRegister(ADC_ISR)•ChannelPendingregister0(ADC_CEOCFR0)•InterruptMaskRegister(ADC_IMR)•ChannelInterruptMaskRegister0(ADC_CIMR0)•WatchdogThresholdInterruptStatusRegister(ADC_WTISR)•WatchdogThresholdInterruptMaskRegister(ADC_WTIMR)•AnalogWatchdogOutofRangeRegister0(ADC_AWORR0)DMAregisters:•DMAEnableregister(ADC_DMAE)•DMAChannelSelectRegister0(ADC_DMAR0)Thresholdregisters:这些寄存器用于存储用户可编程的低和高阈值12位值。这些记录包括:•ThresholdRegister(ADC_THRHLRn)Presamplingregisters:•PresamplingControlRegister(ADC_PSCR)•Presamplingregister0(ADC_PSR0)Conversiontimingregisters:•ConversionTimingRegister0(ADC_CTR0)•ConversionTimingRegister1(ADC_CTR1)Maskregister:这些寄存器用于编程在正常的和注入的转换过程中必须转换的输入通道。这些寄存器包括•NormalConversionMaskRegister0(ADC_NCMR0)•InjectedConversionMaskRegister0(ADC_JCMR0)Delayregisters:•PowerDownExitDelayRegister(ADC_PDEDR)Dataregisters:内部通道的转换结果被加载到数据寄存器中。每个数据寄存器也提供关于相应结果的信息。这些寄存器从CDR0开始:•ChannelDataRegistern(PrecisionChannels)(ADC_CDRn)Selftestregisters:•SelfTestConfigurationRegister1(ADC_STCR1)•SelfTestConfigurationRegister2(ADC_STCR2)•SelfTestConfigurationRegister3(ADC_STCR3)•SelfTestStatusRegister1(ADC_STSR1)•SelfTestStatusRegister2(ADC_STSR2)•SelfTestStatusRegister3(ADC_STSR3)•SelfTestStatusRegister4(ADC_STSR4)•SelfTestBaudRateRegister(ADC_STBRR)•SelfTestAnalogWatchdogRegister0(ADC_STAW0R)•SelfTestAnalogWatchdogRegister4(ADC_STAW4R)•SelfTestAnalogWatchdogRegister1A(ADC_STAW1AR)•SelfTestAnalogWatchdogRegister1B(ADC_STAW1BR)•SelfTestAnalogWatchdogRegister2(ADC_STAW2R)•SelfTestAnalogWatchdogRegister5(ADC_STAW5R)•SelfTestDataRegister1(ADC_STDR1)•SelfTestDataRegister2(ADC_STDR2)Otherregistersinclude:•Calibration,BISTControlandstatusRegister(ADC_CALBISTREG)•OffsetandGainUserRegister(ADC_OFSGNUSR)功能描述转换在powerup或重置之后,ADC位于电源关闭模式下,直到MCR[PWDN]字段被写入。下面列出了一些配置,只有在断电模式下才可以使用,这些配置必须在退出电源关闭模式之前进行处理。SAR控制器的时钟选择(AD_clk):MCR[ADCLKSEL]在上述配置之后,通过将“0”写入MCR[PWDN],需要从省电模式中取出ADC,转换可以在以下模式中启动:•正常•注入•CTU触发1.1正常的转换通常用于转换通道的转换模式称为正常转换。对可用的普通转换屏蔽寄存器NCMR(s)((ADC_NCMRn)进行编程,选择通道(s)。每个通道都可以通过在NCMRn寄存器的相应字段中设置位来单独启用。•NCMR0提供精确通道:•0-15(ADC0)•0-15(ADC1)•0-41014(ADC2)•0-710-14(ADC3)屏蔽寄存器(s)必须在启动转换之前进行编程,并且在所有选定通道的转换结束之前不能更改。转换总是从选择的最低的通道数开始,然后顺序到
本文标题:MPC5744P-ADC采集
链接地址:https://www.777doc.com/doc-6499513 .html