如何读取arm9 gpio脚位的高低电平?
你好,
cpu使用的是ks8695x,需要读取gpio4脚位的高低电平,请问有什么函数可以读取其脚位的电平,是不是先要设置输出方向等等的,函数是什么?谢谢。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
你好,
cpu使用的是ks8695x,需要读取gpio4脚位的高低电平,请问有什么函数可以读取其脚位的电平,是不是先要设置输出方向等等的,函数是什么?谢谢。
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(7)
看datasheet
找了好几天,只找到一些寄存器,0xe604 0xe600 0xe608这三个控制,
#define KS8695_READ_REG(offset) (*(volatile u_int *)((void *)IO_ADDRESS(KS8695_IO_BASE) + offset))
int main(void)
{
unsigned int uReg=0;
uReg = KS8695_READ_REG(0xE604);
return 0;
}
编译执行后老出现
Segmentation fault
麻烦大大们指点一下。谢谢
你是跑在linux下吗?有MMU的CPU,并且开启了MMU功能.那么就应该写个驱动来想办法访问这些地址,而直接在应用程序使用这些地址自然会导致"段错误".
嵌入式arm9的芯片,arm922t的,有mmu。看过一些资料说用这三个函数就可以了,但编译不过。google也找不到这几个函数。
GPIO_set_controller(...)//配置GPIO方向,功能
GPIO_set_value(...)//配置某个GPIO的高低电平
GPIO_get_level(...)//读取某个GPIO的引脚电平
uboot里有些程序,但找不到相关说明。
“.那么就应该写个驱动来想办法访问这些地址,”能详细点吗?谢谢。
驱动怎么写......并不是我说几句你就可以写出来的
你这个只能在用户空间使用, 一般处理器的配置空间都映射在内核空间中,所以你执行会出那个问题
你的没有问题, 将代码写到内核模块中即可以读了.
在内核中注意基址寄存器, 是否配置空间从 KS8695_IO_BASE 的宏开始的,好运~
samsung
是:
s3c2410_gpio_getpin