此帖出自微控制器 MCU论坛
最新回复
以我的理解,这里其实是函数
GPIOPinWrite(GPIO_PORTD_BASE, GPIO_PIN_5 | GPIO_PIN_2 | GPIO_PIN_1,0xEB);
的实现。图中的地址掩码其实就是由引脚值左移2位得到的,掩码中的0用来屏蔽端口中不关注的位,1用来修改或者获取端口中关注的位。
由图,地址掩码中第1、2、5位为1,则只将值0xEB中的第1、2、5位的值去修改端口D中的第1、2、5位,而端口D中的其它位保持原来的值。
PD = (Val & mask)| (PD & (~mask)),其中PD原值为00011101,mask为00100110,要写的值Val为0xEB,可求得修改第1、2、5脚后的PD口的值为00111011
可以去看看函数GPIOPinWrite的原型,当然,代码不完全能解释,我觉得应该是跟硬件工艺有关。
详情
回复
发表于 2011-10-26 17:06
| ||
|
||
| |
|
|
回复 楼主 Study_Stellaris 的帖子
此帖出自微控制器 MCU论坛
| ||
|
||
此帖出自微控制器 MCU论坛
| ||
|
||
此帖出自微控制器 MCU论坛
| ||
|
||
曾经的版主且威望大于2000,或对EEWORLD论坛有突出贡献的坛友
EEWorld Datasheet 技术支持