现在的位置: 首页>正文

利用Arduino和Raspberry Pi 学习电子编程

2012年07月24日 作者: 暂无评论 2,916+ 0

Arduino是一个受欢迎的开放源硬体平台,通常会应用于机械人制作或家居自动化等项目,Arduino使用的是微控制器,而Raspberry Pi使用的是应用处理器,所以它们的应用范围并不会有太大的冲突,Raspberry Pi甚至能够成为Arduino的开发平台,让我为大家分析现时开发者们对这两个开发平台的看法。

Arduino和Raspberry Pi之间的通讯

Arduino和Raspberry Pi之间的通讯

Simon Monk的博客中提到了如何使用Python实现两者之间的通讯,Arduino会传送'Hello Pi'的讯号,而Raspberry Pi1便会传送数字讯号给Arduino,Arduino便会根据该讯号闪耀LED特定的次数。

Arduino方面,作者推荐使用Arduino Uno型号,软件版本为1.0,较旧的版本会由于FTDI(把USB信号转换成RS-232或TTL串列传输的技术)的讯号产生而引起USB通讯问题,把文章中Arduino的程序烧录到Arduino就可以了。

Raspberry Pi方面,我们要使用特定的Python库 - pySerial ,这个库包含了Arduino的指令,有关指令可以参考这个网站。以下的步骤要在Raspberry Pi上执行。

步驟1: 在这个网站下载pyserial-2.5.tar.gz ,然后储存到Raspberry Pi 桌面中的'other'文件夹。

步骤2: 由于我们下载的是gziped tar文件,我们需要解压(unzip)和解取(untar)该文件,请于终端器(Terminal)中输入以下指令:

cd /home/pi/Desktop/other

gunzip pyserial-2.5.tar.gz

tar - xvf pyserial-2.5.tar

步骤3: 安装pySerial,请于终端器(Terminal)中输入以下指令:

cd pyserial-2.5

sudo python setup.py install

步骤4: 执行Python 2,在菜单中的'Programming'可以找到。

执行以上步骤后,我们便可以利用Python库存取串行口,以下的图片是有关的Python执行代码,是Arduino与Raspberry Pi通讯的主要程序。

Python执行代码

mport serial

ser = serial.Serial('/dev/ttyACM0', 9600)

我们的代码要在这两行代码后,第二行代码的'9600'代表串行通讯的波特率(Baud Rate),而'/dev/ttyACM0' 代表Arduino通讯的USB介面。要知道USB接口的名称,可以在不连接Arduino的情况下于终端器(Terminal)中输入以下指令,然后连 接Arduino并且再次输入命令,若果你看到新的名称,那么这就是你所使用的接口名称:

ls /dev/tty*

以下的命令是主要用来读取Arduino传送的讯息和命令Arduino闪耀LED的次数。

ser.readline()

ser.write('5') 

Arduino和Raspberry Pi的桥梁 - Ponte

由于Raspberry Pi只有2个USB接口,直接以USB接口连接Arduino跟Raspberry Pi的话,在开发方面会浪费了这个USB接口,所以外国的Raspberry Pi用家正在开发名为Ponte 的电路板,除了用来连接Arduino和Raspberry Pi外,亦可以连接Arduino扩展板和Raspberry Pi,这个过程不需要用到USB接口。软件方面,他们推荐使用WiringPi,WiringPi提供了C、Ruby和Python版本。硬件方面,他们亦提供了现时的电路图设计和电路布线图。当原型产品成熟后,他们会以开放源硬体项目发放Ponte电路板。

Ponte 电路图设计

图. Ponte 电路图设计

Raspberry Pi的Arduino集成开发环境

Arduino和Raspberry Pi的连接实况

如果大家在Raspberry Pi中安装的影像是Raspbian的话,可以使用内置的Arduino集成开发环境编写和上载程序到Arduino,上图是Arduino和Raspberry Pi的连接实况。

总结

Arduino的庞大社群支援和多样化的扩展板对于Raspberry Pi的开发十分重要,希望大家能够建立两个平台的通讯后,多设计一些有关Raspberry Pi的应用程式。(欲了解详细内容查看引用来源)

引用来源:http://www.designspark.com/zh-hans/content/chi-rasp-pi-arduino-learning

发表评论

相关文章

Kano Computer Kit Touch让孩子打造自己的树莓派平板电脑

据外媒报道,有些人可能会说平板电脑已经死了,但iPad、Surafce Goe以及变形本则给出了另外一个答案。现在,触屏已经成为大部分孩子跟智能手机还有平板电脑互动的首个模式。所以如果打算教他...

全球最大创客平台创始人: 期待与中国创新碰撞出新的火花

全国双创周暨深圳国际创客周活动吸引了全世界创客的目光。昨日,全球最大创客平台Arduino创始人马西莫·班兹(Massimo Banzi)出席深圳国际创客周开幕式,并在会后举办的“Arduino Back to Chi...

老宅男找童年的记忆,靠自己双手攒一台拥有现代心脏的“GBA”

曾在去年引起热议的Raspiboy发布新版,据说新版解决了充电时间过长和发热问题,并且手柄灵敏度也有了提升。另外,除了土灰色这次还增加了一款紫色的壳子。

树莓派:全球第三畅销的“通用计算机”?

长久以来,我们面对中国芯与中国操作系统的态度可能过于严肃了,甚至有些“苦大仇深”。我们不妨把心态放得轻松一点,尊重市场规律与消费者的喜好,开发出一些像树莓派一样“有趣”的产品。这或...

教你如何在树莓派上实现深度学习目标检测

这个现实世界造成了很多挑战,比如数据有限、只有微型的计算机硬件(像手机、树莓派)所造成的无法运行复杂深度学习模型等。这篇文章演示了如何使用树莓派来进行目标检测。就像路上行驶的汽...