如何对不同端口下引脚凑成的20位整型数据输出赋值最快?

2019-10-15 04:24发布

    我这边需要做一个20位引脚的输出,理论上应该同时输出的。但已经用到的ARM管脚功能分布的比较散,无法做到将输出数据线单独放到某个端口(PORTA或PORTB或PORTC)的整8位引脚上。我这里需要将一个20位长度的长整型数据一位一位的赋值到管脚上,个人感觉赋值前后时差太大了。不知谁有比较好的方法。个人觉得是不是做一个结构体来实现,但具体怎么做还没想好,谁有类似经验,万望赐教,谢谢。


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
d1z1y2
1楼-- · 2019-10-15 04:38
这种误差应该可以忽略吧
ccd007
2楼-- · 2019-10-15 04:44
d1z1y2 发表于 2017-2-6 21:23
这种误差应该可以忽略吧

误差越低越好,因为我的程序要求是通断时间是一致的
wxyd2012
3楼-- · 2019-10-15 09:42
 精彩回答 2  元偷偷看……
正点原子
4楼-- · 2019-10-15 15:05
帮顶
来俩不甜的
5楼-- · 2019-10-15 15:44
不管怎样赋值就是个简单数学运算,快能快到哪里去。汇编会不会更快?
ccd007
6楼-- · 2019-10-15 18:42
wxyd2012 发表于 2017-2-7 10:19
怎么会要一位一位赋值呢,你不是可以给整个POARTA PORTB PORTC赋值吗,虽然不连续,但是也是只要3条语句就行了 ...

管脚顺序都乱了,估计赋值的时候需要按位操作了——我看看能不能用位的结构体和联合体的灵活运用了。不过到时候每组PORT只有部分引脚被赋值,对那些已经设置为其他非普通IO的管脚应该没影响吧。

一周热门 更多>