FAQ0123 PDF预览

FAQ0123

更新时间: 2025-02-09 14:57:47
品牌 Logo 应用领域
雅特力 - ARTERY /
页数 文件大小 规格书
4页 194K
描述
AT32 部分型号不支持ADC 精度调整,固定以12 位精度进行采样转换。当应用期望使用8 位精度数据时,按照常规用法将无法满足。此时应如何处理?

FAQ0123 数据手册

 浏览型号FAQ0123的Datasheet PDF文件第2页浏览型号FAQ0123的Datasheet PDF文件第3页浏览型号FAQ0123的Datasheet PDF文件第4页 
使用 DMA 方式实现 ADC 8 位精度采样  
FAQ0123  
常见问题解答  
使用DMA方式实现ADC 8位精度采样  
QuestionsAT32 部分型号不支持 ADC 精度调整,固定以 12 位精度进行采样转换。当应用期望  
使用 8 位精度数据时,按照常规用法将无法满足。此时应如何处理?  
Answer:  
采用特定 ADC 用法配置,通过硬件自动实现数据精度的调整。  
ADC1 为例,具体实现为:  
1ADC 配置注意点  
A. ADC 采用“左对齐  
adc_base_struct.data_align = ADC_LEFT_ALIGNMENT;  
adc_base_config(ADC1,&adc_base_struct);  
B. DMA 以“byte”为单位进行传输  
__IO uint8_t adc1_ordinary_valuetab[5];  
dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_BYTE;  
dma_init_struct.memory_data_width =DMA_MEMORY_DATA_WIDTH_ BYTE;  
dma_init(DMA1_CHANNEL1,&dma_init_struct);  
C. DMA“源地址ADC 规则数据寄存器地址 + 1的地址byte 为单位的数组  
dma_init_struct.peripheral_base_addr =(uint32_t)&(ADC1->odt)+1;  
dma_init_struct.memory_base_addr =(uint32_t)adc1_ordinary_valuetab;  
dma_init(DMA1_CHANNEL1,&dma_init_struct);  
2软件处理  
不涉及。ADC 配置修改后,adc1_ordinary_valuetab 内存储的就是舍弃了低四位后的 8 位精度数据。  
注意事项:  
A. 此方法仅适用于 8 位精度,其他精度不支持;  
B. 此方法仅适用于规则组数据;  
C. 此方法不适用双 ADC 模式;  
D. 此方法虽然最终有按照期望精度取数据,但实际其转换时间还是以 12 位精度进行计算。  
2022.3.4  
1 页  
版本 2.0.0  

与FAQ0123相关器件

型号 品牌 获取价格 描述 数据表
FAQ0124 ARTERY

获取价格

使用Keil 软件时,配置某IO 口为推挽输出,并需要快速翻转该IO 口,在-O0 优化等
FAQ0125 ARTERY

获取价格

AT32F43x 的ADC 普通位移模式,在某些特殊配置条件下的通道转换时间比理论转换时间
FAQ0126 ARTERY

获取价格

AT32F4xx 系列GPIO 的各种模式内部上/下拉电阻配置是否有效?
FAQ0127 ARTERY

获取价格

AT32F425系列高级访问保护注意事项
FAQ0128 ARTERY

获取价格

非5V 兼容IO 如何连接CAN 收发器
FAQ0129 ARTERY

获取价格

在使用AT-START 开发板时,通过两侧排针测试时发现PA11/PA12 引脚无输出?
FAQ0130 ARTERY

获取价格

在使用QSPI 时,当使用XIP 模式时,运行过程中读写外接器件可能出现非预期的数据,导致
FAQ0131 ARTERY

获取价格

当擦除SPIM 的操作代码放置在非零等待区(NZW)时,可能导致程序执行异常、进hardf
FAQ0132 ARTERY

获取价格

JLink 如何手动添加Artery MCU?
FAQ0133 ARTERY

获取价格

介绍一种保障回调任务可被精确响应的方法