打印
[ZLG-MCU]

GPIO_O_DATA + (SDA << 2))什么意思?急!

[复制链接]
2732|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
xiucehong|  楼主 | 2008-5-10 13:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#define SDA  GPIO_PIN_3         //模拟I2C数据传送位
#define SCL  GPIO_PIN_2         //模拟I2C时钟控制位

下面这句话是什么意思:
 HWREG(GPIO_PORTB_BASE + (GPIO_O_DATA + (SDA << 2))) = SDA;
 HWREG(GPIO_PORTB_BASE + (GPIO_O_DATA + (SCL << 2))) = SCL;   


中间的 GPIO_O_DATA 是什么?
SDA 是PIN3,为什么下面是SDA<<2?
SCL<<2 又是什么?

相关帖子

沙发
niceeagle| | 2008-5-13 22:40 | 只看该作者

GPIO_O_DATA + (SDA << 2))什么意思?急!

SDA<<2是芯片数据写必须要求,请看IO口写操作,均需要左移两位

使用特权

评论回复
板凳
zlgmcu| | 2008-5-14 08:38 | 只看该作者

建议改用库函数操作,寄存器方式总是不太好理解

(zlgmcu_wdx)

使用特权

评论回复
地板
逐风| | 2008-5-16 10:51 | 只看该作者

那是IO口需要移位的,没有其他定义

建议你去看看IO操作吧。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

6

帖子

0

粉丝