如何进入xpenology configuration选项 tool 模式

注意:本文是一系列文章的一部汾旨在描述该项目的完整创建过程。 你可以阅读这个完整的项目背后的故事 和相关的3D外壳设计

当您从头开始创建一个完整的项目时,通常基于一个使您在整个晚上都保持清醒的深夜想法它总是将您带到多个阶段以到达最终目的地。 它通常从一个简单的概念开始然后進行一些调整和弄乱电线和传感器(特别是当您像我一样,通常在Raspberry Pi领域中)直到达到“可行的东西”为止。 但是当您打算与他人共享项目時,您经常回头告诉自己与最初的尝试相比,它可以做得更多 我觉得没有什么比您打算尝试的项目更糟糕的了,而不是简单明了的说奣它有时会变成一整夜的浏览,以寻找获得XYZ错误消息的答案

这就是为什么我花了一些时间来完成PiHQCam项目的第三部分,因为我打算为人们提供所有必要的指导以便人们能够从干净的Raspberry环境进行部署。 而且这是我打算在项目中包括的软件功能的第一阶段。 我已经准备将其他功能带入应用程序的主堆栈 现在是时候让您的PiHQCam“软件就绪”以及通过其界面和功能集了。

我们将从全新安装的Raspberry Pi OS(先前称为Raspbian)开始基于其Buster版夲。 但是相对于从包含所有图形界面和组件的标准发行版开始,我更喜欢从其“精简版”版本开始 原因是因为我们打算直接使用相机,所以我们不想安装根本不会使用的软件例如电子表格和文字处理器。 另外最初,我希望直接使用Raspberry Pi Camera模块的“预览”模式因为它也可鉯从命令行正常使用。 但是我不得不在开发阶段修改这个角度,因为它与我决定用于该项目的框架不兼容

不久前,人们必须首先下载囸确的发行档案然后使用其他软件在其SD卡上“刻录”操作系统。 对我们来说幸运的是Raspberry Foundation通过一个简洁的工具Raspberry Pi Imager简化了更多流程,您可以从矗接下载

简单的用户界面,易于安装操作系统

一旦安装到工作站上(从PC到Mac当然还有Raspberry Pi),安装过程将很轻松

首先,我们需要为相机选择正確的发行版因此我们首先要从主菜单中选择“ Raspbery Pi OS其他”选项,然后选择“ Raspberry Pi OS Lite(32位)”:无桌面环境“ 选择 完成此操作后,您可以插入要在系统Φ使用的SD卡然后从工具的驱动器选择器中选择它,然后准备使用“写入”按钮开始该过程

该工具将花费一些时间来完成编写和验证阶段。 完成此操作后您的SD Cad会自动弹出,您准备好了……差不多了 实际上,由于对USB端口的访问受到限制除非您要在未完全组装好PiHQCam的情况丅开始安装过程,否则我们将配置其远程访问

弹出SD卡后,“启动”分区将被加载到系统中 要激活远程访问,请打开命令行终端并访问SD鉲驱动器的位置例如在Mac上,例如:

首先只需创建一个空文件名“ ssh ”,即可从Pi的首次配置启动中启用远程SSH访问 您可以使用以下命令来這样做:

现在已经完成了SSH访问,我们需要向Pi提供Wi-Fi所需的信息以访问我们的本地网络。 为此使用以下命令创建一个新文件“ wpa_supplicant.conf ”,该文件仍位于“ boot”分区的根目录下该命令将打开一个新编辑器以插入必要的Wi-Fi配置:

以下是与当前的Buster Raspberry发行版兼容的配置示例:

这是一个简单的配置,您当然需要根据自己的设置进行调整:

国家 :选择您自己国家的国家代码(FRGB…);

只需退出Nano编辑器( 按Ctrl-XY保存更改)即可完成配置过程。 当嘫一旦远程连接到Raspberry Pi,您以后就可以随时编辑这些元素

在“弹出” SD卡之前,请查看其引导分区以确保两个文件都已存在并且可以使用。

为了防止其损坏请安全弹出SD卡,然后将其插入(或不重新)安装到相机的身体部位然后将其插入到项目屏幕外壳的侧面。 在这段时间里镊子可以成为您最好的朋友,用于插入(尤其是取出)卡以及处理轨迹球的有线连接

您已经准备好出发,继续为Raspberry Pi通电!

第一次启动时,您会看到一些LED闪烁并且主屏幕正在启动但是…没有图像! 不用担心 这是完全正常的,因为Raspberry Pi还没有“看到”漂亮的Pimoroni超像素屏幕 我们待会兒会讲到这一点,但是首先我们需要从Pi本身继续配置部分。

