你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

如何实现stm32快速将多个数据串行输出到各个IO口

[复制链接]
LightmoonCD 提问时间:2015-5-29 14:48 /
我想用STM32将12组数据分别像移位寄存器操作一样,分别从12个IO口将数据发出,因为数据量很大,所以速度一定要快,请问各位大侠有没好的解决方案呢。谢谢。。。。。。。。。。。。。。。
收藏 评论11 发布时间:2015-5-29 14:48

举报

11个回答
lkl0305 回答时间:2015-5-29 15:47:08
帮顶!!
为什么是EEFOCUS小白 回答时间:2015-5-30 08:55:34
帮顶           
废鱼 回答时间:2015-5-30 09:02:12
可以通过直接写GPIO数据寄存器实现,但是频率需要测试。虽然GPIO输出可以配置为50Mhz,实际的使用,还需要楼主测试。
mark0668 回答时间:2015-5-30 10:18:17
可以用DMA
LightmoonCD 回答时间:2015-6-11 09:23:40
安 发表于 2015-5-30 09:02
可以通过直接写GPIO数据寄存器实现,但是频率需要测试。虽然GPIO输出可以配置为50Mhz,实际的使用,还需要 ...

我现在采用的是位域操作输出每一位直接到输出寄存器,但是12组数据中需一个统一的时钟线,速度还是比较慢,时间都花在了每次CPU取数据(CPU取每个字节数据)上面,最快也才300KHz(每位数据跟新速度)。
LightmoonCD 回答时间:2015-6-11 09:24:44

DMA无法按位操作。同时无法统一输出时钟信号。不好弄
废鱼 回答时间:2015-6-11 09:46:00
本帖最后由 安 于 2015-6-11 09:47 编辑

楼主是否可以考虑用数据寄存器GPIOx_ODR,一次性操作16个IO口
stary666 回答时间:2015-6-11 09:53:21
帮顶,,,,,,,,,
HenryChen 回答时间:2015-6-11 10:12:22
DMA能直接写GPIO数据寄存器么?我也想知道。
mark0668 回答时间:2015-6-11 10:21:35
LightmoonCD 发表于 2015-6-11 09:24
DMA无法按位操作。同时无法统一输出时钟信号。不好弄

你单片机支持位操作就可以实现,为啥不行
ToReal 回答时间:2017-8-7 09:06:39
楼主问题解决了吗?
学弟在用stm32f103驱动点阵屏时,遇到了同样问题,求指点

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版