《 Python树莓派编程》——第1章 树莓派简介 第1.1 树莓派的历史


第1章

树莓派简介

如果你现在有一台树莓派,你会用它来做什么呢?也许你已经熟悉了树莓派的基本结构,正在考虑可以拿它来做些什么;也许你之前使用过计算机但并不熟悉Linux或树莓派默认的Raspbian操作系统;也许你已经是一位Linux系统的爱好者,但却不知道如何用Python进行编程,而且正准备好好学一学;也许你根本就不了解计算机,仅仅停留在点击“开始”菜单,转发电子邮件,上网等操作,但是听说过“树莓派”这么个新奇的东西,想了解一下它到底是什么。

无论是何原因,欢迎你的到来!你即将加入我们的大家庭—这个家庭专业性并不是很强,因为你只需花费35美金及必要的邮费,无需其他,便可成为我们的一员。作为一名会员,你将会和所有想听你分享经验的人们讨论你对软件包管理器、ARM11处理器,或是.config文件的一些见解,会了解关于驱动器和API的一些信息,会熟悉关于舵机、LED灯、板载摄像头的内容,最重要的是,你可以与微型计算机进行通信,用任何一门编程语言(本书主要使用的是Python语言)进行编程,构建项目,在树莓派上实现这些项目,这样树莓派便可与真实世界进行交互,并做出一些非常酷的东西。

通过阅读本书,我将引导你进入树莓派的俱乐部。在这里,你之前的经验并不重要,因为我将一步步带着你对树莓派进行配置,这样你就可以轻松地使用它了。我会尽量将Linux的环境介绍得详细透彻,以便你可以理解屏幕背后所发生的一切。同时我会用比较长的篇幅来介绍Python语言,这是当前极客们热衷的脚本语言。谷歌使用Python,NASA使用Python,Facebook也使用Python。Perl的时代已经过去,让我们好好探究Python这种语言。我还会在书中介绍一些构建电子项目的基本常识—这是一些技术或编程书籍仅作简单介绍,甚至完全忽略的部分。在构建好的项目同时,也还有一些安全因素需要考虑(例如,我曾经因为将电池短接而引起一次小型爆炸)。例如,你会学到如何焊出一个好的焊点,如何避免被刀片划伤食指,以及怎样区别40和40K的电阻。

当然,如果你已经熟悉了以上这些事情,可以跳过前面的介绍直接进入后面关于项目的部分。所有的项目都是用Python语言编写的,并且它们都可在一个周末(或一两个月,当然,这取决于你的积极性以及其他你需要做的事情)搭建完成。我会在每个项目之前为你准备一份购物清单,以及买到这些部件的地址,之后便直入主题。这些项目彼此之间并无依赖关系,在复杂程度上彼此也没有特定的顺序,这就意味着如果你想跳过家庭媒体服务器项目直接进入猫玩具项目也是没问题的。

那树莓派到底可以用来完成什么样的项目呢?你会惊讶地发现,树莓派小巧的尺寸并不能掩盖它强大的计算能力。它的应用范围很广,从网络服务器、车载电脑(carputer),到集群计算都可以看到它的身影。我希望当你读完本书之后,不仅可以发现一些新奇的想法,学到一些技术,最主要的是通过所学到的知识将你的想法变为现实。

无论你为何选择本书,你的主要目的就是快乐地学习并且学到一些东西!我会尽我所能去帮助你。

1.1 树莓派的历史

对外人而言,树莓派的确是很新颖的东西,在博客中有许多人也这样认为,还有一部分人甚至完全不知道树莓派是什么。大量树莓派的文章仍旧会以“树莓派是一个小型的、信用卡大小的计算机,爱好者们可以用其……”作为开始。但不同于树莓派,当人们谈及Arduino时,即便大多数人不知道Arduino是什么或是做什么用的,但至少都听说过。因为早在2005年,Arduino就在全球范围内的爱好者们、极客们和喜爱DIY的人们中赢得了很好的口碑。

Arduino

Arduino是一个微控制器平台,它安装在可以轻松插入绝大多数计算机的芯板上。这使得用户可以通过类似C的编程语言对板上的Atmega芯片进行编程,以实现各种需求。这种程序称为Sketch。一个典型的Arduino Sketch程序如下所示:

 

 

 

以上代码的作用是控制一个和Arduino相连的舵机(一个可以通过软件精确控制转动角度的小型马达)持续进行前后转动,每次转动间隔1秒。

尽管其功能不像树莓派那样强大,但Arduino已经可以完成很多事情,这使得公众对一般的电子项目(尤其是微控制器)更加熟知。我们将在第14章对Arduino和树莓派如何相互完善进行更深入的介绍。

