基于omap3530/dm3730的开发板,LINUX系统,GPIO能写不能读

2019-03-24 12:06发布

这个芯片,属于达芬奇系列,应该可以归入STELLARIS里吧。
是这样的,我手头的这块是一个dm3730的开发板,beagleboard系列。
我们在上面跑的是LINUX系统。然后开发是通过PC机上上的VM(威瑞)交叉编译,然后下载到板子上运行。现在在做一个GPIO的控制,之前做过串口传输协议。
但是,我用了几种方法,都是同一样的问题,就是 只能写不能读。
因为最近才在弄,今天截止——做不了只好先放下了。所以到现在才发帖咨询,已经错过了 问倒TI专家团 的时间,但还是希望能得到各位TI专家的帮忙。
为了更仔细说明白,发帖前我写了一个文档,下面贴出来。可能有点长,写写各位了!
此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
19条回答
辛昕
2019-03-26 06:46
我不了解twl4030是什么东西。
不过,就GPIO的操作而言(目前不涉及中断,只是读写)
我的方法是直接操作LINUX系统下的/sys/class/gpio的文件,
可以直接完成 GPIO申请 注销,和 读写操作。

把这个文件操作用C语言完成,不是一件很困难的事情,相信你很快就会实现。
因为我的工作是写这些底层传输的子程序,所以我倾向于把它们全部做成子函数,以供调用。

至于我那个问题,已经得到解决,方法是 通过 内存映射 直接操作 GPIO的相关寄存器,把它定义为 读使能。

嗯,我用的板子跟你一样,都来自于广州EMA,这次的方法就是受他们启发的。
只是他们给的是一个现成的结果,不肯教具体方法,采用了网上的一个devmem2源程序实现的操作,实际上就是 内存映射。
后来我就在这个基础上,直接修改成一个C程序,直接调用。

[ 本帖最后由 辛昕 于 2011-8-3 17:05 编辑 ]

一周热门 更多>

相关问题

    相关文章