iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >怎么使用Fedora IoT点亮LED灯
  • 300
分享到

怎么使用Fedora IoT点亮LED灯

2023-06-16 10:06:47 300人浏览 独家记忆
摘要

这篇文章主要介绍怎么使用Fedora ioT点亮LED灯,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!什么是 Fedora IoT?Fedora IoT 是当前 Fedora 项目的目标之一,计划成为一个完整的 Fe

这篇文章主要介绍怎么使用Fedora ioT点亮LED灯,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

什么是 Fedora IoT?

Fedora IoT 是当前 Fedora 项目的目标之一,计划成为一个完整的 Fedora 版本。Fedora IoT 将是一个在 ARM(目前仅限 aarch74)设备上(例如树莓派),以及 x86_64 架构上运行的系统。

怎么使用Fedora IoT点亮LED灯

Fedora IoT 基于 OSTree 开发,就像 Fedora Silverblue 和以往的 Atomic Host。

下载和安装 Fedora IoT

官方 Fedora IoT 镜像将和 Fedora 29 一起发布。但是在此期间你可以下载 基于 Fedora 28 的镜像 来进行这个实验。(LCTT 译注:截止至本译文发布,Fedora 29 已经发布了,但是 IoT 版本并未随同发布,或许会在 Fedora 30 一同发布?)

你有两种方法来安装这个系统:要么使用 dd 命令烧录 SD 卡,或者使用 fedora-arm-installer 工具。Fedora 的 Wiki 里面提供了为 IoT 设置物理设备 的更多信息。另外,你可能需要调整第三个分区的大小。

把 SD 卡插入到设备后,你需要创建一个用户来完成安装。这个步骤需要串行连接或一个 HDMI 显示器和键盘来与设备进行交互。

当系统安装完成后,下一步就是要设置网络连接。使用你刚才创建的用户登录系统,可以使用下列方式之一完成网络连接设置:

  • 如果你需要手动配置你的网络,可能需要执行类似如下命令,需要保证设置正确的网络地址:


    1. $ nmcli connection add con-name cable ipv4.addresses \

    2. 192.168.0.10/24 ipv4.gateway 192.168.0.1 \

    3. connection.autoconnect true ipv4.dns "8.8.8.8,1.1.1.1" \

    4. type ethernet ifname eth0 ipv4.method manual

  • 如果你网络上运行着 DHCP 服务,可能需要类似如下命令:


    1. $ nmcli con add type ethernet con-name cable ifname eth0

Fedora 中的 GPIO 接口

许多关于 linux 上 GPIO 的教程都关注传统的 GPIO sysfis 接口。这个接口已经不推荐使用了,并且上游 Linux 内核社区由于安全和其他问题的缘故打算完全删除它。

Fedora 已经不将这个传统的接口编译到内核了,因此在系统上没有 /sys/class/gpio 这个文件。此教程使用一个上游内核提供的一个新的字符设备 /dev/gpiochipN 。这是目前和 GPIO 交互的方式。

为了和这个新设备进行交互,你需要使用一个库和一系列命令行界面的工具。常用的命令行工具比如说 echocat 在此设备上无法正常工作。

你可以通过安装 libgpiod-utils 包来安装命令行界面工具。python3-libgpiod 包提供了相应的 python 库。

使用 Podman 来创建一个容器

Podman 是一个容器运行环境,其命令行界面类似于 Docker。Podman 的一大优势是它不会在后台运行任何守护进程。这对于资源有限的设备尤其有用。Podman 还允许您使用 systemd 单元文件启动容器化服务。此外,它还有许多其他功能。

我们使用如下两步来创建一个容器:

  1. 鸿蒙官方战略合作共建——HarmonyOS技术社区

  2. 创建包含所需包的分层镜像。

  3. 使用分层镜像创建一个新容器。

首先创建一个 Dockerfile 文件,内容如下。这些内容告诉 Podman 基于可使用的*** Fedora 镜像来构建我们的分层镜像。然后就是更新系统和安装一些软件包:

FROM fedora:latestRUN  dnf -y updateRUN  dnf -y install libgpiod-utils Python3-libgpiod

这样你就完成了镜像的生成前的配置工作,这个镜像基于***的 Fedora,而且包含了和 GPIO 交互的软件包。

