UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

取消
显示结果 
搜索替代 
您的意思是: 
Observer mxc528169645
Observer
684 次查看
注册日期: ‎06-20-2018

ZYNQ 的AXI_GPIO linux下如何批量操作?

本人由于需要240个IO口,由于使用Z7035的IO资源有限,特使用了P8255A进行扩充,Vivado 使用AXI_GPIO核进行了扩展,使用petalinux搭建linux系统环境,但发现 "/sys/class/gpio"下貌似只能单个io口操作,能否批量操作io口呢?比如一次性操作8个呢?AXI-GPIO本是AXI_LITE总线的IP核,linux环境如何使用地址直接操作呢?一个一个IO口操作相当麻烦,裸机调试到是可以按地址操作io口

0 项奖励
3 条回复3
Highlighted
Xilinx Employee
Xilinx Employee
648 次查看
注册日期: ‎09-14-2018

回复: ZYNQ 的AXI_GPIO linux下如何批量操作?

hi, 

@mxc528169645 以下几个方法供参考,

1. 使用linux下 devmem指令可以直接对实际地址进行读写操作,不过这个功能比较危险因为能直接访问物理地址,建议仅限测试使用。

2. UIO的方式。相比devmem更安全且可以使用中断。仅需要写应用代码,不需要写驱动。

3. 自己编写GPIO驱动,这个比较麻烦;

----------------------------------------------------------------------------------------------
如果提供的信息能解决您的问题,请标记为“接受为解决方案”。
如果您认为帖子有帮助,请点击“奖励”。谢谢!
----------------------------------------------------------------------------------------------

 

0 项奖励
Xilinx Employee
Xilinx Employee
645 次查看
注册日期: ‎09-14-2018

回复: ZYNQ 的AXI_GPIO linux下如何批量操作?

0 项奖励
Observer mxc528169645
Observer
625 次查看
注册日期: ‎06-20-2018

回复: ZYNQ 的AXI_GPIO linux下如何批量操作?

谢谢,我下你学习下,应该可以使用mmap 写应用代码实现
0 项奖励