树莓派已经问世很多年了,早已不是什么新的词汇。它的创始人—Eben Upton、Rob Mullins、Jack Lang和Alan Mycroft—在2006年第一次提出了廉价PC机的想法。在英国剑桥大学的时候,他们就意识到:随着像Commodore 64、Amiga和Spectrum这种廉价的个人计算机逐步退出市场,取而代之的台式机和笔记本电脑的价格又十分高昂(若不是几千美元的话,也需要几百美元),年轻人无法随意地在这种家庭主要的电子产品上练习编程,而这一定会严重影响年轻人的编程能力。

与此同时,这些创始人意识到当前许多大学的计算机科学课程已经被缩减为教授“微软Word 101”和“如何创建网页”。4位创始人希望帮助新生提高编程知识,或许以后计算机科学和工程类的课程会变得更加有意义。

很明显,为实现以上目的,需要一台便宜的计算机。为此他们尝试过许多微控制器、各种芯片、面包板、PCB板,等等,直到2008年,这个想法才得以实现。随着移动设备的爆炸式增长,芯片变得更小,更便宜,性能也更加强大。他们使用这些芯片设计了一台支持多媒体的设备,而不是仅支持命令行编程,做到这一点他们认为很重要(见图1-1)。年轻人似乎更喜欢具备媒体功能的设备,因此也就更有可能用此设备去编程。

2008年,4位创始人,和Pete
Lomas和David Braben一起,创立了树莓派基金会,3年后,该基金会成为第一个大规模生产树莓派的生产线。

树莓派(Raspberry Pi)这个名字同早期微机根据水果命名的规则一样,如早期的苹果(Apple)和橘子(Tangerine),而派(Pi)则来源于Python这个脚本语言。

一年内,基金会卖出了100多万台设备。基金会成员多次表示他们对这种爆炸式的热情感到十分震惊。最初的目的仅仅是推出一种廉价的、可编程的设备,使教育工作者和学生获益,显然现在这个目的已经达成了。不仅如此,现在的成果比最初设想的要大得多。很明显,他们并不是唯一希望拥有廉价可编程设备的一类人,世界各地的爱好者,连同element14、Premier Farnell和RS Electronics都迫切需要订单,以至于那些预订了树莓派的人不得不等待半年的时间,随后产量才满足需求量。许多消费者现在或之前都是程序员,现如今都渴望一览这台新的体积小性能强的计算机。(我第一次学习编程是在Commodore VIC-20上,这台设备仅有20KB的内存,当时用的还是BASIC语言……好吧!这都是很久以前的事了。)

 

