一乐电子

一乐电子百科

 找回密码
 请使用微信账号登录和注册会员

QQ登录

只需一步,快速开始

快捷登录

手机号码,快捷登录

搜索
查看: 1004|回复: 3
收起左侧

如何高效地向左移动一个bit?

[复制链接]
发表于 2019-12-22 08:40 来自手机 | 显示全部楼层 |阅读模式
STM32F103如何高效的对一维数组向左移动一个bit?  就是LED点阵上使用的,我设计的效率相对市面上的成品LED控制卡,效率还是低了点。。都是用的是STM32F103C8T6系列。

forum(4).jpg
发表于 2019-12-22 15:40 | 显示全部楼层
ARM移位移位只能先从内存LOAD到寄存器,移位后再STORE到内存,效率必然低。当然了,要是直接用汇编,设计好指令顺序,人力优化结果应该也是不错的。
如果只是用在LED点阵移位上,或许可以用别的技巧,避免大量内存搬运浪费时间。如:SPI发送一行完毕后,用GPIO操作补发1-7位。
发表于 2019-12-26 21:16 | 显示全部楼层
可以改变一下映射方向吗?由水平改成垂直的,这样就可以使用队列来实现走字,不需要移位
发表于 2019-12-29 20:04 | 显示全部楼层
很简单,不改变数据,改变寻址。

本版积分规则

QQ|一淘宝店|手机版|商店|电子DIY套件|一乐电子 ( 粤ICP备09076165号 ) 公安备案粤公网安备 44522102000183号

GMT+8, 2024-5-4 19:25 , Processed in 0.065641 second(s), 44 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表