当前位置: 首页 > wzjs >正文

深圳门户网站建设专业wordpress侧栏跟随

深圳门户网站建设专业,wordpress侧栏跟随,服务公司发展战略,西安在线网站制作在QT界面,我们要实现点击“LED”按钮就可以控制板子上的LED。LED接线图如下: 在Linux 系统里,我们可以使用2种方法去操作上面的LED: ① 使用GPIO SYSFS系统:这需要一定的硬件知识,需要设置引脚的方向、数值…

在QT界面,我们要实现点击“LED”按钮就可以控制板子上的LED。LED接线图如下:

在Linux 系统里,我们可以使用2种方法去操作上面的LED:

① 使用GPIO SYSFS系统:这需要一定的硬件知识,需要设置引脚的方向、数值。

② 使用驱动程序:无需硬件知识,使用open/read/write接口调用驱动即可。

1、GPIO SYSFS 系统

一个芯片内部,有多个 GPIO 控制器,每个 GPIO 控制器有多个引脚。在 /sys/bus/gpio/devices 目录下,列出了所有的 GPIO 控制器,如下表示有 6 个 GPIO 控制器:

# ls /sys/bus/gpio/devices 
gpiochip0  gpiochip1  gpiochip2  gpiochip3  gpiochip4  gpiochip5 

怎么查看每个GPIO 控制器的详细信息?/sys/class/gpio/gpiochipXXX 下,有这些信息:

ls /sys/class/gpio/gpiochip* -d1  //列出GPIOx的信息/sys/class/gpio/gpiochip0 
/sys/class/gpio/gpiochip128 
/sys/class/gpio/gpiochip32 
/sys/class/gpio/gpiochip504 
/sys/class/gpio/gpiochip64 
/sys/class/gpio/gpiochip96 
ls /sys/class/gpio/gpiochip0 -1 //列出GPIO0的信息
base      // 这个GPIO控制器的GPIO编号基值 
device 
label     // 名字 
ngpio     // 引脚个数 
power 
subsystem 
uevent 
cat /sys/class/gpio/gpiochip0/label //GPIO0的标签209c000.gpio 

查看GPIO使用情况,执行如下命令即可:

cat /sys/kernel/debug/gpio
gpiochip0: GPIOs 0-31, parent: platform/209c000.gpio, 209c000.gpio: gpio-5   (                    |goodix_ts_int       ) in  hi IRQ gpio-19  (                    |cd                  ) in  hi IRQ gpio-20  (                    |spi_imx             ) out hi gpiochip1: GPIOs 32-63, parent: platform/20a0000.gpio, 20a0000.gpio: gpiochip2: GPIOs 64-95, parent: platform/20a4000.gpio, 20a4000.gpio: gpio-68  (                    |lcdif_rst           ) out hi gpiochip3: GPIOs 96-127, parent: platform/20a8000.gpio, 20a8000.gpio: gpio-110 (                    |User2 Button        ) in  hi IRQ gpio-120 (                    |spi_imx             ) in  lo gpio-122 (                    |spi_imx             ) in  lo gpiochip4: GPIOs 128-159, parent: platform/20ac000.gpio, 20ac000.gpio: gpio-129 (                    |User1 Button        ) in  hi IRQ gpio-130 (                    |goodix_ts_rst       ) out hi gpio-133 (                    |sysfs               ) out hi gpio-134 (                    |phy-reset           ) out hi gpio-135 (                    |spi32766.0          ) out hi gpio-136 (                    |?                   ) out lo gpio-137 (                    |phy-reset           ) out hi gpio-138 (                    |spi4                ) out hi gpio-139 (                    |spi4                ) out lo 

2、通过SYSFS使用GPIO

1.)确定GPIO编号

查看每个/sys/class/gpio/gpiochipXXX目录下的label,确定是你要用的GPIO控制器,也称为GPIO Bank。 根据它名字gpiochipXXX,就可以知道基值是XXX基值加上引脚offset,就是这个引脚的编号。

注:对于GPIOx_y,一般有一个公式:编号=(x-1)*32+y。x从1开始。 在IMX6ULL的原理图里,LED使用的引脚是GPIO5_3,它的编号为:(5-1)*32+3=131。

2) 导出/设置方向/读写值

举例:IMX6ULL使用的GPIO5_3引脚编号是131,可以如下操作:

echo 131 > /sys/class/gpio/export 
echo out > /sys/class/gpio/gpio131/direction 
echo 1 > /sys/class/gpio/gpio131/value 
echo 131 > /sys/class/gpio/unexport 

如果GPIO5_3是按键,可以如下读取它的值:

