gpt4 book ai didi

android - 嵌入式系统:我应该使用哪个操作系统?

转载 作者:行者123 更新时间:2023-12-02 21:02:48 25 4
gpt4 key购买 nike

我正计划构建一个嵌入式系统来处理吉他的声音,例如带有输入和输出等的吊舱,并且在小液晶屏上运行带有预设,选项等程序的系统应该是多点触控的导航。

现在我才刚刚起步,不知道从哪里开始以及应该使用什么系统。

它应该支持我上面写的功能(例如多点触控),并且应该是免费的。

嵌入式Linux
要么
安卓系统
或者是什么?

最佳答案

您是在使用现成的效果模块和嵌入式系统的某种接口,还是打算在程序中执行效果?我在此回复中假设是后者,请澄清我是否误解了项目的性质:

做您的系统工程...

您将需要处理输入和输出的模拟。在某些方面,甚至数字量输入和输出也是模拟量的,以保持信号的干净。甚至光接口在光接口和处理器接口之间也将是模拟的。

(我知道这很长,请继续阅读它将集中在您问题的答案上)

您将在界面中使用某种硬件来处理软件数据,理想情况下,如果您选择支持不同的接口,则理想情况下将希望将数据规范化为通用形式和数据速率,以便效果处理仅需以一种方式处理。 (避免在代码中使用一堆if-then-elses,如果bitrate是那么,否则,如果bitrate是这个,否则...如果bitrate是这个并且数据是单极性的,否则,如果bitrate是这个并且数据是双极性的然后,否则...)。

效果处理的胆量要复杂得多,一次还是多个效果?对于每种效果,请定义您将要调整的参数(我将从可能为零的最小数字开始,然后在所有参数都起作用后再添加参数)。这些参数将需要以某种方式或某种方式是全局的,以便用户界面可以获取并修改它们以进行效果处理。

输出和输入一样,很多模拟工作,都将归一化的数据流转换为接口想要或需要的或您定义的接口。

然后是用户界面...简单的部分。

...

效果处理软件的内胆可以是与系统无关的代码,并且与目标系统相比,在台式机/笔记本电脑上进行开发和测试可能更舒适,请记住,代码也应与系统和操作系统无关如可嵌入地编写(避免浮点,除法,许多局部变量等)。

有时(如果不是经常)在一个封闭系统中,该系统在同一黑匣子上具有某种用户界面,旋钮或按钮是某种屏幕,触摸屏等。一种系统可以管理用户界面,另一种系统可以执行任务,并且存在之间的连接。并非总是如此,但它是一个很好的简洁设计,例如,允许昨天设计的带有按钮和旋钮的产品,比如说两行LCD面板,只需花费很少的力气,就可以现代化为触摸屏,明天就可以在那里进行。可能是某些光纤直接插入到您的头后部的插座中。

分离处理任务的另一个原因是,可以更轻松地确保效果处理器不会因用户界面内容而陷入困境。您不想转动触摸屏上的虚拟旋钮,而加载图形来绘制图片会导致音频混乱或变成令人讨厌的声音。基本上,效果处理器是实时关键的。您不希望在吉他上捡弦,并且三秒钟后让声音从放大器中发出,因为处理器也在触摸屏上绘制了动画背景。该处理需要紧密,快速且确定性,代码中的每个if-then-else都必须考虑和平衡。如果允许并行处理多个效果,则处理器需要具有处理所有效果的带宽而没有明显的延迟,否则,如果一次仅选择一个效果,则需要选择处理器来处理一个效果。最糟糕的计算工作。可能发生的最坏情况是,由于gui处理正在做的事情,输入到输出延迟的时间会发生变化,从而导致音乐听起来很恐怖。

因此,您可以使用效果处理器来使用其用户界面,例如,用户界面是一个串行接口以及该接口(您定义的)上的协议,用于选择效果和更改参数。您可以使用通过串行接口连接的台式机和/或笔记本电脑,并使用一些特定的代码来更改参数(也许是命令行程序),来启动效果处理器并进行工作和测试。

现在是变得有趣的地方。例如,您可以购买现成的嵌入式linux系统或嵌入式android或其他任何东西,编写使用串行协议的应用,如果需要的话,请在此用户界面系统顶部,旁边,效果处理器模块。请注意,您可以命名所有建议的平台,例如android版本,linux版本(无android),mac版本,windows版本,dos版本,qnx版本,amiga版本。您可以在同一OS上尝试100种不同的用户界面版本,也许我希望旋钮成为滑块,或者向上/向下按钮,或者使用两指触摸来旋转的表盘外观,或者进行其他多点触摸手势。

而且它变得更好,除了串行以外,您还可以使用蓝牙模块。您的用户界面可能是iPhone应用程序,Android手机应用程序,笔记本电脑Linux或Windows应用程序。或台式计算机等。所有这些都是(相对)简单的平台,用于编写用于选择内容的图形用户界面。

当然,另一种方法可以是以太网,特别是无线以太网,然后您的用户界面可以是网页,并且大部分用户界面工作已经由firefox或chrome或其他团队完成。 (无线以太网或蓝牙或Zigbee或其他设备可使效果处理器位于方便的地方,而不必放在您的手臂/脚够不到的地方)。

...

做您的系统工程。将问题分解为几个大模块,定义模块之间的接口,然后在必要时担心那些模块内部的系统工程,直到您容易理解为止。系统工程越好,模块之间的接口定义越好,项目就越容易实现。

...

我还将在xmos上研究xcore处理器,它们有一个非常不错的模拟器,带有vcd波形输出,您还可以使用它来准确地分析效果处理。就我个人而言,如果不为此项目选择此平台,我将很难过。

您还应该研究ti的omap,这就是在beagleboard上的内容。您会得到一个不错的手臂,该手臂已经移植了Linux和其他东西并在上面运行,但是您还获得了一个dsp块,该dsp块可以进行效果处理,并且可能不会两者干扰。您失去了将用户界面处理器和效果处理器物理上分开的能力,但是却获得了其他优势,并且可能会使用现成的Beagleboard开发原型(使用模拟音频输入和输出)。我实际上更喜欢hawkboard(使用hawkboard,您可以立即使用一个可用的系统,使用thebeagleboard,您还可以再花一些钱在beagleboard上,以购买本应放在板上的东西),但是最后我看到它们存在不稳定的缺陷与PCB设计。

我的规格不高,但是集成度(即将推出的许多手机都将基于集成度),如omap一样,应该进行一些并行处理,并倾向于音频/视频以及gui。您只需要音频和GUI(三个中的两个比较简单)。我认为有一个出售的开发平台,上面带有触摸屏和流行的嵌入式OS。

如果您想省钱,请自己动手做这些事情之一。现在停下来,去商店购买一个。即使所有设计素材都是免费的,自制软件也会花费更多。硬件和融化的吉他和吉他放大器则没有。我从经验上讲,很多时候我在自制项目上花费了数千美元,以避免购买一些现成的价值300美元的商品。我学到了很多东西,从个人角度看,构建东西比使用它更有趣。通常,一旦它最终可用,我就会搁置它。青年汽车

如果我误解了您的问题,请让我知道,我将用不同的(简短的)答案来编辑/删除/替换所有问题。

关于android - 嵌入式系统:我应该使用哪个操作系统?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6738303/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com