现在你就可以运行如下命令来构建你的基本镜像了:

$ sudo podman build --tag fedora:gpiobase -f ./Dockerfile

你已经成功创建了你的自定义镜像。这样以后你就可以不用每次都重新搭建环境了,而是基于你创建的镜像来完成工作。

使用 Podman 完成工作

为了确认当前的镜像是否就绪,可以运行如下命令:

$ sudo podman imagesREPOSITORY                 TAG        IMAGE ID       CREATED          SIZElocalhost/fedora           gpiobase   67a2b2b93b4b   10 minutes aGo  488MBdocker.io/library/fedora   latest     c18042d7fac6   2 days ago     300MB

现在,启动容器并进行一些实际的实验。容器通常是隔离的,无法访问主机系统,包括 GPIO 接口。因此需要在启动容器时将其挂载在容器内。可以使用以下命令中的 -device 选项来解决:

$ sudo podman run -it --name gpioexperiment --device=/dev/gpiochip0 localhost/fedora:gpiobase /bin/bash

运行之后就进入了正在运行的容器中。在继续之前,这里有一些容器命令。输入 exit 或者按下 Ctrl+D 来退出容器。

显示所有存在的容器可以运行如下命令,这包括当前没有运行的,比如你刚刚创建的那个:

$ sudo podman container ls -aCONTAINER ID   IMAGE             COMMAND     CREATED          STATUS                              PORTS   NAMes64e661d5d4e8   localhost/fedora:gpiobase   /bin/bash 37 seconds ago Exited (0) Less than a second ago           gpioexperiment

使用如下命令创建一个新的容器:

$ sudo podman run -it --name newexperiment --device=/dev/gpiochip0 localhost/fedora:gpiobase /bin/bash

如果想删除容器可以使用如下命令:

$ sudo podman rm newexperiment

点亮 LED 灯

现在可以使用已创建的容器。如果已经从容器退出,请使用以下命令再次启动它:

$ sudo podman start -ia gpioexperiment

如前所述,可以使用 Fedora 中 libgpiod-utils 包提供的命令行工具。要列出可用的 GPIO 芯片可以使用如下命令:

$ gpiodetectgpiochip0 [pinctrl-bcm2835] (54 lines)

要获取特定芯片的连线列表,请运行:

$ gpioinfo gpiochip0

请注意,物理引脚数与前一个命令所打印的连线数之间没有相关性。重要的是 BCM 编号,如 pinout.xyz 所示。建议不要使用没有相应 BCM 编号的连线。

现在,将 LED 连接到物理引脚 40,也就是 BCM 21。请记住:LED 的短腿(负极,称为阴极)必须连接到带有 330 欧姆电阻的树莓派的 GND 引脚, 并且长腿(阳极)到物理引脚 40。

运行以下命令点亮 LED,按下 Ctrl + C 关闭:

$ gpiOSet --mode=wait gpiochip0 21=1

要点亮一段时间,请添加 -b(在后台运行)和 -s NUM(多少秒)参数,如下所示。 例如,要点亮 LED 5 秒钟,运行如下命令:

$ gpioset -b -s 5 --mode=time gpiochip0 21=1

另一个有用的命令是 gpioget。 它可以获得引脚的状态(高或低),可用于检测按钮和开关。

怎么使用Fedora IoT点亮LED灯

以上是“怎么使用Fedora IoT点亮LED灯”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网精选频道!

--结束END--

本文标题: 怎么使用Fedora IoT点亮LED灯

