Qt/QML编程学习之心得:读写GPIO(23)

在linux嵌入式系统中,经常需要一些底层操作,Linux就如window一样,也对底层BSP进行了封装,对device driver进行了封装,使用的话基本就是文件读写的方式来读取,所以也大大简化了上层应用对底层硬件的访问难度。

比如要对GPIO口进行访问,在Qt中有几种方法:

使用命令行方式访问:

#include <sys/un.h>
#include <sys/ioctl.h>
#include <sys/socket.h>
#include <linux/types.h>
#include <linux/netlink.h>

void visitGPIO(string sysCMD)
{
    FILE * ptr;
    if((ptr=popen(sysCMD, "r"))!=NULL)
    {
        rewind(ptr);
        fread(bufData, 256,1, ptr);
        // XXX,对数据进行处理
        pclose(ptr);
}

直接执行方式访问:

用户空间可通过sysfs访问控制GPIO:

# echo 11 > /sys/class/gpio/export      执行此命令会在gpio/下生成gpio11目录
# echo out > gpio11/direction            设置GPIO11方向为输出
# echo 1 > gpio11/value                   设置GPIO11为高电平
# echo 0 > gpio11/value                 

相关推荐

  1. Qt/QML编程学习心得GPIO23

    2024-01-07 08:50:01       41 阅读
  2. eCos GPIO及其中断处理

    2024-01-07 08:50:01       31 阅读
  3. Qt/QML编程学习心得:信号+槽(十三)

    2024-01-07 08:50:01       36 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-01-07 08:50:01       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-01-07 08:50:01       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-01-07 08:50:01       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-01-07 08:50:01       18 阅读

热门阅读

  1. Eureka工作原理及代码实例

    2024-01-07 08:50:01       36 阅读
  2. c# 编程点滴--元组

    2024-01-07 08:50:01       31 阅读
  3. win10、win11安装pytorch(可用)

    2024-01-07 08:50:01       32 阅读
  4. 【React】常用Hook函数的梳理和总结(第二篇)

    2024-01-07 08:50:01       38 阅读
  5. React查询、搜索类功能的实现

    2024-01-07 08:50:01       34 阅读
  6. C++ set用法总结

    2024-01-07 08:50:01       35 阅读
  7. 2024.1.5 Hadoop各组件工作原理,面试题

    2024-01-07 08:50:01       26 阅读
  8. c# 学习笔记 - LINQ

    2024-01-07 08:50:01       33 阅读
  9. ElasticSearch删除索引的命令

    2024-01-07 08:50:01       38 阅读