GPIO(General Purpose I/O Ports)意思为通用输入/输出端口,通俗地说,就是一些引脚,可以通过它们输出高低电平或者通过它们读入引脚的状态-是高电平或是低电平。

GPIO口一是个比较重要的概念,用户可以通过GPIO口和硬件进行数据交互(如UART),控制硬件工作(如LED、蜂鸣器等),读取硬件的工作状态信号(如中断信号)等。GPIO口的使用非常广泛。

一、 设置硬件环境

连接VS子板 从dm8168扩展出来的GPIO连接到了VS子板的J1接口

二、配置编译linux内核

1》 在linux-2.6.37-psp04.00.00.12/arch/arm/mach-omap2/ board-TI8168evm.c文件的558行添加

TI816X_MUX(SC1_DATA, OMAP_MUX_MODE2),

TI816X_MUX(SC0_DET, OMAP_MUX_MODE2),

配置GP0[24] GP1[9]管脚为GPIO管脚

2》 配置linux内核 使能Device Drivers –》 GPIO Support –》 /sys/class/gpio

三、启动开发板

四、创建GPIO节点

echo 24 》 /sys/class/gpio/export

echo 41 》 /sys/class/gpio/export

五、设置GPIO方向

cd /sys/class/gpio/gpio24

echo “out” 》 direcTIon

cd /sys/class/gpio/gpio41

echo “out” 》 direction

六、改变GPIO值

cd /sys/class/gpio/gpio24

echo 1 》 value

cd /sys/class/gpio/gpio41

echo 1 》 value

使用万用表测量VS子板 –》JP1 –》1 或3管脚为高电平

cd /sys/class/gpio/gpio24

echo 0 》 value

cd /sys/class/gpio/gpio41

echo 0 》 value

使用万用表测量VS子板 –》JP1 –》1 或3管脚为低电平

七、运行C测试程序

运行gpio0-24-test 或gpio1-9-test测试例程,使用示波器可以看到频率为1HZ的方波

一、Follow these steps for controlling the GPIO lines from sysfs entries

