利用stm32cube实现USB+FATFS的usbdisk程序--实现Fatfs对U盘文件操作

李黑山 回复了问题 • 101 人关注 • 41 个回复 • 29289 次浏览 • 2020-07-30 15:52 • 来自相关话题

stm32 hal库多通道采样例程源代码

倾情飘过 回复了问题 • 3 人关注 • 2 个回复 • 556 次浏览 • 2020-07-23 11:05 • 来自相关话题

stm32cubemx教程之DMA的MemToMem例子,即数据从flash到sram的DMA操作

名字什么的不重要啦⚡️ 回复了问题 • 8 人关注 • 5 个回复 • 9068 次浏览 • 2020-07-18 00:27 • 来自相关话题

终于利用stm32cube生成了usb虚拟串口程序并初步调试通过,分享代码和配置先!!

25944742 回复了问题 • 90 人关注 • 36 个回复 • 62726 次浏览 • 2020-07-11 12:39 • 来自相关话题

(转)基于STM32Cube的DAC数模转化,查表法模拟生成1KHZ正弦波

____________________ 回复了问题 • 4 人关注 • 1 个回复 • 4665 次浏览 • 2020-07-07 18:08 • 来自相关话题

利用U盘通过FatFs烧写BIN文件到flash实现芯片的在线编程(stm32F407+FatFs+USBdisk+Flash)

等着你° 回复了问题 • 18 人关注 • 3 个回复 • 5383 次浏览 • 2020-06-04 14:59 • 来自相关话题

一步步实现stm32cube的usb之CUSTOM_HID当串口使用 (stm32F407discoery板)

微微阳光 回复了问题 • 57 人关注 • 35 个回复 • 14653 次浏览 • 2020-06-04 11:58 • 来自相关话题

(转)基于STM32F303VC四个ADC模块同时转换之应用示例

admin 发表了文章 • 0 个评论 • 297 次浏览 • 2020-05-28 18:48 • 来自相关话题

本文转自: https://mp.weixin.qq.com/s/_iR_yVWwJOlTglfcOK3M2g 感谢:Miler 茶话MCU 分享欢迎大家去关注此公众号,里面干货不少.有人使用STM32F303VC开发电源方面的产品,想使用4个ADC模块进行同时采样转换,感觉不知怎么实现。这里简单介绍下实现过程,以供参考。现在希望四个ADC模块同时进行AD转换。我们使用双ADC主从模式,ADC1与ADC2成为一组,构成主从模式。同样,ADC3与ADC4也成为一组构成主从模式。其中,ADC1和ADC3分别为各组中的主,并让两组都工作在同时转换模式,对规则通道进行ADC转换。它们的转换使用同一定时器事件来触发,这里选择TIM4的更新事件来触发所有ADC的转换。如下图所示,主ADC的CH1与从ADC的CH16同时进行转换,主ADC的CH2与从ADC的CH14同时进行转换,就这样依次按照红色箭头方向进行。对于工作在主从模式的双ADC的转换结果,可以合并成一个字放在一个公共数据寄存器里ADCx_CDR( x=12 or 34),能被CPU或DMA读取访问。其中高半字存放从ADC的转换结果,低半字存放主ADC的转换结果。【这里各ADC的分辨率选用12位,转换结果采用右对齐方式。】大致原理就介绍到这里,更多细节还得看STM32参考手册。现在将4个ADC模块用起来,同时进行ADC转换,通过DMA传输ADC结果。这里只用到规则转换,其中,ADC1使用它的CH1/CH2,ADC2使用它的CH3/CH4, ADC3使用它的CH5/CH6, ADC4使用CH7/CH8。各ADC模块的采样通道连接如下图所示,ADC经定时器事件触发转换。现在基于STM32CubeMx进行初始化配置。先看TIM4的配置,它的更新事件作为所有ADC的转换触发事件。然后根据上面的规划,对4个ADC模块进行配置。4个ADC的配置除了各自选择的通道不一样外,在上面页面里的配置都相同。定时器触发,工作在双模式同时转换。 因为要对ADC结果实行DMA传输,根据当前所选择的工作模式,这里只需对ADC1和ADC3两个主ADC的转换事件进行DMA配置,如下图所示:我这里将DMA传输配置成循环模式,基于ADC3事件的DMA传输配置跟上面一样,只是DMA通道不同而已。将时钟等必要的配置完成后即可生成初始化代码。在初始化代码的基础上添加用户代码。我定义了2个数组pData12[4]、pData34[4]分别存放ADC1/2 与ADC3/4合并后的转换结果。基于STM32Cube HAL库组织代码,相关参考代码如下:代码直观明了,无须过多解释。提醒一点,使用双ADC模式时,从ADC要先于主ADC启动使能。 基于上面的规划与代码,测试结果如下:结果跟实际硬件连接情况完全吻合。上面只是基于双ADC模块规则通道的同时转换模式做了简单应用介绍。其实对于双ADC模式,还有其它更多转换模式,在STM32开发应用中可以灵活选择使用。 查看全部

本文转自: https://mp.weixin.qq.com/s/_iR_yVWwJOlTglfcOK3M2g

感谢:Miler 茶话MCU 分享

欢迎大家去关注此公众号,里面干货不少.


有人使用STM32F303VC开发电源方面的产品,想使用4ADC模块进行同时采样转换,感觉不知怎么实现。这里简单介绍下实现过程,以供参考。

image.png

现在希望ADC模块同时进行AD转换。我们使用双ADC主从模式,ADC1ADC2成为一组,构成主从模式。同样,ADC3ADC4也成为一组构成主从模式。其中,ADC1ADC3分别为各组中的主,并让两组都工作在同时转换模式,对规则通道进行ADC转换

image.png

它们的转换使用同一定时器事件来触发,这里选择TIM4的更新事件来触发所有ADC的转换。如下图所示,ADCCH1ADCCH16同时进行转换,主ADCCH2与从ADCCH14同时进行转换,就这样依次按照红色箭头方向进行。

image.png

对于工作在主从模式的双ADC的转换结果,可以合并成一个字放在一个公共数据寄存器里ADCx_CDR( x=12 or 34),能被CPUDMA读取访问其中高半字存放ADC的转换结果,低半字存放ADC的转换结果。【这里各ADC的分辨率选用12位,转换结果采用右对齐方式。】


image.png

大致原理就介绍到这里,更多细节还得看STM32参考手册。

现在将4ADC模块用起来,同时进行ADC转换,通过DMA传输ADC结果。这里只用到规则转换,其中,ADC1使用它的CH1/CH2,ADC2使用它的CH3/CH4, ADC3使用它的CH5/CH6, ADC4使用CH7/CH8

image.png

ADC模块的采样通道连接如下图所示,ADC经定时器事件触发转换。

image.png

现在基于STM32CubeMx进行初始化配置。


先看TIM4的配置,它的更新事件作为所有ADC的转换触发事件。

image.png

然后根据上面的规划,对4ADC模块进行配置。


image.png

4ADC的配置除了各自选择的通道不一样外,在上面页面里的配置都相同。定时器触发,工作在双模式同时转换。

 

因为要对ADC结果实行DMA传输,根据当前所选择的工作模式,这里只需对ADC1ADC3两个主ADC的转换事件进行DMA配置,如下图所示:

image.png



我这里将DMA传输配置成循环模式,基于ADC3事件的DMA传输配置跟上面一样,只是DMA通道不同而已。

将时钟等必要的配置完成后即可生成初始化代码。在初始化代码的基础上添加用户代码。

我定义了2个数组pData12[4]pData34[4]分别存放ADC1/2 ADC3/4合并后的转换结果。

image.png

基于STM32Cube HAL组织代码,相关参考代码如下:

image.png


代码直观明了,无须过多解释。提醒一点,使用双ADC模式时,ADC要先于ADC启动使能。

 

基于上面的规划与代码,测试结果如下:

image.png


结果跟实际硬件连接情况完全吻合。


上面只是基于双ADC模块规则通道的同时转换模式做了简单应用介绍。其实对于双ADC模式,还有其它更多转换模式,在STM32开发应用中可以灵活选择使用。


利用stm32cubemx移植freemodbus代码分享,片子是stm32F407,记录整个调试过程,供大家参考

ASWaterbenben 回复了问题 • 109 人关注 • 38 个回复 • 36182 次浏览 • 2020-04-15 11:57 • 来自相关话题

stm32cube中文教程1:软件设置,点亮led灯,并实现流水灯效果(HAL_GPIO_TogglePin)

guolh 回复了问题 • 54 人关注 • 17 个回复 • 31922 次浏览 • 2020-04-11 22:00 • 来自相关话题

(直播)利用stm32cubemx实现USBDFU对芯片程序的更新升级(板卡stm32f4discovery)

Music King 回复了问题 • 54 人关注 • 25 个回复 • 24371 次浏览 • 2020-04-07 20:06 • 来自相关话题

TIM1输入捕获模式测量脉冲宽度和频率 和 PWM输入模式的使用

xueding_edemao 回复了问题 • 21 人关注 • 9 个回复 • 25081 次浏览 • 2020-04-01 23:33 • 来自相关话题

再谈USB CDC 实现USB bulk传输

Variety ゞ 回复了问题 • 14 人关注 • 8 个回复 • 3578 次浏览 • 2020-03-26 16:19 • 来自相关话题

记录:利用U盘直接烧录hex文件到flash来更新app程序

坑自己星人 回复了问题 • 41 人关注 • 18 个回复 • 10804 次浏览 • 2020-02-27 10:59 • 来自相关话题

【HAL库每天一例】第002例:GPIO-流水灯

gprs08 回复了问题 • 61 人关注 • 12 个回复 • 11481 次浏览 • 2020-02-19 21:25 • 来自相关话题