当前位置:网站首页>迅为IMX6ULL开发板C程序调用shell
迅为IMX6ULL开发板C程序调用shell
2020-11-09 19:13:00 【书白】
本章节介绍的是在 linux 系统环境下 linux-C 调用 shell 命令控制GPIO输入输出步骤。shell 作为Linux 操作系统的外壳,为用户提供使用操作系统的接口。它是命令语言、命令解释程序及程序设计语言的统称,它解释由用户输入的命令并且把它们送到内核。
使用shell命令直接操作/sys/下的gpio节点,首先在imx6ull-14x14-evk.dts注释掉设备树的 LED和按键功能,LED引脚为GPIO0_3,key引脚为GPIO1_18。
在程序中通过shell命令读取按键值和控制LED灯。


1.通过popen执行shell命令
popen和pclose函数实现的功能是创建一个管道,用来连接到另一个进程,然后读那个进程的输出或向它发送输入,具体操作是fork一个子进程,exec一个shell执行命令。

2.填写shell命令,设置引脚状态

3.控制Led

交叉编译arm-linux-gnueabihf-gcc -o led shellGpio.c ,将led文件拷贝到开发板。

测试可看到开发板的灯在闪烁,终端有打印信息:

4.读取按键值

编译后测试:

好物推荐-迅为品质IMX6ULL开发板

终结者资料全开源,不买也可以自由下载软硬件资源
您只需要关注VX公众号:迅为电子 , 回复 :终结者,免费获取产品资料
i.MX6ULL终结者手册下载链接
https://pan.baidu.com/s/171NHz6_sVMGIQ3g7GcCqOQ 提取码:n3og
B站搜‘北京迅为’, 入门视频教程免费学习,持续更新。
https://space.bilibili.com/33785640
i.MX6ULL终结者开发板介绍
https://www.bilibili.com/video/BV1aE411F7S9
i.MX6ULL终结者开发板开箱初体验
https://www.bilibili.com/video/BV1M7411m7wT
Linux-QT教程可在此免费观看,迅为率先提供6ULL的QT视频实战教程,尝鲜版:
本期QT视频将会收获哪些知识?
https://www.bilibili.com/video/BV1tp4y1i7EJ?p=1
P10 QT上位机开发之串口助手(上)
https://www.bilibili.com/video/BV1tp4y1i7EJ?p=10
QT网络编程之UDP通信
https://www.bilibili.com/video/BV1tp4y1i7EJ?p=14
QT系统移植之交叉编译QT源码和触摸源码
https://www.bilibili.com/video/BV1tp4y1i7EJ?p=17
QT跨平台运行之把QT程序交叉编译到ARM开发板
https://www.bilibili.com/video/BV1tp4y1i7EJ?p=19
QT跨平台运行之使用QT控制蜂鸣器
https://www.bilibili.com/video/BV1tp4y1i7EJ?p=20
QT跨平台运行之把QT程序编译成手机APP
https://www.bilibili.com/video/BV1tp4y1i7EJ?p=21
仿写一个智能家居界面(上)
https://www.bilibili.com/video/BV1tp4y1i7EJ?p=7
仿写一个智能家居界面(下)
https://www.bilibili.com/video/BV1tp4y1i7EJ?p=9
版权声明
本文为[书白]所创,转载请带上原文链接,感谢
https://my.oschina.net/u/3005926/blog/4710053
边栏推荐
- How to implement a simple student management system with C + +
- 说说 C# 9 新特性的实际运用
- 解析:C++如何实现简单的学生管理系统(源码分享)
- Hand in hand to teach you to use container service tke cluster audit troubleshooting
- Numeric keyboard with decimal point in IOS
- What if the Mac can't connect to the app store and prompts you to connect to the network?
- 手势切换背景,让直播带货更加身临其境
- JS object array de duplication
- Rabbitmq installation
- 如何使用RTSP推流组件EasyPusher将MP4文件推到EasyDarwin开源平台?
猜你喜欢

标梵互动解说小程序开发该如何选择?

Defects in singleton mode of DCL and other implementations of singleton

Configure static IP address in ubuntu18.04 NAT mode -2020.11.09

手势切换背景,让直播带货更加身临其境

Git老鸟查询手册

How important these built-in icons are to easily build a high profile application interface!

超简单集成华为系统完整性检测,搞定设备安全防护

Hand in hand to teach you to use container service tke cluster audit troubleshooting

Abbyy finereader 15 added edit table cell function

40 tips for life that may be useful
随机推荐
【云小课】版本管理发展史之Git+——代码托管
配置ng-zerro的nz-date-picker时间选择组件
R8 compiler: tailoring kotlin libraries and Applications
Configure static IP address in ubuntu18.04 NAT mode -2020.11.09
Container technology (3) mirror summary [16]
Almost finished all the list titles, I found these things...
Explain git in detail
A great guide to curl
谷粒商城学习笔记,第五天:ES全文检索
How to implement a simple student management system with C + +
Revealing the logic of moving path selection in Summoner Canyon?
如何实现后台管理系统的权限路由和权限菜单
andorid实例-简单登录布局
菜鸟福音,28本书籍循序渐进让你成为大牛!(附学习大纲一份)
【神级操作】 以中国传统的孔子和老子的思想,来分析忍者代码!
js对象数组去重
第三阶段 Day20 购物车模块实现 添加拦截器 添加用户权限校检 实现订单模块
Git + -- Code hosting in the history of version management
In the third stage, day19 users echo packaged cookie products and remotely call Shopping Cart module crud operation
揭秘在召唤师峡谷中移动路径选择逻辑?