仍然从命令行终端尝试在一分钟后通过SSH连接到Raspberry Pi。 为此请使用以下命令:

實际上,默认情况下此命令应允许您连接到已完成其标准网络配置(启用SSH +正确的Wi-FI配置)的任何Pi。 立刻更改其网络主机名总是一件好事以避免连接到网络上的“错误” Pi。 可能是第一次发出此命令时,可能必须在本地计算机的注册表中添加一些与网络相关的指纹这是非常标准的过程。

一旦您同意这样做SSH连接将需要输入标准pi用户的密码:“ raspberry ”(当然不带引号)。 按下正确的键后您将可以远程访问Raspberry Pi,它位于新的Pi供电相机的核心

我们将首先确保Raspberry Pi的软件注册表和本地组件都已更新为最新版本。 为了刷新发行版提供的元素我们将发出以下命令:

系統将联系官方软件存储库以更新所有与软件相关的信息,然后将系统完全升级到最新版本 这可能需要一些时间,具体取决于您的网络连接和带宽 完成此操作后,我们将使用以下命令安装一些基础工具:

vim :如果您像我这样见过几个夏天也许您会更习惯使用此工具编辑文夲;

git :这是一个软件代码实用程序,稍后我们将需要它;

screen :在pi上远程执行任务时非常有用它会创建一个虚拟环境(例如终端),您可以在其Φ发布命令并且,如果远程SSH会话终止它将仍然保留上下文并同时运行命令。

现在我们必须通过使用Raspberry配置工具来设置使系统完全安全囷可运行所需的一些参数。

一旦配置界面可用我们需要更改以下设置:

主机名 :为了方便地通过我们的网络访问Raspberry,最好给它起一个适当嘚名称尤其是如果您喜欢我,您的LAN上有多个Pi 因此,我们可以使用以下名称“ picamera

Pi用户密码 :由于所有Raspberry Pi的默认密码始终相同,因此将其哽改为更个人的名称是很好(也是安全的)

更改了一些网络参数和安全性项目之后,我们现在要激活一些接口以使我们的项目正常工作:

PiCamera :當然我们需要激活相机才能拍摄出漂亮的照片,因此最好立即打开它

I2C :这是轨迹球所需的内部通信接口,因此我们也需要激活它

高級选项-内存分割 :当我们要处理高质量(和大尺寸)图像时,我们需要给系统更多的“自由度”以应对它们 因此,我们需要将内存分割设置增加到“ 256

现在我们已经完成了配置,但是请不要重新启动Raspberry Pi因为我们还需要安装一些东西。

由于我们的项目依赖于Pimoroni Pirates(YARRHHH :)的两个重要组件洇此我们将立即进行其配置。

首先我们需要为HyperPixel 4 Square屏幕安装库,以获取项目的清晰图像和可视界面 通过使用简单的line命令,它们确实非常容噫(如果您想查看其魔术背后的含义可以随时拆分):

它将获取一个交互式安装外壳脚本,该脚本将询问您几个问题但这很简单。 您只需偠确认即可继续安装以及为屏幕选择型号和配置 由于它是单行安装程序,因此能够处理正确的屏幕(矩形/正方形)和Pi(PI4和其他)模型 对于我们嘚项目,我们将选择选项3Weirdly Square-Pi 3B +或更旧 ”以将我们自己的配置与A3 +相匹配。

安装过程将花费一些时间具体取决于您的带宽,但是最后当要求重新启动时,请说“ ”因为还需要一些其他步骤。

首先我们需要编辑引导顺序中使用的配置文件,以添加一些额外的屏幕参数

茬文件末尾,添加以下行以便在关机时关闭屏幕的背光灯:

#关闭时关闭超像素屏幕

屏幕配置已经完成,因此下次重新启动时我们将能够直接在屏幕上看到Raspberry的控制台。

现在在重新启动Pi之前,我们需要安装跟踪球控件所需的库 还有一个单行命令行,但是在使用它时遇到了一些编程问题,因此我强烈建议您直接使用GIT源并构建库因为该过程非常简单。

首先我们需要使用以下命令将更多的python库添加到我們的系统中:

第二个命令为Pimoroni的轨迹球安装其他必需的库。 现在我们准备通过以下命令来执行轨迹球库的安装:

一旦它完成了从Git克隆代码存储库以及执行库的安装,您现在就可以终于重新启动Pi了因为一切都准备好进行一些检查。

输入命令时应该看到第一个区别:实际上,Raspberry Pi OS控制台现在可以在HyperPixel屏幕上看到这为您提供了更多线索。 进入登录提示阶段时请记住通过SSH重新连接到Pi,并将主机名更改为之前定义的洺称 例如:

既然我们知道屏幕运行良好,那么我们可能还想尝试一下轨迹球 首先,由于用于将轨迹球连接到屏幕的i2c端口已使用不同的ID紸册因此我们需要临时创建指向该链接的链接,以使用Pimoroni的示例

现在示例中的轨迹球是“可见的”,让我们在彩虹示例中添加一些乐趣囷色彩:

现在您应该可以看到轨迹球以多种颜色闪烁。 如果不是这种情况您应该收到一些有用的错误消息,以尝试找出问题所在 可能要检查屏幕和轨迹球之间的极性和连接,因为如果您没有充分伸展焊接到电缆的插针则连接可能会有点松动。

现在我们的系统已经准備就绪并已通过其核心组件进行了测试我们需要安装更多的库。 其中之一就是Kivy这是一个非常整洁的框架,我在搜索如何在不使用X标准環境的情况下构建图形界面时发现了 Kivy正在使用一些自定义配置文件来定义组成应用程序的屏幕,这些屏幕提供了从媒体管理到自定义输叺的多个标准组件 阅读所有Kivy的功能将花费另一篇完整的文章,因此我只能鼓励您浏览他们的文档,并逐步浏览所有可用的示例( )

但是,有一些重要的问题需要了解 我不知道它们是否与HyperPixel的特定设置相关联,因为我没有时间进行更多调查但是我想与您分享它们,因为它們会对项目的使用产生影响:

选项卡面板的“无法触摸”选择

标签面板 :主界面分为3个标签(稍后我们将介绍)。 但是我无法让Kivy允许通过觸摸在选项卡之间进行“切换”:我猜是由于控制台上引发了许多SDL警告消息,某些内部事件没有被正确引发 这就是为什么跟踪球之所以能为我们提供帮助,是因为从左向右滚动将触发切换选项卡

菜单选择有时可能很棘手。

菜单和配置字段 :Kivy确实可以相当轻松地进行属性管理但是,仍然由于某些SDL错误消息“在组合框中确认选择可能有些棘手,并且可能需要在屏幕上“长时间”按下以验证文件路径或选擇图片/电影的分辨率

除了这些要点之外,我希望将来可以改进/修复这是在Raspberry上构建全屏应用程序的一种不错的方法。

现在Kivy需要使用以丅命令安装了多个库:

这将需要一些时间,因此继续并获取美味的清凉饮料;)

安装过程完成后,我们需要从GitHub检索项目的源代码:

现在已经囿了版本因此如果您不想从精简版中运行代码,则可以选择它

创建项目目录后,我们需要为图片和电影创建一个专用文件夹:

另外為了完成库的安装,我们执行最后一个依赖项安装:

勇气我们快完成了! 现在,我们需要在Kivy的设置中添加一些特定的配置以使HyperPixel Touch参数正瑺工作。 为此我们需要编辑主配置文件:

进入其中后,找到“ [input] ”部分并将其完全替换为以下几行:

#使触摸屏与Kivy配合使用

现在,我们准备尝试PiHQCam项目:

主界面将直接在摄像机视图中显示在屏幕上

您可以通过触摸来切换各种垂直/水平面板,并使用轨迹球的向左/向右滚动浏覽3个主选项卡

现在,我们可以通过使用轨迹球滚动到最右侧的选项卡然后按屏幕上的“ 退出 ”按钮来退出安装程序,以执行安装的最後阶段

我准备了一个配置服务文件,以便在Pi启动时自动启动程序因为在旅途中我们将无法使用任何鼠标或键盘( 提示 :除非您通过蓝牙進行设置:)。 要启用此新服务只需输入以下命令:

它将首先将服务定义文件复制到系统位置,然后将其启用 您可以使用“ 开始 ”命令啟动主应用程序,确保一切正常然后使用最后一个“ 停止 ”命令将其停止

恭喜你! 现在您可以使用Pi Powered HQ相机了!

如前所述该界面在面板の间进行组织,所有界面均允许访问不同的设置和用法 屏幕顶部的选项卡代表三个主要功能:“ 摄像机 ”,可从摄像机直接查看“ 浏覽器 ”,用于访问媒体文件“ 信息 ”,用于访问摄像机的信息和配置

相机界面可在不进行拍摄/拍摄时为相机提供直接视图。 最初我咑算使用PiCamera的“预览”模式,以便在使用时具有更好的可见性和性能 但是,由于没有过多地了解技术细节因此无法使用Kivy窗口管理和相机預览,因为相机预览显示在“ Kivy”窗口的下方而且我找不到任何解决方法(透明填充和Z-index并没有解决问题……。)希望Kivy的下一个主要修订版(实际仩是1.11.1)将能够更好地应对这一问题 这就是为什么我必须实现自定义预览模式,然后在拍摄照片或视频时冻结显示的原因

在主摄像机预览丅,有3个按钮可让您从可用的不同捕获模式中进行选择:

相机 :按一下轨迹球的按钮后,立即拍摄一张照片

计时器 :在可设定持续时間的拍摄前触发计时器。

视频 :在开始和停止序列时通过按一下每个片段的轨迹球,用相机记录

屏幕的左侧还集成了“效果”面板,您可以按该面板以显示相机可用的一组效果 其中一些与直接视图兼容,而另一些则与直接视图兼容因此不要感到惊讶。 只需触摸“查看”面板即可返回到相机主预览屏幕

“浏览器”选项卡指向配置的位置(默认为DCIM),用于存储所有媒体(图片和视频) 您可以在上下滚动轨迹浗之间滚动它们,这将更新右侧的媒体预览(但请留出一些时间来处理大尺寸的图像和电影:)

在预览下,“ 信息 ”面板中提供了一些基本信息例如名称,日期时间和分辨率。

当显示预览下方的“ 操作 ”面板时您还可以执行一些操作。 当前只有“ Delete ”选项可用,但还会囿其他功能

最后一个“信息”标签可让您访问应用程序的设置,以及退出应用程序或什至完全关闭相机这样,一旦屏幕完全关闭您僦可以安全地拔出相机的电源。 您可以定义以下参数:

图片 :要存储媒体的位置 将会弹出一个虚拟键盘供您输入路径,或者使用蓝牙键盤更轻松地输入路径

缩略图 :媒体缩略图的生成和存储位置。

计时器 :拍摄前计时器应持续多长时间

静止分辨率 :用于*相机*和*定时器*模式的分辨率。

视频分辨率 :用于*视频*模式的分辨率

我知道安装过程可能会有点长,但这与在论坛和Internet搜索上获得“正确的”参数以使所囿功能正常工作所花费的时间相比没有什么 因为这是我第一个基于Kivy的项目,所以我已经采取了一些“捷径”我希望能够尽快重新使用咜,以提高其质量和功能集

确实,像所有Raspberry Pi项目一样当前版本中集成的许多功能都是在其设计和开发过程中出现的,还有许多积压的积壓时间足以让我忙一阵子(…仅需时间 … ;)

在构思,案例的3D设计软件编码和测试(还有一些令人毛骨悚然的重构任务)之间,我花了相当多的時间才能与您分享这个项目因此,我期待着您的来信它适合您并看到您的创作的一些图片。 玩得开心 !

格式:PDF ? 页数:7页 ? 上传日期: 11:35:33 ? 浏览次数:22 ? ? 1100积分 ? ? 用稻壳阅读器打开

全文阅读已结束如果下载本文需要使用

该用户还上传了这些文档


其iis有四根线:采样率(帧时钟)、位时钟、数据输出数据输入。默认配置为采样率(fs)为48k;时钟为256*fs,一般都用64*fs;一个时钟延时即从第二个时钟脉冲开始传输数据;串行数据为每帧16位

最后配置数字通道属性,如下图

配置好之后即可实现audio的iis输出

在sink_configmannger.c中修改以下函数要实现切换,所以必须初始化i2s配置初始化参数参数确定之后,整个运行过程中不会变化如果要修改请自行添加修改函数

在sink_multi_channel.c中添加如下两个接口,一个为配置通道为数字一個为配置通道为模拟,具体参数请参考configuration tool中的配置描述以及sink_multi_channel.c中参数设置等函数中的g_app_data变量为一个uint8类型的全局变量,防止重复配置

请注意AudioOutputInit_ex为自萣义函数函数实现为,如果不这样修改在播放音乐过程拨打电话会导致卡死,AudioOutputInit_ex参考AudioOutputInit函数修改在lib库中,所以修改完之后需要重新编译丅库文件才能生效

最后把两个两个接口分别加入HFP和A2DP的初始化过程中如下图所示:

添加好这些之后,基本能实现播放音乐走iis通道打电话赱模拟通道了,如果还有其他需求可以参考做相应修改。

相关源码及相关的工具资料等请到我的博客<csr867x入门笔记(序)>最下面的网盘链接或者github链接中下载。

我要回帖

更多关于 configuration选项 的文章

 

随机推荐