免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1651 | 回复: 0
打印 上一主题 下一主题

i.mx28 有段代码解析 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2018-04-15 22:00 |只看该作者 |倒序浏览
#define LED_GPIO    MXS_PIN_TO_GPIO(PINID_LCD_D23)        //for 283 287A/B  这个思led gpio 口编号 查看源码如下


#define PINID_LCD_D23        MXS_PIN_ENCODE(1, 23) //这个是什么意思?


#define PINS_PER_BANK        32  //这个是我到理解是每个 gpio 组 有32个 管脚

#define MXS_PIN_TO_GPIO(p)    (((p) & MXS_PIN_PINID_MAX) |\
                 ((((p) >> MXS_PIN_BANK_BIT) &\
                 MXS_PIN_BANK_MAX) * PINS_PER_BANK))         //这个思获取gpio 口编号具体怎么个原理?  书上说思 bank*32+N 那为什么不直接

#define MXS_PIN_BANK_BIT    24                      //为什么是24 ???
#define MXS_PIN_BANK_MAX    (0x7FFFFFFF >> (MXS_PIN_BANK_BIT - 1))//255    这个是什么意思????
#define MXS_PIN_PINID_MAX    ((1 << MXS_PIN_BANK_BIT) - 1)//16777215         // 这个是什么意思????
#define MXS_PIN_TO_BANK(p)    (((p) >> MXS_PIN_BANK_BIT) & MXS_PIN_BANK_MAX)          这个是什么意思????
#define MXS_PIN_TO_PINID(p)    ((p) & MXS_PIN_PINID_MAX)                           这个是什么意思????

#define MXS_PIN_ENCODE(b, p)    \
        ((((b) & MXS_PIN_BANK_MAX) << MXS_PIN_BANK_BIT) |\
         ((p) & MXS_PIN_PINID_MAX))

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP