ST MCU Finder
安装免费手机应用,广发彩网站直营网:
寻找理想的ST MCU

广发彩网站直营网: [STM32F1] STM32如何用DMA+pwm模拟SPI时序发送字节流从IO输出?

永利游戏开户直营
423|5
楼主
STM32如何用定时器+DMA或其他外设模拟SPI时序发送字节流从  IO输出?  因为在成品的LED控制卡上发现是用这种技术驱动的,     是用GD32F150C8T6也就64K+8K主控 ,可以实现很多花样显示。   技术上还是很牛叉的。。。我已经测绘了电路并通过示波器分析了下波形不是用SPI 或者串口一类驱动的.  
1、不讨论SPI形式的驱动,这个相对来说简单,没啥好讨论的
2、只针对这种类型的驱动讨论,上FPGA的就不在讨论范围。
3、估计应该是类似WS2812的DMA+PWM一类的驱动方式,但是如何弄一个SCK信号出来?C8T6的资源也才64+8,还有待显示数据如何变换?
4、外部有一个W25Q08一类的SPI FLASH,是只读的。   
5、此控制卡最大驱动32*320点的单色屏

见下面我测绘的那款控制卡

230422pja7ba2daarg7ja7.jpg (192.26 KB, 下载次数: 3)

230422pja7ba2daarg7ja7.jpg
沙发
| 2020-3-24 11:07 | 只看该作者
我们可以使用STM32的定时器的PWM输出 模拟一个 CLK出来,
同时我们又可以结合定时器的更新事件或比较事件 触发DMA 进行数据传输。

板凳
 楼主 | 2020-3-24 12:05 | 只看该作者
但是数据都是字节的,如何变换后一个一个bit的从一个IO输出?
地板
| 2020-3-24 14:18 | 只看该作者
这也不难,每个人处理办法或许不一样。

比方我们可以将数据位0和1变换成0x00和0x0ff,然后在将其对应成不同时刻的
定时器的比较寄存器的值,通过DMA来修改CCR值来改变PWM输出高或低。
5
 楼主 | 2020-3-24 15:33 | 只看该作者
那这数据量要扩大8倍了。和驱动单总线ws2812 LED 一个方法了。 内存吃不消呀。
6
| 2020-3-24 17:03 | 只看该作者
fjhcpu 发表于 2020-3-24 15:33
那这数据量要扩大8倍了。和驱动单总线ws2812 LED 一个方法了。 内存吃不消呀。 ...

未必要扩大8倍。可以考虑分组传输,只需要开辟一个缓冲区而已。
当然,办法都是人想想出来的。或许还有更好的办法。
扫描二维码,随时随地手机跟帖
您需要登录后才可以回帖 登录 | 注册

本版积分规则

我要发帖 投诉建议 创建版块 申请版主

快速回复

您需要登录后才可以回帖
登录 | 注册
高级模式

论坛热帖

永利游戏开户直营 快速回复 返回顶部 返回列表
江西时时彩开奖号码登入 W彩票网时时彩手机app 马可波罗棋牌网站 香港买马论坛 大发彩票网正规直营网
4567彩票集团 好日子彩票正规直营网 3d福利彩票官网 北京赛车现金 138彩票集团
3d福利彩票手机下载 好日子彩票app下载直营网 山东群英会官方 重庆时时彩网址 彩票王app下载
mg电子游戏送彩金58登入 重庆时时彩官网直营网 澳门银河直营官方登入 彩16娱乐 金誉彩票网在线开户