原文:STM32 G431RB 利用PWM+DMA+Circular Mode 少量內存 實現對WS2812 燈帶的控制

在上一篇文章中DMA的設置使用的是 Normal Mode,這種實現方法的問題是費內存,要控制 顆燈帶的顏色,需要准備 TRST 約 K Byte的內存, 在MCU的世界里就麻煩了,這次這個項目中需要控制 個燈帶,兩個 ,一個 , 一個 .內存嚴重告急。采用DMA Circular模式能大大的減少內存的使用。 DMA Cirular模式就是DMA發送完成后,在調用HAL TIM PWM Stop ...

2022-01-15 17:17 0 981 推薦指數:

查看詳情

STM32 G431RB實現WS2812帶的控制PWM + DMA

項目中需要對WS2812帶進行控制,項目中的帶是21顆等,需求要求對所有的LED等設置顏色的時候是統一的顏色, 如果需要設置不同的顏色,也可以參考代碼進行修改。 實現方式是 PWM + DMA的方式,一次將21顆的顏色值都設定好。 參考的是這篇英文文章來實現的。 Interface ...

Wed Jan 12 03:25:00 CST 2022 0 949
STM32 G431RB 實現WS2812的跑馬燈,流水燈,呼吸特效

在前面的文章中實現了使用Circular模式控制WS2812帶,利用Freertos的Task的管理實現了跑馬燈,流水燈和呼吸效。 代碼提交到Github上了。 https://github.com/magicduan/demo_pwm_dma_circular實現中碰到一個較大 ...

Mon Jan 24 23:17:00 CST 2022 0 1596
STM32使用SPI驅動WS2812

由來 最近有使用ws2812實現大規模帶的需求,所以研究了一下如何驅動一排排的帶。 目前網上有開源的WS2812驅動,它是用Arduino實現的,這些實現都使用arduino的io口模擬ws2812的通信時序,因此具有固有的耗時的缺點。WS2812的數據手冊描述如下。 When ...

Tue Jun 01 07:06:00 CST 2021 1 6584
STM32 G431RB + LM35 ADC的采樣

STM32 G431RB的板子上配置ADC對LM35溫度傳感器進行溫度采樣。 代碼放到Github上 https://github.com/magicduan/demo_adc STM32 Cube IDE 的ico文件的配置: 配置freertos OS PA6配置為PWM ...

Tue Dec 21 02:33:00 CST 2021 0 818
0xWS2812 STM32 driver for WS2812(B) RGB LEDs

0xWS2812 STM32 driver for WS2812(B) RGB LEDs 0xWS2812 pronounced "hex-WS2812" This code aims at providing a basic interface to the WS2812(B ...

Thu Aug 27 07:48:00 CST 2015 0 7952
STM32利用PWM原理實現呼吸效果

在ST32項目中第一次接觸到PWM這個概念,PWM是Plus width modulation的英文縮寫,百度百科有詳細介紹。 因為介紹的太詳細了,對於做軟件開發的人員來說看着還是有些暈乎,知道了一個大概。最后我簡化理解為高中物理中的方波, 將一個方波周期分解問n份,1份代表一個高電平 ...

Fri Dec 17 00:31:00 CST 2021 0 2008
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM