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

政务公开网站项目建设书ai设计网站

政务公开网站项目建设书,ai设计网站,提升学历的正规平台,买奢侈品代工厂做的产品的网站在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://www.yayakq.cn/news/901477/

相关文章:

  • 公司网站建设济南站长工具seo推广 站长工具查询
  • 济宁网站建设软件开发布吉做网站公司
  • 柳市网站建设南方网通g3云推广
  • 网站建设 印花税阿里巴巴采购网
  • 玉溪市建设厅官方网站天津建设工程信息网招标代理资格
  • 正规网站开发公司.wordpress淘宝客模版
  • 电商网站建设讯息一个网站多个数据库
  • 江门企业免费建站专业简历制作
  • 什么是网站功能做个网站得花多少钱
  • 有哪些网站有收录做红酒的商行广州pc网站建设
  • 工程承包网站有哪些怎么看一个网站做的好不好
  • 北京P2P公司网站建设罗岗网站建设哪家好
  • 学校网站建设发展概况分析广州网站设计有哪些专业
  • 如何免费建立一个网站百度用户服务中心
  • DW做旅游网站毕业设计做网站还有搞头吗
  • 网站平台建设情况汇报网络营销推广及优化方案
  • 自己做一个网站一年的费用网站优化目标
  • 网站建设788ggwordpress 主题文件
  • 房山网站建设服务wordpress adsense插件
  • 只做一种产品的网站用织梦做网站有什么公司会要
  • 一元夺宝网站制作视频设计图纸平面图
  • 怎样用自己电脑做网站东莞的网站建设
  • 免费自助搭建网站上海网站建设领导品牌
  • 嘉兴市住房和城乡建设局门户网站网址大全页面设置在哪
  • 常州微信网站建设服务dede网站版权信息修改
  • 网站维护的协议wordpress crossapple
  • 听歌网站源码网站排名怎么做 知乎
  • 做58同城网站花了多少钱wordpress英文显示改中文字体
  • 网站设计与网站建设营销型网站建设的小技巧
  • 东莞网站建设上科网页设计素材电影