打印

AT91SAM9G45 c代码解释?

[复制链接]
830|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
xjsfsq|  楼主 | 2014-10-31 15:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在学习AT91SAM9G45时,在C程序总是能看到这样的宏定义,实在看不明白,请高手解读。因为高手在民间。。。
#define PINS_USER  PIN_PUSHBUTTON_1, PIN_PUSHBUTTON_2
上面这个是定义PINS_USER 同时代表BUTTON1 和BUTTON2 这两个参数吗?
#define PIN_PUSHBUTTON_1  {1 << 6, AT91C_BASE_PIOB, AT91C_ID_PIOB, PIO_INPUT, PIO_PULLUP}
这句实在看不懂

相关帖子

沙发
zyingjie| | 2014-10-31 20:48 | 只看该作者
为啥会定义成这样,楼主别偷懒,BUTTON-2重新定义下吧

使用特权

评论回复
板凳
zchong| | 2014-11-2 19:56 | 只看该作者
本帖最后由 zchong 于 2014-11-2 20:06 编辑

#define 就是替换啊,你把对应宏定义替换掉看看,很容易就看明白了

#define PIN_PUSHBUTTON_1  {1 << 6, AT91C_BASE_PIOB, AT91C_ID_PIOB, PIO_INPUT, PIO_PULLUP}
#define PIN_PUSHBUTTON_1  {1 << 7, AT91C_BASE_PIOB, AT91C_ID_PIOB, PIO_INPUT, PIO_PULLUP}
#define PINS_USER  PIN_PUSHBUTTON_1, PIN_PUSHBUTTON_2
那么PINS_USER 就是:

{1 << 6, AT91C_BASE_PIOB, AT91C_ID_PIOB, PIO_INPUT, PIO_PULLUP},{1 << 7, AT91C_BASE_PIOB, AT91C_ID_PIOB, PIO_INPUT, PIO_PULLUP}

使用特权

评论回复
地板
ayb_ice| | 2014-11-3 14:01 | 只看该作者
结合使用的地方替换成最终的样子,就能看出端倪

使用特权

评论回复
5
xjsfsq|  楼主 | 2014-11-3 15:20 | 只看该作者
是的,搞明白了。不过#define语句这么用,我是第一次遇到。谢谢楼上的提点,高手还是在民间.................

使用特权

评论回复
6
zchong| | 2014-11-4 08:04 | 只看该作者
最近也在研究9G45

使用特权

评论回复
7
chen_jhhb| | 2014-11-4 08:25 | 只看该作者
领教了

使用特权

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

本版积分规则

10

主题

24

帖子

0

粉丝