我要提问
ARTICLE DETAIL

资讯详情

前沿编程新知与开发实战干货的深度解读。

ADC单通道

ADC单通道 ADC简介ADCAnalog-Digital Converter模拟 - 数字转换器ADC 可以将引脚上连续变化的模拟电压转换为内存中存储的数字变量建立模拟电路到数字电路的桥梁12 位逐次逼近型 ADC1us 转换时间输入电压范围0~3.3V转换结果范围0~409518 个输入通道可测量 16 个外部和 2 个内部信号源规则组和注入组两个转换单元模拟看门狗自动监测输入电压范围STM32F103C8T6 ADC 资源ADC1、ADC210 个外部输入通道ADC基本结构图ADC输入通道4种转换模式单次转换非扫描模式连续转换非扫描模式单次转换扫描模式连续转换扫描模式触发控制数据对齐数据右对齐数居左对齐转换时间1.AD转换的步骤采样保持量化编码2.STM32 ADC的总转换时间为 采样时间 12.5 个 ADC 周期3.例如当 ADCCLK14MHz采样时间为 1.5 个 ADC 周期​ 1.5 12.5 14 个 ADC 周期 1μs校准1.ADC有一个内置自校准模式校准可大幅减小因内部电容器组的变化而造成的准精度误差。校准期间在每个电容器上都会计算出一个误差修正码 (数字值)这个码用于消除在随后的转换中每个电容器上产生的误差2.建议在每次上电后执行一次校准3.启动校准前ADC 必须处于关电状态超过至少两个 ADC 时钟周期1.逐次逼近型ADCDMA简介DMA直接储存器存取DMA可以提供外设和存储器或者存储器和存储器之间的搞笑数据传输无需CPU干预节省了CPU的资源12个独立可配置的通道DMA1(7个通道)DMA2(5个通道)每个通道都支持软件触发和特定的的硬件触发STM32F103C8T6 DMA资源DMA1(7个通道)框图:DMA总线用于访问各个存储器内部多个通道进行独立数据转运仲裁器用于调度各个通道防止产生冲突AHB从设备用于配置DMA参数DMA请求用于硬件触发DMA的数据转运FlashROM只读存储器的一种如果通过主线直接访问的话CPU,DMU都是只能只读无法写入若配置Flash接口控制器就可以堆Flash进行写入SRAM运行内存可以任意读写外设寄存器根据参考手册判断是否可以写入数据寄存器可以正常读写基本结构DMA转运条件1.开关控制DMA_C必须使能2.传输计数器必须大于03.触发源必须有触发信号数据转运DMA任务将SRAM里的数组DataA转运到另一个数组DataB中ADC扫描模式DMA存储器映像例如在OLED显示屏上显示20000000表示村属的位置是SRAM区具体地址由编译器决定因为SRAM区没东西所以aa为第一个位置通过将这个变量coast修饰之后屏幕显示08000DF8,可以知道现在aa被储存在了Flash里例如2在屏幕上显示4001244C说明他是外设寄存器的区域固定的注const是c语言的关键字标识常量的意思被const修饰的变量在程序中只能读不能写
返回列表