echo 131 > /sys/class/gpio/export 
echo in > /sys/class/gpio/gpio131/direction 
cat /sys/class/gpio/gpio131/value 
echo 131 > /sys/class/gpio/unexport 

3)编写应用程序

打开QT在原文件Sources内新建一个led.cpp

①按键初始化程序

void LED_Init(void)
{static int fd;fd = open("/sys/class/gpio/export", WRONLY);if(fd < 0)
{qDebug() << "open /sys/class/gpio/export error";return;
}write(fd, "131\n", 4);close(fd);fd = open("/sys/class/gpio/export", WRONLY);if(fd < 0)
{qDebug() << "open /sys/class/gpio/gpio131/direction error";return;
}write(fd, "out\n", 4);close(fd);
}

②:按键控制程序

void LED_Control(int on)
{static fd = -1;if(fd == -1)
{fd = open("/sys/class/gpio/gpio131/value", O_RDWR);return;
}if(fd < 0)
{qDebug() << "open /sys/class/gpio/gpio131/valuen error";return;
}if(on)
{write(fd, "0\n", 2);
}
else
{write(fd, "1\n", 2);
}
}

然后在Header文件下编写led.h文件

最后主函数调用初始化程序,主窗函数调用控制函数。


文章转载自:

http://8ts3s1Zq.zxwbL.cn
http://7dAxJGu5.zxwbL.cn
http://7yBfBWtn.zxwbL.cn
http://Fyg7Wim2.zxwbL.cn
http://fvBQ8XDl.zxwbL.cn
http://7fja8ekY.zxwbL.cn
http://rsLXfcPr.zxwbL.cn
http://BADnKA0B.zxwbL.cn
http://2hTz0Xof.zxwbL.cn
http://yjNKo1Fr.zxwbL.cn
http://dMHNReFn.zxwbL.cn
http://AeASmQWA.zxwbL.cn
http://AvkEdZSU.zxwbL.cn
http://Zm22aiSN.zxwbL.cn
http://ZhShLqHk.zxwbL.cn
http://O2Qi4PZc.zxwbL.cn
http://GQs6d03s.zxwbL.cn
http://lDbnI4oJ.zxwbL.cn
http://1u6LgiNX.zxwbL.cn
http://kmvlLK5L.zxwbL.cn
http://WF39SlEC.zxwbL.cn
http://I1N09TYr.zxwbL.cn
http://RSQevs49.zxwbL.cn
http://9Ue50ZvD.zxwbL.cn
http://bsSiuFsa.zxwbL.cn
http://a88aFqE2.zxwbL.cn
http://ahqxCwz4.zxwbL.cn
http://BrGDH2Ju.zxwbL.cn
http://Q109jWao.zxwbL.cn
http://pXizQ4Ti.zxwbL.cn
http://www.dtcms.com/wzjs/648324.html

相关文章:

  • 宁晋网站建设设计海南做公司网站
  • 信息分类网站好建吗运城网站制作路90
  • 网页设计旅游网站软件下载
  • 网站售后服务南阳网站开发公司
  • 网站制作与网站建设中国建行手机银行app下载安装
  • 什么网站不能备案商标查询系统官网
  • 网站建设企划动力网站前台和后台
  • 太原网站建设的公司排名重庆网站建设找重庆最佳科技
  • 企业网站管理系统教程公司注册一站式
  • 西安h5建站福建龙岩发现1例阳性
  • 小榄公司网站建设网站页面锚点怎么做
  • 徐州网站建设技术简单的网站开发的软件
  • 做教案比较好的网站被公司优化掉是什么意思
  • 中国最受欢迎的网站谷歌浏览器下载安装2022
  • asp网站部署网站开发的层级结构
  • 做杂志一般在哪个网站找感觉sem是什么缩写
  • 石狮外贸网站建设公司报价临漳 网站建设
  • 点广告挣钱网站有哪些如何做英文ppt模板下载网站
  • 成都建网站的公司江津网站建设
  • 做施工的平台网站上海十大企业
  • 怎么做网站不会被屏蔽零食店网站建设计划书
  • 兰山区住房和城乡建设局网站网站开发实践
  • 网站漏洞怎么修复电商站点是什么意思
  • 4a级景区网站建设WordPress电影公司网站主题
  • 做文具的网站网络推广及销售
  • 0基础wordpress株洲seo网站优化
  • 网站建站制作价格硅云wordpress多站点
  • 怎么做蒙文网站沃尔玛的网站建设
  • 图片 网站源码 采集吐鲁番做网站
  • 网站推广由什么样的人来做遂宁市做网站的公司