本文链接: https://www.lsjlt.com/news/283123.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 怎么使用Fedora IoT点亮LED灯
    这篇文章主要介绍怎么使用Fedora IoT点亮LED灯,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!什么是 Fedora IoTFedora IoT 是当前 Fedora 项目的目标之一,计划成为一个完整的 Fed...
    99+
    2023-06-16
  • Fedora中怎么使用Firefox Send
    小编给大家分享一下Fedora中怎么使用Firefox Send,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Send 是 Firefox 提供的文件加密共享工具...
    99+
    2023-06-27
  • Fedora Makefile编译器怎么使用
    这篇文章主要讲解了“Fedora Makefile编译器怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Fedora Makefile编译器怎么使用”吧!一、Fedora Makefi...
    99+
    2023-06-16
  • 使用css3怎么实现一个LED 数字时钟
    使用css3怎么实现一个LED 数字时钟?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。css是什么意思css是一种用来表现HTML或XML等文件样式的计算机语言...
    99+
    2023-06-08
  • Fedora中怎么使用Gnu PG代理
    本篇内容主要讲解“Fedora中怎么使用Gnu PG代理”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Fedora中怎么使用Gnu PG代理”吧!有时使用某个应用程序的时候,你需要非常频繁地使用...
    99+
    2023-06-16
  • fedora中​system-config-packages怎么安装使用
    本篇内容介绍了“fedora中system-config-packages怎么安装使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!syst...
    99+
    2023-06-16
  • Fedora compiz软件控制器怎么使用
    本篇内容介绍了“Fedora compiz软件控制器怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1.Fedora compiz软件...
    99+
    2023-06-16
  • 使用JavaScript怎么控制电灯开关
    今天就跟大家聊聊有关使用JavaScript怎么控制电灯开关,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。JavaScript是什么JS是JavaScript的简称,它是一种直译式的...
    99+
    2023-06-14
  • highlight.js代码高亮插件怎么使用
    这篇文章主要介绍“highlight.js代码高亮插件怎么使用”,在日常操作中,相信很多人在highlight.js代码高亮插件怎么使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”highlight.js代...
    99+
    2023-06-26
  • 怎么在Fedora中使用dnf包管理器
    在Fedora中使用dnf包管理器可以很方便地安装、更新和删除软件包。 以下是一些基本的dnf命令: 安装软件包: sudo d...
    99+
    2024-03-13
    Fedora
  • Fedora 6怎么使用log4cxx的版本为0.97
    这篇文章主要介绍了Fedora 6怎么使用log4cxx的版本为0.97,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。使用log4cxx的版本为0.97 , OS为Fedor...
    99+
    2023-06-16
  • 怎么去了解Fedora Core 5使用桌面
    怎么去了解Fedora Core 5使用桌面,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。下面就这个问题来详细说说Fedora Core 5 桌面Linux本身...
    99+
    2023-06-17
  • 怎么用Vue实现点击导航高亮效果
    在前端开发中,导航是一个必不可少的元素,作为网站或应用的主要入口,导航的设计和交互是影响用户体验的重要因素之一。本文将介绍如何使用Vue来实现点击导航高亮的效果,以提升用户的交互体验。一、项目环境准备在开始前,需要先准备一个使用Vue的项目...
    99+
    2023-05-14
  • 怎么使用WordArt制作漂亮词云
    本篇内容主要讲解“怎么使用WordArt制作漂亮词云”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用WordArt制作漂亮词云”吧!它就是:WordArt主页地址:https://word...
    99+
    2023-06-02
  • 怎么使用Python VTK高亮显示actor
    今天小编给大家分享一下怎么使用Python VTK高亮显示actor的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。...
    99+
    2023-06-30
  • 怎么使用Python打印漂亮的表格
    本篇内容主要讲解“怎么使用Python打印漂亮的表格”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用Python打印漂亮的表格”吧!第一种:使用 format先来看几个小 demo左对齐&...
    99+
    2023-06-15
  • 使用css怎么实现一个幻灯片效果
    本篇文章给大家分享的是有关使用css怎么实现一个幻灯片效果,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。实现方法:首先定义多张幻灯片元素;然后使用“@keyframes”规则和...
    99+
    2023-06-14
  • 使用canvas怎么实现一个流水灯效果
    使用canvas怎么实现一个流水灯效果?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。具体内容如下<!DOCTYPE html>  ...
    99+
    2023-06-15
  • 使用canvas怎么实现一个探照灯效果
    这期内容当中小编将会给大家带来有关使用canvas怎么实现一个探照灯效果,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。</iframe><button id="btn...
    99+
    2023-06-09
  • 怎么在Fedora中为用户授予使用Docker的权限
    小编给大家分享一下怎么在Fedora中为用户授予使用Docker的权限,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!为用户授予使用Docker的权限Fedora ...
    99+
    2023-06-16
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作