草庐IT

adc_dma_read

全部标签

GD32F103串口DMA收发(空闲中断 + DMA)

GD32F103串口DMA收发(空闲中断+DMA)此前写了一篇DMA串口收发的文章,参照的是GD官方例程,虽然实现了串口数据的传输,后面在实际项目应用时发现还是有点问题,不能完全按照预想的方式进行数据传输和处理,经过不断的调试,现更新如下,特此记录。GD32F103串口DMA收发(空闲中断+DMA)1.串口IO初始化这次使用的是GD32F103CBT6串口2,对应Pin脚PB10、PB11。代码如下:uint8_trxbuffer[84];uint8_ttxbuffer[84]={0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,0x0a};#defin

基于HAL库的ADC采样(常规转换+注入模式)ADC_Regular_ConversionMode & ADC_Injected_ConversionMode

基于HAL库的ADC采样(常规转换+注入模式)ADC注入模式触发源TIM1初始化ADC初始化ADC的可选触发源(Regular/Injected)ADC初始化ADC_Regular_ModeADC_Injected_ModeADC采样时间ADC数据读取ADC_Regular_Mode常规通道数据读取ADC_Injected_Mode数据读取第一次使用,难免会有缺漏,后面发现不合适的地方会再进行更新在ADCRegularConversionMode下对多通道模拟信号进行采集的最好办法是使用DMA,即直接存储器读取方式。但是在一些场合下,如电机控制,在SVPWM中我们要用到供电电压U_dc,并且我

Error in onChooseAvatar hook: “TypeError: Cannot read property ‘apply‘ of undefined“

unapp编译微信小程序后运行报错[Vuewarn]:ErrorinonChooseAvatarhook:"TypeError:Cannotreadproperty'apply'ofundefined"错误信息vendor.js?t=wechat&s=1677471036886&v=f9c5fe5701ec9bf8121e474b20968fc0:10[Vuewarn]:ErrorinonChooseAvatarhook:"TypeError:Cannotreadproperty'apply'ofundefined"(foundinpages/my/modifInfo.vue)(env:Win

SAR ADC校准算法总结

1、算法分类模拟和数字:目前主流的校准技术中包括模拟校准和数字校准技术。模拟校准技术是通过在模拟电路中增加或修改特定电路结构来达到校准的目的,这种方法通常会较大地提高电路结构的复杂性和电路工作时序的复杂性,ADC的工作速率也会受到一定限制。数字校准技术则主要将校准模块放在数字电路中,对模拟电路结构的修改比较少,一般只是需要在模拟电路中增添简单的辅助结构,校准算法的适应性和可移植性较强,集成度也更高。前台和后台:校准技术根据校准的顺序可分为前台校准和后台校准。前台校准的意思是先通过某种方法得到电容失配的大小,然后在ADC正常工作的时候在模拟或者数字域把这些误差补偿回去,所以在ADC正常工作前需要

[npm]Cannot read properties of null (reading 'pickAlgorithm')

在使用npminstall命令安装依赖时,报出了Cannotreadpropertiesofnull(reading'pickAlgorithm')这个错误,这个可能是由于npm的缓存问题引起的。解决方法如下,输入命令:shellnpmcacheclear--force清除一下npm的缓存,基本上应该能行了。

ADC(模数转换)详解

ADC(模数转换)详解前言ADC的定义ADC简介ADC特性ADC时钟工作模式单通道单次转换练习多通道扫描模式单次转换前言在STM32微控制器中,ADC代表模数转换器(Analog-to-DigitalConverter)。ADC是一种用于将模拟信号转换为数字信号的电子设备或模块。STM32微控制器中的ADC模块用于将模拟电压信号转换为数字表示,以便微控制器可以对其进行处理和分析。它可以将外部传感器、电压源或其他模拟信号的变化转换为微控制器可以理解和处理的数字形式。ADC的工作原理是将连续变化的模拟电压信号分割成离散的取样,并对每个取样进行量化,生成相应的数字表示。通常,ADC使用一种称为逐次逼

解决Python中使用pd.read_excel报错的问题

解决Python中使用pd.read_excel报错的问题在Python中,我们常常需要读取Excel表格文件来进行数据分析和处理。其中,pandas库的read_excel函数是一个十分常用的方法,可以直接读取Excel表格并将其转化成DataFrame格式,非常方便。但是,在使用read_excel函数时,有时会出现xlrd.biffh.XLRDError:Excelxlsxfilenotsupported的错误,让我们不能正常的读取Excel表格。那么,该如何解决这个问题呢?出现这个错误的原因是因为我们的代码使用的是xlrd库去读取xlsx格式的Excel文件,而xlrd库并不支持xls

单片机的ADC

    如何理解ADC。ADC就是将模拟量转换成数字量的过程,就是转换为计算机所能存储的0和1序列,比如将模拟量转换为一个字节,所以这个字节的大小要能反应模拟量的大小,比如一个0-5V的电压测量量(外部输入电压最小0V,最大为5V),将0V对应成00000000,将5V对应为11111111。一个字节能够表示2^8个状态,所以可以将0-5V这个区域分会成2^8个,每个区域对应5/(2^8)V。    普中科技单片机的ADC模块的电路图如下所示,ADC模块用的是XPT2046芯片。 参考电压         参考电压值直接决定ADC的输入范围,参考电压可以使用内部参考电压,也可以从外部直接输入1

undefined is not iterable (cannot read property Symbol(Symbol.iterator)) at _iterableToArray

undefinedisnotiterable(cannotreadpropertySymbol(Symbol.iterator))at_iterableToArray如果报了这个错误,说明你代码中可能用了es6中的拓展运算符我的是这样用的asyncloadMore(){//获取朋友圈动态 letresponse=awaitthis.$api.myCollect()this.arr=[...this.arr,...response.data.Arr];}解决方法是:做个判断asyncloadMore(){//获取朋友圈动态 letresponse=awaitthis.$api.myCollect

关于STM32利用TIM+PWM+DMA控制WS2812

开发环境MCU:STM32F103c8t6开发工具:STM32CubeMX 使用板子参考原理图:STM32F103C8T6最小系统板开源链接PWM脉宽调制(PWM)基本原理:控制方式就是对逆变电路开关器件的通断进行控制,使输出端得到一系列幅值相等但宽度不一致的脉冲,用这些脉冲来代替正弦波或所需要的波形。也就是在输出波形的半个周期中产生多个脉冲,使各脉冲的等值电压为正弦波形,所获得的输出平滑且低次谐波少。按一定的规则对各脉冲的宽度进行调制,既可改变逆变电路输出电压的大小,也可改变输出频率 。通过数据手册我们可以看到TIM2,TIM3,TIM4(通用定时器)挂载在APB2总线上,每个通用定时器都有