[LinuxFocus-icon]
<--  | 首页  | 站点地图  | 索引  | 搜索

新闻 | 过往期刊 | 链接 | 关于LF
This document is available in: English  Castellano  ChineseGB  Deutsch  Francais  Russian  Turkce  Polish  Serbian  

[Photo of the Author]
by Aleksandar Milovac
<amilovac(at)ptt.yu>

关于作者:

Aleksandar 刚刚从 Faculty of Technical Sciences in Novi Sad 的电子与电信系毕业。他从 1999 年起使用 Linux,在近两年中,他一直使用Debian GNU/Linux。


目录:

 

在 Linux 下做电子工程相关的事情

[Illustration]

摘要:

当我还是个电子工程专业的学生的时候 (也不是很久以前的事),我经常有机会使用一些商业软件,如 Protel, OrCAD, 还有各种商业的编译器等等。而当我开始在 Linux 中徜徉的时候 (那是早在 1999 年的事了),我问自己:“这些可不可以都在 Linux 下完成呢?”在经过了数年的使用之后,我可以骄傲地说:“当然!没问题。”本文中,我将向你介绍一些在 Linux 下你会用到的软件。


_________________ _________________ _________________

 

概述

1991 年,Linux 作为一个个人爱好的项目开始了,但从那以后,事情便峰回路转了。现在的 Linux 是一个现代的多用户、多任务操作系统,而且在健壮性方面饱受好评。不论你是一个电子工程师还是一个业余爱好者,这些都是意义重大的。

但关于 Linux 的最重要的事情之一就是它是一个开放源代码项目。这和电子学有什么关系呢?如果你是一个正在进行一个项目的工程师,你可以尝试着在 Linux 下完成它。因为 GPL 使得你可以获取他人的想法并把你自己的创意与他们分享,你可以使用其他人已经写好的部分代码以节省大量的时间。这样你就可以集中精力进行你的创造性的工作,比如设计你的硬件。另外,Linux 和其他许多开放源代码的软件都有良好的文档组织,并有优秀的技术支持服务。只要发信给原始作者或是加入一些新闻组就可以了,他们都非常乐于帮助你。而这些仅仅是使用 Linux 工作带来的好处的很少的一部分。

我的一些没有被上述内容说服的朋友说:“是的,但我为什么要放弃一些我们熟悉的东西,而转移到一些很好但是完全未知的东西上来呢?”他们可能是对的,但如果你不亲自试一下的话,你永远不会明白这迁移的原因。好吧,那就让我们来尝试一下,看看我们将会遇到什么?

 

有哪些可供选择的?

每个要制做一些电子设备的人都会从绘制原理图开始,然后是制做印刷电路版 (PCB),在 PCB 上,将焊接各种元件以制做设备。因为有了现代计算机,我们可以在自己的房间中,只用一些啤酒和薄脆甜饼,就完成所有这些工作。我们都知道用于做这项工作的一些程序:Protel, Pcad, OrCAD...但对于我们这些家庭用户来说,这些软件都太贵了。

幸运的是有一个不错的程序可以让我们不付一分钱来完成所有这些工作。这个程序的名字是 EAGLE,它是 Easily Applicable Graphical Layout Editor 的缩写。EAGLE 由 Cadsoft (www.cadsoftusa.com) 开发,但不幸的是,它是一个免费软件却不是在 GPL 下发布的。感谢 Cadsoft 的人们,你可以在你的 Linux 机器上免费地运行它,但有一些限制条件。PCB 板的大小限制在 80mm x 100mm,并且仅可以是两层板。尽管有了这些限制,你还是可以制做出不错的 PCB 板的。用 EAGLE 几个月后,我必须要说这确实是一个优秀的软件。它很小,而且不像其他很多程序那么吃内存。你需要一些时间来适应它的逻辑,但这并不难。EAGLE 的界面也十分简洁,特别是简单直观的库管理器。

