imx6q平台将gpio口设置成高阻的方法
2016-05-09 21:41
253 查看
在休眠时,需要将某个gpio设置成高阻状态,但imx6q并没有直接设置成高阻的API,那就直接操作寄存器来实现了.
这里以MX6QDL_PAD_GPIO_16__GPIO7_IO11为例,将该IO口设置成高阻状态.查找PDF可知,该控制寄存器的基地址为
0x20e0000+0x618,该寄存器的3-5位来设置驱动能力,值为0就是高阻状态.
\
关于在linux中直接操作寄存器的资料可参考/article/7862303.html
这里给出直接例子.
这里以MX6QDL_PAD_GPIO_16__GPIO7_IO11为例,将该IO口设置成高阻状态.查找PDF可知,该控制寄存器的基地址为
0x20e0000+0x618,该寄存器的3-5位来设置驱动能力,值为0就是高阻状态.
\
关于在linux中直接操作寄存器的资料可参考/article/7862303.html
这里给出直接例子.
void gpio_no_pull(u32 phy_reg_addr) { volatile unsigned long *virt_reg_addr; u32 reg_vulue; virt_reg_addr=(unsigned long *)ioremap(phy_reg_addr,4); reg_vulue=ioread32(virt_reg_addr); reg_vulue&=(~(7<<3)); iowrite32(reg_vulue,virt_reg_addr); iounmap((void *)virt_reg_addr); }使用时直接gpio_no_pull(0x20e0000+0x618);即可将该io口设置成高阻状态。
相关文章推荐
- 文章标题
- leetcode143 Reorder List
- 微信读书 iOS 性能优化总结
- 对用java语言生成pdf文件的一些补充
- Java学习-常用排序稳定性分析
- C#三十 Ado.net和XML
- C#三十 Ado.net和XML
- Spring 事务
- C#三十 Ado.net和XML
- PS基础知识一
- cqm 解题报告e
- shell日期的应用
- HDU-5536 Chip Factory (字典树)
- 【常用算法】KDTree,局部敏感哈希LSH,在基于最近邻的算法中,当N特别大的时候(TODO)
- 博弈论 取石子(一)
- C++_BFS求最短路径
- iOS assign copy retain...含义
- 在O(1)时间删除链表结点――13
- 05Android学习从零单排之Androidmultimedia(多媒体)
- JS日期对象扩展-日期格式化