(image但无论是之前还是现在,人们在各领域内都使用树莓派。就像美国树莓派基金会网页上写的那样:

我们已经收到来自教育机构数不尽的热情、支持和帮助。在看到来自机构大量的咨询时,我们十分激动,而当人们对设备的使用目的与我们的初衷相差甚远时,我们又感到有些羞愧。在发展中国家,由于部分地区的电力无法为传统的桌面PC设备提供所需要的功率和硬件设备,因此他们对树莓派很感兴趣。医院和博物馆已经联系我们,希望树莓派能够驱动显示设备。一些重度残疾孩子的父母也跟我们联系,谈论关于监控和可沟通应用的事情;与此同时,似乎还有数以百万的人正拿着电烙铁准备制作机器人呢。

幸运的是,供应及时满足了需求。现在买树莓派便无需等待了,而且每位用户也不再限购了。树莓派基金会正策划一个“买一赠一”的活动,即每卖出一台树莓派便向教育机构捐赠一台树莓派。最近发行的树莓派板载摄像头是一台小型芯片集成摄像头,可直接插入树莓派,用户可以用它拍摄静态照片,也可拍摄视频。基金会保证将会为这台小型计算机开发更多的外部设备。如今创始人正在积极说服其他公司复制他们的模式,接下来会发生的事情,让我们拭目以待吧。

时间: 2024-11-02 23:34:35

《 Python树莓派编程》——第1章 树莓派简介 第1.1 树莓派的历史的相关文章

Python树莓派编程第3章

第3章 Python介绍 你可能还记得我们在第1章中提到,制作树莓派的初衷是为了让每个人(尤其是孩子们)都拥有编程的环境.为了实现该目的,树莓派的创造者们想要推出一台价格相对便宜但性能十分强劲的计算机,每个人都可以将这台计算机连接至键盘.鼠标.显示器进行编程. 创造树莓派的另一个原因是希望简化编程.为此,Eben Upton和他的同伴决定将Python语言集成到树莓派的操作系统中.他们认为,Python是一种强大的编程语言,那些没有编程经验的人也可以轻松快速地学会. 在本章,我将对Python进

《树莓派Python编程入门与实战》——第一部分 树莓派编程环境 第1章 配置树莓派 1.1 树莓派是什么

第一部分 树莓派编程环境 第1章 配置树莓派 第2章 认识Raspbian linux发行版 第3章 搭建编程环境 第1章 配置树莓派 在本章中,你将学习如下内容. 树莓派是什么 如何获得一个树莓派 你的树莓派可能需要的一些外设 如何让树莓派工作 如何排除树莓派的故障 本章主要介绍树莓派:它是什么,它的历史,以及为什么你需要学习用Python在树莓派上进行编程.最后,你将了解到一些树莓派的外设以及将这些外设与树莓派组装好并运行起来的方法. 1.1 树莓派是什么 树莓派是一个非常廉价的.只有手掌大

《树莓派Python编程入门与实战(第2版)》——第一部分 树莓派编程环境 第1章 配置树莓派 1.1 获取树莓派

第一部分 树莓派编程环境 第1章 配置树莓派 第2章 认识Raspbian Linux发行版 第3章 搭建编程环境 第1章 配置树莓派 本章主要内容包括: 树莓派是什么 如何获得一个树莓派 你的树莓派可能需要的一些外围设备 如何让树莓派工作 如何排除树莓派的故障 本章主要介绍树莓派:它是什么,它的历史,以及为什么需要学习用Python在树莓派上编程.最后,你将了解到一些树莓派的外围设备以及将这些外围设备与树莓派组装好并运行起来的方法. 1.1 获取树莓派 树莓派是一个非常便宜的.只有手掌大小的完

《 Python树莓派编程》——第3章 Python介绍 3.1 脚本语言与程序设计语言

第3章 Python介绍 你可能还记得我们在第1章中提到,制作树莓派的初衷是为了让每个人(尤其是孩子们)都拥有编程的环境.为了实现该目的,树莓派的创造者们想要推出一台价格相对便宜但性能十分强劲的计算机,每个人都可以将这台计算机连接至键盘.鼠标.显示器进行编程. 创造树莓派的另一个原因是希望简化编程.为此,Eben Upton和他的同伴决定将Python语言集成到树莓派的操作系统中.他们认为,Python是一种强大的编程语言,那些没有编程经验的人也可以轻松快速地学会. 在本章,我将对Python进

《 Python树莓派编程》——导读

Preface 前 言 在2006年,当Eben Upton和其他树莓派基金会的创办人看到大学计算机专业学生的编程状况时,他们感到无比沮丧.在美国,计算机专业的编程课程被缩减为"CS 101:如何使用Word程序"和"CS 203:优化你的Facebook主页".他们意识到,不是所有人在上大学之前都学过编程.因此,他们酝酿了一个计划--打造一种小型廉价的计算机,使孩子们可以更加方便地学习编程,就如同昔日的Amiga.Spectrum和Commodore 64.随后,

《 Python树莓派编程》——3.4 利用Python进行编程

3.4 利用Python进行编程 现在,你已经了解了数据类型.接下来,让我们看看如何在实际程序中使用它们.当你创建一个Python程序时,首先必须从编译器的环境中退出来,并且打开一个文本编辑器,如emacs或者树莓派的Leafpad.在创建完程序后,将其".py"的扩展名保存.之后,你便可以通过输入以下命令运行该程序: 在众多的编程语言中,Python的语法也十分与众不同.Python使用空格或者缩进来分开不同的代码块.C语言等其他语言用花括号区分不同的代码块,如if语句:Python

《 Python树莓派编程》——1.2 探索树莓派

1.2 探索树莓派 那树莓派上究竟有什么呢?有什么能适合这个如此之小的设备呢? 目前为止,一共有两款树莓派:A版和B版(B版详情见图1-2).两个版本之间的差距非常小,B版仅比A版多了一点功能,当然价格也要稍微贵一些.A版内存为256MB,而B版内存为512MB:A版有一个USB接口,而B版有两个.A版不具备以太网口,而B版有一个.你可以根据自己的需求订购任何一款,A版为25美元,而B版售价35美元.由于二者在价格上差距不是很大,因此我建议购买B版.因为有一个或两个USB端口之间的差别是非常大的

《树莓派Python编程入门与实战》——第一部分 树莓派编程环境

第一部分 树莓派编程环境 树莓派Python编程入门与实战第1章 配置树莓派 第2章 认识Raspbian linux发行版 第3章 搭建编程环境

Python树莓派编程1.1 树莓派的历史

1.1 树莓派的历史 对外人而言,树莓派的确是很新颖的东西,在博客中有许多人也这样认为,还有一部分人甚至完全不知道树莓派是什么.大量树莓派的文章仍旧会以"树莓派是一个小型的.信用卡大小的计算机,爱好者们可以用其--"作为开始.但不同于树莓派,当人们谈及Arduino时,即便大多数人不知道Arduino是什么或是做什么用的,但至少都听说过.因为早在2005年,Arduino就在全球范围内的爱好者们.极客们和喜爱DIY的人们中赢得了很好的口碑. Arduino Arduino是一个微控制器