除了 Eagle 以外,还有其他的使用在大学和工业界的程序。其中之一就是著名的 Matlab (mathworks.com)。它是数值计算、DSP、系统建模的事实标准。虽然它也有 Linux 版本,但太贵了。如果你没有那么多钱的话,你可以使用 Scilab (scilabsoft.inria.fr)。使用它无需任何花费,你可以免费下载源代码或二进制代码。事实上,Scilab 可以做任何 Matlab 能做的事情:数值计算、DSP 等等。它的命令格式也和 Matlab 的十分相似。Scilab 是为 X 开发的,要安装 Scilab 需要先安装 Tcl 库。Scilab 甚至有一个工具箱类似于 Matlab 的 Simulink,称为 Scicos (www.scicos.org)

那关于单片机的编程和其他工作呢?这些能在 Linux 下进行么?当然了!Linux 一向以对众多编程语言的优良支持而著称。你可以为你所钟爱的单片机编程并编译它们。你甚至可以在 Linux 下为它们编程 (烧录)。这一切无需昂贵的编译器和其他附件。如果你需要对多种不同的单片机和 EEPROM 等编程的话,我建议使用 PonyProg (www.lancos.com/prog.html) 编程器。使用它和合适的硬件,你可以为 PIC、AVR 单片机和多种不同的 EEPROM 等编程。它在 X 下运行,简单而高效。

如果你就是 AVR 的爱好者,那你可以使用 SP12 编程器。这是一个命令行编程器,而且它为一种硬件编程器提供了图示,非常简单易用。在大学的时候,我在一个项目中使用过它,非常不错。当然,SP12 不是唯一的 AVR 串口编程器,还有很多其它的不错的 AVR 编程器。你可以用 C 或汇编为 AVR 写程序。如果你选择 C,那你可以考虑使用 AVR-GCC 编译器。Guido Socher 很多年前撰文 (LF article 231) 介绍过它,所以我在这里仅仅是提一下。如果你想进一步了解的话,可以读 Guido 的文章,写的非常好。

对于所有偏爱 PIC 的人来说,也有一些不错的东西。我在自己的计算机上使用 Debian GNU/Linux。当我用 aptitude (译者注:aptitude 是 Debian 的包管理工具 APT 的一个前端。) 搜索有关 PIC 的东西的时候,我发现了好几个程序。第一个是 Picasm,这是一个 PIC 单片机的汇编器。第二个是 simulpic,显然这是一个 PIC 仿真器。因为我没用过 PIC 单片机,我还没有测试过这些程序,但你可以试试。对于 PIC 的编程器,我建议使用 Brian Lane 的 Picprg (www.brianlane.com)。它简单且易于使用。

我们已经说了这么多关 Linux 下的于电子学、编程和类似的事情,我应该提一件更有趣的事。最近,Linux 被引入到嵌入式系统和实时操作系统设计领域。如果你有兴趣把 Linux 用做实时操作系统,进行工业控制或控制机械,你不妨看看两个最流行的 Linux 的实时扩展:RTLinux (www.fsmlabs.com)RTAI (www.rtai.org)。两者都在 GPL 下许可发布,而且都有良好的文档。

 

结论

这是一个日常的 (和高级的) 电子工程相关的免费/开放源代码软件的简短介绍。如果你你想要做一些电子工程相关的东西,你应该试试 Linux。正如你所见到的,你有很多不错的程序可供选择。

在过去四年中,我已经找到了可以替换所有在大学和家里的计算机中的程序的 Linux 下的免费/开放源代码软件替代品。我尽力替换在 Windows 下使用的每一件东西。我还将几许寻找更好的软件。但现在,在 Linux 下工作已经简单多了。  

参考文献

 

对这篇文章发表评论

每篇文章都有各自的反馈页面。在这个页面里,您可以提交评论,也可以查看其他读者的评论:
 反馈页面 

<--, back to the index of this issue

主页由LinuxFocus编辑组维护
© Aleksandar Milovac, FDL
LinuxFocus.org
翻译信息:
sr --> -- : Aleksandar Milovac <amilovac(at)ptt.yu>
sr --> en: Aleksandar Milovac <amilovac(at)ptt.yu>
en --> cn: 王旭 <wangxu(at)linuxfocus.org>

2004-03-14, generated by lfparser version 2.46