如何对多个管脚操作

2019-03-24 13:43发布

我想问下,用库函数,如何能够对一组管脚进行操作,比如直接把数据给GPIOB(其中包括GPIO0--GPIO7),难道还要一个位一个位的处理吗?GPIOPinWrite好像不行。 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
8条回答
Triton.zhang
1楼-- · 2019-03-24 19:46
 精彩回答 2  元偷偷看……
ultrabenz
2楼-- · 2019-03-24 22:09
< :TI_MSP430_内容页_SA7 --> GPIOPinWrite最后的一个参数是一个实际8位有效的变量,每一位对应的是P7-P0的值。如果要对PB7和PB6输出高,应为GPIOPinWrite(GPIO_PORTB_BASE, GPIO_PIN_6|GPIO_PIN_7, 0xC0),而不是GPIOPinWrite(GPIO_PORTB_BASE, GPIO_PIN_6|GPIO_PIN_7, 1)。在宏定义里GPIO_PIN_7为0x80,GPIO_PIN_6为0x40。所以也可以写成GPIOPinWrite(GPIO_PORTB_BASE, GPIO_PIN_6|GPIO_PIN_7, GPIO_PIN_6|GPIO_PIN_7)。

[ 本帖最后由 ultrabenz 于 2012-8-2 17:25 编辑 ]
feiante
3楼-- · 2019-03-25 00:16
哦,原来是这样,谢谢啦。
那么如果像液晶屏,数据口是8位,输出的数据假如是data,那么是不是要一位一位的判断data是0还是1,然后在按上面的方式写呢?
还有个疑问是:为什么我每次给某位写1时用GPIO_PIN_X,写0时是~GPIO_PIN_X才正确,不能直接是“0”或“1”
academic
4楼-- · 2019-03-25 05:59
 精彩回答 2  元偷偷看……
feiante
5楼-- · 2019-03-25 11:10
恩,谢谢,版主回答了我第二个问题。
第一个问题如何处理比较方便点呢?
不会是GPIOPinWrite(GPIO_PORTB_BASE, GPIO_PIN_7|GPIO_PIN_6......|GPIO_PIN_0,data)?
feiante
6楼-- · 2019-03-25 14:19
要沉下去了,、、、、、

一周热门 更多>

相关问题

    相关文章