【经验】32位MCU CS32F030C8T6-RA采用轮询方式一次转换多个通道读取ADC结果时需注意的地方
芯海推出的32位MCU CS32F030C8T6-RA是一款12寸晶圆的产品,采用高性能的ARM Cortex®-M0内核,嵌入高达64K Bytes flash和8K Bytes SRAM,最高工作频率48MHz。芯片提供标准的通信接口、ADC、定时器、PWM等丰富的资源。在工业控制、消费类电子等方面有的广泛的应用。
之前的文章里,我们说过以一次性选择多个通道进行转换,那么一个结果寄存器根据EOCG和EOCH状态寄存器来通过轮询的方式读取ADC结果寄存器中每次转换的结果(当然我们建议是采用DMA和中断模式去访问),那么如果使用轮询方式访问会需要注意些什么呢?我们先看下这两个寄存器的描述:
然后话不多说,我们上代码:转换每个通道的结果保存在adc_conv数组里,i为转换通道数量。
我们用和标志寄存器颜色对应颜色箭头标注了代码,大家可以看出来在等待EOCG信号的while循环内和循环外我们都有判断EOCH信号,按之前的文章说法每一次通道转换完成后都会置EOCH标志,所有通道结束后才置EOCG标志,为什么需要2号红色箭头的EOCH信号判断语句呢?
这就是我们今天要说的注意事项:因为我们采用的是轮询方式,要考虑到CPU顺序执行指令和状态标记置位的时间关系。假设我们的ADC最后一个通道在刚刚执行完1号红色箭头指向的语句后,正好完成了转换,这时候EOCH和EOCG会同时置位,这时候红色箭头1代码就不会再被执行。所以我们需要红色箭头2指向的代码来完成ADC结果的读取。
那有的小伙伴又要问了,红色箭头2的位置为什么还要判断呢?为什么不直接读一次呢?那我们试想一下最后一次的转换正好被红色箭头1指向的代码读取,那么红色箭头2的位置i再自增一次,转换通道的数量就对应不上了。
- |
- +1 赞 0
- 收藏
- 评论 0
本文由土肥圆提供,版权归世强硬创平台所有,非经授权,任何媒体、网站或个人不得转载,授权转载时须注明“来源:世强硬创平台”。
相关推荐
【经验】在keil中添加芯海MCU CS32A010K8V7的支持包
本文将介绍在keil中添加芯海MCU CS32A010K8V7的支持包,芯海科技推出的CS32A010K8V7是一款32Pin脚的ARM 32位构架Cortex-M0核的MCU,内置64K Flash,1路SPI、2路USART支持FIFO等丰富的资源。
【经验】实战芯海CS32F031C8T6 MCU使用GCC编译器的startup.s启动文件
本文将以芯海推出的32位MCU CS32F031C8T6为例,给大家分享一个startup.s文件,希望帮助有需要使用GCC开发芯海CS32F031C8T6产品的各位小伙伴。
【经验】芯海科技通用32位MCU有效规避意外掉电的硬件设计方案
本文以芯海科技MCU CS32L010F8U6为例,简述在进行硬件设计的时候如何有效规避因为意外掉电而造成工作异常的方案。在进行硬件电路设计的时候,我们可以在单片机供电引脚上接一个电容到GND以存储电量,防止芯片意外掉电
海信旗下“隐形冠军”信芯微,授权世强硬创代理32位MCU等产品
信芯微32位MCU及蓝牙芯片主要应用于智能家电、工业控制、消费电子等领域。
灵动微电子扎根张江造“芯”,打造本土32位MCU知名品牌
灵动微电子成立于2011年,2016年进军MCU市场,2019年积极向工业、大家电、汽车等领域发力,目前已涵盖消费电子、电机与电源、家电、汽车、计算机与通信、工业控制等应用领域,客户群体包括飞利浦、小米、汇川、海尔、海信、美的等,是中国本土领先的通用32位MCU 产品及解决方案供应商。
【IC】灵动新推出32位MCU MM32F0120,主频高达72MHz,提供64KB Flash和8KB RAM
灵动微电子发布的MM32F0120,搭载Cortex M0内核,主频高达72MHz,提供64KB Flash和8KB RAM,最高支持48pin封装。适用于屏显控制、电动玩具、电源管理、马达控制、无线快充等多种应用场合。
芯海科技CS32F061:集成12位DAC高性价比信号链MCU,具有丰富的模拟特性,满足高精度需要
芯海科技32位通用MCU系列全新推出集成12位DAC的高性价比信号链MCU芯片CS32F061。这款MCU具备丰富的模拟特性,内置可编程逻辑单元,可简化硬件设计,是高精度数据处理及灵活信号链设计的嵌入式系统的理想选择,在电动工具、电源管理、工业控制及通信等领域拥有广泛应用前景。
【应用】国产32位MCU AT32F403ARCT7用于智能止鼾枕,最高主频240MHz
智能止鼾枕是一种非穿戴式的智能止鼾设备,内置气囊,声音、压力传感器。本文推荐采用国产雅特力推出的32位MCU AT32F403ARCT7为主控, 最高主频240MHz,Flash 256k,工作温度范围-40~+105℃。
【IC】晟矽芯高性能通用型8位MCU MC32P7051系列,消费类电子、锂电数码产品、智能化产品的首选
MC32P7051是晟矽微电新推出的消费类电子产线的产品,是一款高性能IO+AD型8位MCU,采用RISC内核。该产品的各个IP,延续晟矽产品特色,用户可极速上手。可作为消费类电子、锂电数码产品、智能化产品的首选。
CS32F035/F036 32-bit ARM® M0-based MCU 数据手册
描述- 本资料详细介绍了芯海科技CS32F035/F036系列32位ARM®Cortex®-M0内核微控制器的技术规格和应用。该系列微控制器具备高性能ARM®Cortex®-M0 CPU,最高工作频率48MHz,内置32Kbytes闪存和4Kbytes SRAM,支持多种通信接口和丰富的外设功能,适用于智能家居、手持设备、消费类电子、工业测量和GPS平台等多种应用场景。
型号- CS32F0356,CS32F035F6PX,CS32F035F6P7,CS32F035K6U6,CS32F036F6P7,CS32F036F6PX,CS32F035,CS32F036K6T7,CS32F036K6U7,CS32F035 系列,CS32F036 系列,CS32F036G6U7
【元件】晟矽微电新推32位MCU系列MS60F321X,转换速率最高1Msps,专为光模块市场而设计
晟矽微电子推出全新的32位MCU系列产品MS60F321X,专为光模块市场而设计,与国际主流厂商产品Pin2Pin兼容,12位高精度ADC转换速率最高1Msps,增益误差±3LSB,为客户提供了无缝迁移的便利。
芯海32位MCU选型表
芯海32位MCU选型表包括常规32位MCU、32位低功耗MCU、32位车规MCU。该选型表的Core包括M0和M3两种,内含型号是芯海科技基于Arm® Cortex®-M内核、高可靠性的32位通用微控制器。 包括多款产品,内嵌Flash存储器,集成高性能ADC、丰富的模拟外设、适用于工业控制的高级定时器和通信接口,满足工业应用的质量和可靠性标准,被广泛用于工业控制、汽车电子、智能家居等领域。
产品型号
|
品类
|
Core
|
Freq.(MHz)
|
Flash(Bytes)
|
SRAM(Bytes)
|
IO
|
Adv.Timer
|
16bit GP Timer
|
SysTick
|
FWDT/WWDT
|
UART
|
SPI
|
I2C
|
12bit ADC Units(ch)
|
Temp.Sensor
|
Operating Temp.(℃)
|
Supply Voltage(V)
|
Package
|
CS32F030F6P6-RA
|
32位MCU
|
M0
|
48MHz
|
32KBytes
|
4KBytes
|
15
|
1
|
5
|
1
|
1/1
|
4
|
1
|
1
|
1(9)
|
Y
|
-40℃~85℃
|
2.0V~5.5V
|
TSSOP20
|
选型表 - 芯海 立即选型
芯海通用MCU选型表
M0内核MCU,CS32F03X系列,M0内核,最高主频48MHZ,Flash最大64K,RAM 8K,工作温度-40℃~105℃;M3内核MCU,CS32F103系列,M3内核,最高主频72MHz,Flash 128K,RAM 128K,工作温度-40℃~105℃。
产品型号
|
品类
|
Core
|
Freq.(MHz)
|
Flash(Bytes)
|
SRAM(Bytes)
|
IO
|
Adv. Timer
|
16bitGP Timer
|
32bitGP Timer
|
SysTick
|
FWDT/WWDT
|
RTC
|
UART
|
SPI
|
I2S
|
I2C
|
USB
|
CAN
|
12bit ADCUnits(ch)
|
Temp.Sensor
|
VBAT
|
Operating Temp.(℃)
|
Supply Voltage (V)
|
Package
|
Pack Type
|
Package Qty.
|
MSL
|
CS32F030F6P6-RA
|
通用MCU
|
M0
|
48
|
32K
|
4K
|
15
|
1
|
5
|
-
|
1
|
1/1
|
-
|
4
|
1
|
-
|
1
|
-
|
-
|
1(9)
|
Temp.Sensor
|
-
|
-40~85
|
2.0~5.5
|
TSSOP20
|
Tube
|
6000
|
3
|
选型表 - 芯海 立即选型
【经验】解析芯海科技32位MCU CS32F031G8U6在keil中新建工程的相关操作步骤
CS32F031G8U6是芯海科技推出的一款针对光模块应用的MCU解决方案,内部集成的温度传感器线性误差为+/-3℃,适用于10G 、25G、100G部分类型的光模块应用。本文介绍32位MCU CS32F031G8U6在keil中新建工程的相关操作步骤。
MS60F302x 32位MCU数据手册
描述- 本资料为晟矽微电生产的MS60F302x系列32位MCU的数据手册,介绍了该系列产品的特性、功能和应用。主要包括ARM Cortex-M0内核、丰富的片上资源、多种外设接口、低功耗模式和强大的电源管理系统。
型号- MS60F3023BP64,MS60F3023BP32,MS60F3023BP48,MS60F3026BP48,MS60F3025BP48,MS60F3026BP32,MS60F302X,MS60F3025BP64,MS60F3025BP32,MS60F301XBPXX,MS60F3026BP64
电子商城
现货市场
服务
可定制显示屏的尺寸0.96”~15.6”,分辨率80*160~3840*2160,TN/IPS视角,支持RGB、MCU、SPI、MIPI、LVDS、HDMI接口,配套定制玻璃、背光、FPCA/PCBA。
最小起订量: 1000 提交需求>
可定制PCB最高层数:32层;板材类型:罗杰斯高频板/泰康尼高频板/ZYF中英天线板/F4B高频板/高频电路板/高频混压板/高频纯压板等;最大加工尺寸:609*889mm。
最小起订量: 1 提交需求>
登录 | 立即注册
提交评论