能否将p0口放在一个数组中

2019-03-24 16:54发布

小白想问一下,能不能把一组io口比如p0口放在一个数组中,感觉这样用for去操作写流水灯会方便一些,如果能的话应该怎么定义数组 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
4条回答
cruelfox
2019-03-24 21:45
你这个问题是跟具体硬件相关的,常规的 GPIO 寄存器设计都是一个输出口状态对应一个 bit,所以修改一个I/O口状态是要通过内存地址的位操作。但是 C 语言的最小数据类型 char, 至少8-bit宽度,所以必须通过按位运算来实现。除非有的 MCU 具有单独写 1-bit 的指令,然后编译器对 C 语言作了扩展才可能。
还有一种情况,是有的支持 bitband 的 MCU 可以,就是把一段内存地址的位操作影射成字节/字操作。

一周热门 更多>