a. Export, which GPIO pin you want to control. Below steps are done with respect to GPIO30 (an example

$ echo 30 》 /sys/class/gpio/export

b. Change the GPIO pin direction to in/out

$ echo “out” 》 /sys/class/gpio/gpio30/direction

$ echo “in” 》 /sys/class/gpio/gpio30/direction

c. Changing the value

$ echo 1 》 /sys/class/gpio/gpio30/value

$ echo 0 》 /sys/class/gpio/gpio30/value

d. Unexport the GPIO pin

$ echo 30 》 /sys/class/gpio/unexport

Sysfs entries are created from 0 - 63 in case of DM816X because it has two GPIO banks 0 and 1.

Note: GPIO‘s which are used already in the drivers can not be control from sysfs, unless untill driver export that particular pin.

Run these commands for knowing what are the GPIO’s already requested in the drivers.

$ mount -t debugfs debugfs /sys/kernel/debug

$ cat /sys/kernel/debug/gpio

linux gpio口测试程序,gpio接口测试相关推荐

  1. NVIDIA Jetson Nano GPIO口和通信协议简单介绍及点亮第一个程序LED灯闪烁

    在前面的文章中,我已经想大家介绍了NVIDIA Jetson Nano这个板子.今天我将给大家介绍NVIDIA Jetson Nano最重要的一个接口–GPIO.Jetson Nano 和树莓派一样作 ...

  2. 【STM32】Cortex_M4 GPIO口概述知识总结

    一.GPIO概述 1.什么是GPIO口? GPIO口:简单而言,就是芯片用来控制或者采集外部器件的相关信息,这个又可以称之为输入输出的端口. 2.GPIO有什么作用? 是芯片用来感知外部世界并且用来控 ...

  3. 61-20210407华为海思Hi3516DV300的linux系统下控制GPIO口(标准linux模式点亮LED灯)

    61-20210407华为海思Hi3516DV300的linux系统下控制GPIO口(标准linux模式点亮LED灯) 2021/4/7 15:13 https://xueqiu.com/797071 ...

  4. android gpio驱动实例,Android/Linux 驱动层对GPIO口的操作方法和相关代码

    实例: unsigned int otg_en_pin=952; ----->高通的gpio的基础值为902,这里我们时间的gpio为50,即这里定义值是要设置为952. //young.yan ...

  5. linux gpio 模拟串口,STM32的GPIO口模拟串口通信.rar

    [实例简介] 利用GPIO.EXTI外部中断.TIM定时器实现URAT串口,该例子来自21IC网,未做改动,明天自己调试,看看效果 完全是根据UART协议编写 [实例截图] [核心代码] STM32的 ...

  6. Hi3531与Hi3520 GPIO口的对比及驱动的修改

    http://blog.csdn.net/xiangpingli/article/details/7251734 1.GPIO口的对比: 3520: 应用:16路CIF,4路.8路D1 管脚总数:76 ...

  7. 写一个公用的gpio口驱动

    因为项目需要控制的GPIO口比较多,如果每个GPIO口都写一个驱动就显得比骄麻烦,所以就写了一个通用的GPIO口驱动.只要dts里面配置好设备GPIO相关信息就可以自动加载了.可以很充分的体现多个设备 ...

  8. linux的gpio设备,Linux 4.x之Gpio分析(一)Gpiolib库1

    下面的内容均在imx6平台上举例,这一次分析希望将整个GPIO子系统的所有细节整理清晰. 第一篇从gpiolib入手,后面的边分析边写. 开始之前给自己提几个问题 驱动开发中的GPIO API 究竟是 ...

  9. Python控制Linux(OrangePi 香橙派) GPIO (wiringOP + OPi.GPIO)

    1. 安装wiringOP 官方教程如下图: 上面的Linux 终端命令在这里: //下载 wiringOP 的代码 root@orangepi:~# apt update root@orangepi ...

  10. STM8单片机GPIO口的驱动深度解析

    上一节给大家介绍了STM8标准库的移植,本节课开始学习我们单片机的外设的驱动,单片机基本的外设资料包括GPIO.外部中断.定时器.串口等,本节先给大家介绍一下STM8单片机的GPIO口. 我们先不介绍 ...

最新文章

  1. 《Java编码指南:编写安全可靠程序的75条建议》—— 指南20:使用安全管理器创建一个安全的沙盒...
  2. iOS进阶之底层原理-锁、synchronized
  3. Oracle工具类-生成数据库现有Job的创建脚本
  4. 手机调试java代码_【奇技淫巧】Intellij IDEA调试ysoserial等Java项目的方法
  5. [SOCI2005]最大子矩阵(DP) + [JXOI2018]守卫(DP) + [CQOI2016]手机号码(数位DP)[各种DP专练]
  6. [转]android logo:内核、android开机动画
  7. python登录界面源码_基于Python的自媒体小助手---登录页面的实现代码
  8. 面向对象编程思想概览(三)继承
  9. Java 8 lambda初试
  10. 非学习的点云配准方法汇总
  11. BeX5使用疑难总结
  12. 答题卡 移动端在线考试html模板,标准化考试答题卡模板.doc
  13. 简单聊聊利用DNS服务器提供单一入口
  14. matlab中princ,基于MATLAB_SIMLINK的Turbo交织器的仿真实现
  15. 基于java兰州交大学生生活服务网计算机毕业设计源码+系统+lw文档+mysql数据库+调试部署
  16. 信息学奥赛一本通 1325:【例7.4】 循环比赛日程表
  17. html5视频播放器 知乎,6款让人赞不绝口的电脑软件,知乎超10W人推荐,建议悄悄收藏...
  18. mysql数据库 auto_increment_mysql学习笔记(二:中的auto_increment 理解
  19. 扫雷用递归实现拓展空白详解
  20. 目前计算机主流配置及选购,计算机主流配置及选购.doc

热门文章

  1. Spark SQL 快速入门系列(六)Spark SQL 访问 JDBC
  2. Mackdown 编辑器-马克飞象
  3. mysql .frm文件丢失_MySQL frm ibd 文件丢失的恢复
  4. 查询-SPJ练习3参考答案
  5. 界面自动化测试工具-Ksend
  6. cannot be cast to
  7. 错误:There was a problem confirming the ssl certificate: [SSL: CERTIFICATE_VERIFY_FAILED] certificate
  8. 史上首次!个人所得税退税来了!如何退?怎么操作?
  9. 笃行杂记之Zookeeper SessionTimeOut分析
  10. 你的知识需要管理-博学审问慎思明辨笃行