主题 : 关于2440 IO管脚控制问题 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 10614
精华: 0
发帖: 9
金钱: 55 两
威望: 17 点
综合积分: 18 分
注册时间: 2009-11-10
最后登录: 2013-03-10
楼主  发表于: 2010-02-02 10:41

 关于2440 IO管脚控制问题

版主您好:2440的IO端口作为普通输入/输出管脚时,同一时刻只能设置为INPUT 或是 OUTPUT,那假设我用IO来模拟实现I2C功能时,SDA不仅要需要输出,同时也要用作输入读取SDA线上电平,那么是否需要在驱动程序中频繁地转换IO的输入输出功能,还是有其它方法?谢谢
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
1楼  发表于: 2010-02-02 12:34
是的,你需要在驱动中切换GPIO的配置,但不会那么"频繁”。drivers/i2c/buses/i2c-gpio.c是一个GPIO模拟I2C的参考实现,你可以看看。
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."
级别: 新手上路
UID: 10614
精华: 0
发帖: 9
金钱: 55 两
威望: 17 点
综合积分: 18 分
注册时间: 2009-11-10
最后登录: 2013-03-10
2楼  发表于: 2010-02-02 13:16
谢谢