树莓派显示器电源管理禁止屏幕休眠

下面我们介绍当需要用到树莓派的显示屏作为演示或监视器的时候,禁止长时间无响应屏幕休眠的方法。区分两种情况:

一、禁止屏幕在图形界面下休眠

在 /etc/profile.d 路径下新建一个文件,如Screen.sh,并将下面两条命令写入该文件,即可以实现永久禁用。

 

[bash]xsetdpms 0 0 0
xsets off[/bash]

12

 

更多相关设置示例:

指令 说明
xset s off 禁用屏幕保护
xset s 3600 3600 设置空闲时间为1小时
xset -dpms 关闭 DPMS
xset s off -dpms 禁用 DPMS 并阻止屏幕进入空闲
xset dpms force off 立即关闭屏幕
xset dpms force standby 强制屏幕进入待命状态
xset dpms force suspend 强制屏幕进入暂停状态

二、禁止屏幕在 Console 终端下休眠

执行下面的命令就可以解决这个问题。

[bash]setterm -blank 0[/bash]

重启后此命令会失效,所以需要装这个命令加入到启动脚本中,每次开机后自动启动。
Raspbian 和 Archlinux 在 /etc/bash.bashrc 文件中加入,CentOS 则是在/etc/bashrc加入:

[bash]setterm -blank 0[/bash]

更多相关设置:

[bash]setterm -blank [0-60|force|poke]
setterm -powersave [on|vsync|hsync|powerdown|off]
setterm -powerdown [0-60][/bash]

以上参数为0时表示禁用。例如下面的指令表示禁止屏幕进入保护和关闭状态

[bash]setterm -blank 0 -powerdown 0[/bash]

相关引用
https://wiki.archlinux.org/index.php/Display_Power_Management_Signaling

本文来自:树莓派实验室
链接地址:http://shumeipai.nxez.com/2016/12/24/display-power-management-signaling.html

用树莓派DIY一台专门拍Gif动图的相机

树莓派在喜欢DIY的朋友眼里,是非常酷的东西,许多人都会利用树莓派自己动手DIY出各种各样有趣的技术。而现在又有人利用树莓派制造出了一台福库Pix-E相机,而这款相机最有趣的地方就是可以直接拍摄出gif动态图。

现在无论是朋友圈、公众号还是微博,gif动态图已经成为展示内容或者文章配图的重要组成元素,尤其是一些幽默搞笑的内容,只有gif动态图才能展示精髓,并且要比视频方便了很多。不过想要从视频中截取gif并不容易,虽然我们都有各种各样的方法,但基本上没有一个称得上方便。

这款Pix-E由Nick Brewer打造,通过树莓派Zero打造,使用了额外的树莓派摄像头模块以及自定义的组件,包括了完整的快门和电池组。

23

而Pix-E通过直接运行包括PiCamera、GraphicsMagick和GifCam等软件,可以直接拍摄出gif格式的动态视频,比如下图就是Pix-E拍摄的效果。

23

Pix-E的外壳基本上通过3D打印的方式制造,并且还包括了一些纸壳包装,看起来颇有90年代的感觉。不过在整个DIY过程中还需要一些比如初级的焊接和动手能力,不过整体来说难度不是太大,感兴趣并且喜欢DIY的朋友可以访问网站直接查看具体过程

本文来自:树莓派实验室

树莓派在日本新增生产据点以扩充全球产能

服务于全球工程师的分销商 Electrocomponents plc 集团旗下的贸易品牌RS Components (RS) (LSE:ECM) 近日与树莓派(Raspberry Pi)基金会联合宣布,依据一份本地合同制造协议,将在日本制造其最新的树莓派3信用卡尺寸单板计算机。此次提升树莓派的全球产能,是为了满足亚太地区对这一流行平台不断增长的庞大需求。

RS Components 公司亚太区产品、供应商、库存和定价管理主管William Chong表示:“树莓派的现有型号将继续在英国南威尔士制造,而双重制造地点的就位,将可满足未来的全球需求增长。亚太区是树莓派的一个显着增长市场,这一新的 ‘日本制造’元素意味着我们现在已经为该增长做好了准备。” 树莓派的所有版本都将可以在RS网站订购。

首款“日本制造”型号将是树莓派3型号B,在强大的内置64位ARM Cortex-A53四核处理器推动下,具有显着升级的处理能力,可实现比最初的树莓派快十倍的性能。

树莓派3是树莓派系列的最新迭代,该系列自2012年推出以来,在工程师和爱好者中取得了巨大成功。第一千万片树莓派于9月份伴随着欢呼声和庆祝出售,显示出这个用途极为广泛的低成本计算平台受到异乎寻常的广泛爱戴,可以为教育、工业、兴趣型电子项目、以及创客运动中的大量应用提供解决方案。实际上,其应用范围似乎是无穷无尽的。

Electrocomponents 的集团首席执行官 Lindsley Ruth 评论道:“我们很荣幸成为树莓派所取得非凡成就的一部分。它在很多工业应用以及教育行业中引起了巨大轰动。在这个非凡的成功故事中,RS是供应链中的一个关键节点,随着日本的新产能付诸实施,我们将会再接再厉,开创新的成功故事。”

Ruth 补充道:“RS相信,在日本的产能扩充将助力树莓派现象继续在全球风行。由于“随处计算” (computing everywhere) 日益成为‘新常态’,在工业、教育、以及发展中的创客运动中,增长机会无疑将会越来越多。随着智能家庭、智能工厂、智能电网和智能城市应用的普及,物联网(IoT)定将成为树莓派的一个巨大推动因素。树莓派已经衍生出一款笔记本电脑‘Pi-top’,这是一台用户自己组装的笔记本电脑,可以教授计算机架构的基础知识,并让学生们接触和修改笔记本电脑的硬件能力,而不仅是软件。”

RS在 www.china.rs-online.com 还提供一系列的树莓派新手套装。该新手套装将有三个版本,包括“官方的”优质套装、以及价格较低的高级套装和超值套装,可满足不同客户和预算的需求。这些新手套装能节省时间,使用方便,可以让用户拿到电路板后立即开始着手原型产品制作和开发项目。在RS顺畅的订货流程支持下,包括通过RS电子商务网站进行极为方便的在线订购,并有RS的准时交货承诺,这些新手套装具备了出色的附加价值。

RS在亚太地区已有20年经验,以此为后盾,竭力通过创新解决方案提供出色的客户体验,服务于明天的采购、资产管理和设计项目需求,而树莓派3新手套装正是另一个例子。

Eben Upton即将访问日本

树莓派基金会的创始人和受托人兼树莓派(贸易)公司的首席执行官Eben Upton将于12月11至14日访问日本。作为一名国际公认的技术领袖和远见卓识者,Upton将分享对于在RS支持下在日本扩充树莓派3产能的看法,并将与当地树莓派社区讨论行业热点话题和创意项目的想法。

目前从Eben Upton的twitter已得到证实

2

用Make来入门简单的并行计算

我们已经习惯于听到说树莓派改革了原有的教育和创客社区,但事实上树莓派2的开发过程中,他同时参与了计算机历史上另一个改革浪潮:从单核计算机到多核计算机的转变。

这会在最根本的程度上改变我们写程序的思维,树莓派2和3上面都搭载着一个四核的处理器,四核也就意味着可以同时运行四个任务;理论上来说,对于同一个程序而言这让我们可以有四倍于过去的速度,但是实际上我们很难去使用去真正地发挥这个多出来的计算资源。在这篇文章中,我们会稍稍地介绍一个最简单的使用树莓派四核性能的并行计算的方法。

本文由KnownCold翻译自MagPi第52期

三核处理器的早餐1

 

在我们开始写程序之前,我们先来看一下我们每天都会做的一件事:做早饭。如果我们尝试着去描述一下这个做早饭过程,那么他看起来可能是右图这样的一个列表。

 

这个列表呢,他是一个很明显的顺序执行的程序,他包括了所有做早饭的必要的工作,但是还遗漏了一些重要的事情。事实上,我们永远不会像这个列表一样照着这个顺序一个一个任务地做下去,我们会同时地做几件事情,比如我们可以同时煮水和烤面包片;当然也会有一些事情不能同时做,比如只有当你煮完水才能泡茶喝。

 

所以我们可以换一种方式来描述这个做早饭的任务,就像下面这个图一样:

2

我们从上而下的做这些小任务,当每一个上面的任务做完之后,我们就能接着做他下面的那个任务,显然地,这样做起来速度会比前一种列表的顺序快很多。

当然,不是所有的任务都可以分解成小任务,也不是所有的小任务可以这么并行地来完成。

使用Make

那么在树莓派2和3上,我们怎么来做到类似的分解任务,然后并行运行呢?

Raspbian这个操作系统上,原生的就有一个程序叫做Make,这个程序按照一个有依赖的任务列表,按一定的顺序来执行每项任务,恰好他支持在树莓派上的并行计算。

Make这个程序本身一开始被设计为给C语言或者C++语言这些需要编译源代码的程序语言提供各种依赖和编译的顺序,而现在他也支持执行各种只要能够被他描述的有依赖性的任务。想要使用Make,我们需要编写一个makefile来描述每项任务之间的依赖,作为一个例子,我们会写一个程序,用来把一堆图片的缩略图拼凑成一个大图,这个程序可以用来处理大量的图片文件,比如在一个服务器上处理大量图片,我们就能粗略地查看一下这些缩略图了。

除了Make,我们还要使用一个叫做ImageMagick的程序来转换图片,用下面的Bash代码来确保我们的程序里面已经有ImageMagick和Make了:

[bash]sudo apt-get update
sudo apt-get install make imagemagick[/bash]

我们打算先使用Make来生成每张原始图片的缩略图,最后再把他们拼凑起来,这个程序的主要工作就在于生成缩略图,依赖图如下所示:

3

这个图展示了缩略图、原始图和最后的拼图之间的关系,因为每个缩略图的生成过程都是独立进行的,所以我们可以让树莓派的四个核同时投入生成缩略图的这个工作,然后当缩略图都生成完全的时候,就可以进行下一步生成拼图了。

Makefile 的编写规则

Makefile文件是我们用来描述所有任务和他们之间的依赖关系的,首先,他定义了任务相关的原始图片和缩略图的列表,然后我们在图里定义了两个依赖规则。第一个规则描述了如何从原始图片生成缩略图:“fullsize”这个文件夹里面所有的图片都要通过“convert”这个命令来转换成“thumbs”文件夹里面的同名文件。需要注意的是,包含命令的那几行必须要用tab键的缩进开头;第二个规则是明确了最后的拼图必须依赖于前面的所有缩略图,使用了”montage”命令来创建拼图并显示。我们已经告诉Make哪些命令用来缩小尺寸,那些命令用来拼凑图片,但是我们还没有明确一个执行的顺序,Make会自己计算出一个合适的顺序,毕竟我们已经从一个单一顺序的程序描述转换成描述并行任务和互相的依赖了,系统已经能自己想出最合适的最高效的执行顺序了。

这次的makefile如下:

[bash]
# Thumbnail size in pixels
SIZE = 128×128

# The list of original photos to use (fullsize/* refers to all files
# in the directory fullsize)
ORIGINALS = $(wildcard fullsize/*)

# Use the list of originals to build a list of thumbnails (this takes
# the list of originals and changes the prefix on each file from
# ‘fullsize’ to ‘thumbs’)
THUMBS = $(ORIGINALS:fullsize/%=thumbs/%)

# RULE 1: Generate each thumbnail from its original using the convert
# utility from ImageMagick, rotating the image if necessary
thumbs/% : fullsize/%
convert $< -thumbnail $(SIZE) -auto-orient $@

# RULE 2: Combine all the thumbnails into the montage and display it
montage.jpeg: $(THUMBS)
montage $(THUMBS) montage.jpeg
display montage.jpeg &

# Clean up all thumbnails and delete the montage
clean:
$(RM) thumbs/* montage.jpeg
[/bash]

 

最简单的运行方法就是运行

[bash]make[/bash]

这会启动Make程序,然后读取我们在makefile里面写完了的相应规则,并开始按照正确的顺序执行命令;但是,Make一开始会假定可用的处理器核心只有一个,也就是说仍然一个一个的慢慢地执行下去。当然我们可以很方便告诉Make我们有四个核:

[bash]make -j4[/bash]

这个命令明确了Make会同时执行四个任务,所以通过这种方法的话,我们的程序速度会是之前的四倍左右,现在让我们在“fullsize”文件夹里面添加一些新的图片然后运行Make吧,它可以检查每个文件的时间戳,确定哪些工作是必要,哪些工作是不需要做的(假如之前生成过一次缩略图,第二次就不需要重复了),这也就意味着,在Make运行到一半的时候,我们可以随意的中断,然后下一次继续。

运行下面的命令就会

[bash]make clean[/bash]

就会清空所有的缩略图和拼图。

教程2_按键控制流水灯

按键是最常见的输入设备之一,普通的按键内部有两个不接触的触片,当按键被外力按下后,两触片连接在一起,外力松开后又还原为断开状态,与其它元器件配合使用可实现很多的功能。它的操作直观有效,很多操作都需要通过按键来控制,几乎所有的电子设备都有保留按键的设计,下面一起来学习在树莓派上实现简单的按键操作。

实验原理

将按键连接树莓派,通过改变按键的开合状态来实现树莓派IO口电平的高低变化,在程序中检测按键所连接的IO口的电平,设置好检测到不同电平时各自的操作实现不同的效果。

实验内容

学习按键的使用

编写程序实现花样led

编写程序实现检测按键输入

实验元器件

树莓派及电源 x1

无线网卡 x1

面包板 x1

按键 x1

LED x3

电阻 x1

T型板及彩虹连接线(方便面包板连接使用)x1

  杜邦线 若干

以上器件可在树莓派创客社区淘宝直营店购买:https://52pi.taobao.com

实验步骤

一、连接线路

1

2

二 、编写程序

登陆树莓派后进入wiringPi目录,新建button.c编辑写入以下代码:

#include <wiringPi.h>

#define ButtonPin 0

int LedPin[3] = {12,13,14};

int main (void)

{

int x = 0;

wiringPiSetup ();

for (x = 0;x < 3;x ++)

{

pinMode (LedPin[x],OUTPUT);

}

pinMode (ButtonPin, INPUT);

pullUpDnControl (ButtonPin, PUD_UP);

while(1)

{

while(digitalRead (ButtonPin) == 0)

{

for(x = 0;x < 3;x ++)

{

digitalWrite (LedPin[x], HIGH) ;

}

delay (300) ;

for(x = 0;x < 3;x ++)

{

digitalWrite (LedPin[x], LOW) ;

}

delay (300) ;

}

digitalWrite (LedPin[0], HIGH) ;

delay (300);

digitalWrite (LedPin[0], LOW) ;

digitalWrite (LedPin[1], HIGH) ;

delay (300);

digitalWrite (LedPin[1], LOW) ;

digitalWrite (LedPin[2], HIGH) ;

delay (300);

digitalWrite (LedPin[2], LOW) ;

}

return 0 ;

}

编写完代码保存退出。

3

再进行编译输出到button文件并运行,即可实现三个LED灯循环依次闪动,当长按下按键后,三个LED灯变为同时闪动效果。

第一百万个树莓派和全新的入门套件

当我们开始树莓派这个项目的时候,我们只有一个简单地目标:增加每年申请就读剑桥大学计算机科学专业的人数。通过把廉价的、用于编程的计算机放到合适的年轻人手里,我们希望可以得到像八十年代我们那样的兴奋感。

在那个时候,我们想着有生之年如果出货量能达到一万台,那我们的运气就很不错了,并没有想到那么多的成年人、那么多的业余爱好者会使用树莓派,也没有想到这么大的商业成功,当然更不会想到四年之后的今天我们在英国每天生产成千上万的板子、销往世界各地。

这样一来,你就可以想象到能够宣布在过去的四年半的时间中我们已经出售了一千万台树莓派是多么奇怪了。多亏了你们,我们才得以超过3个数量级的情况实现我们的梦想,而且我们现在也才处于刚刚开始的阶段。每一块你购买的树莓派,都相当于支持了我们正在开发的工程工作和我们未来的教育计划(包括Code Club和Picademy。

 

为了庆祝这第一千万个树莓派,我们第一次推出了我们认为最完美的套件,树莓派官方入门套件。

入门套件

starter_kit
在这个简洁风格的白盒子里(就像那个Kinneir Dufort设计的官方外壳),你会找到:

– 一个树莓派3B
– 一个8GSD卡(已经烧写好NOOBS镜像)
– 一个官方外壳
– 一个官方2.5A支持多区域的电源适配器
– 一根1米HDMI接口线
– 一套光学鼠标和剪刀脚结构的高质量键盘
– 一本基金会版本的树莓派奇遇记

这就是我们目前最好的产品:最新的树莓派板卡,官方的配件,我们能找到的最好的USB外围设备,还有一本最相关的树莓派资料。在英国国内,这个套件可以从我们的合作伙伴element14和RS Components处以99欧元的价格购买。对于世界其他地区,在接下来的几周里,我们马上会分发到你们最喜欢的代理商去。

SUSE首次发布树莓派3版本操作系统

我们推出的第一个64位产品是搭载4核ARM Cortex-A53处理器的树莓派3,它支持ARM的A64指令集和ARMv8-A架构。但是我们还没有机会在它上面去运行一个64位的操作系统:因为我们的Raspbian系统在一开始的时候,就被设计成一个能运行在所有的树莓派主板上的操作系统,包括32位ARMv6的树莓派1、树莓派Zero和32位ARMv7的树莓派2。

在我们开发树莓派3的同时,我们的社区里,已经有了一些很棒的成果,比如论坛用户Electron752的一些作品,多亏了他,我们现在有了一个可以工作的64位内核了,而且UbuntuFedora用户都已经能在这个内核上成功运行了。

上周还有一个重大的发布,那就是SUSE发布了一个支持树莓派3的Linux企业版服务器版本。

susecon_raspberry_pi_case-450x261

为什么这个很重要呢?因为这是我们第一次有了一个来自主要供应商的64位操作系统官方发布,而且这个操作系统完全支持板上的WiFi和蓝牙。SUSE慷慨地上传了他们在开发过程中使用到的各种补丁和文件,因此我们有理由相信,来自其他供应商的64位操作系统也马上就要来了。

现在可以从这里下载到这个版本的系统镜像,试试看,然后说说你的看法吧。

教程1_点亮第一个led灯

学习模数电路,从点灯开始;

学习51单片机,从点灯开始;

学习stm32,从点灯开始;

学习DSP,从电灯开始;

学习FPGA,从点灯开始;

渐渐的,我们已经习惯了用点灯的方式去接触新的事物,不知不觉中,我们已经成为了人们口中常常提到的“一灯大师 ”。

今天,我们来学习树莓派的使用,依旧从点灯开始,用点灯的方式一步步点亮我们的世界。

 

实验原理

同过树莓派的IO口可以外接很多外设,如舵机、红外发送接收模块、继电器、步进电机、各类兼容传感器、屏幕等。通过这些外设可以制作很多有趣的设计,改善我们的生活方式提高我们的生活质量。

树莓派的IO口驱动能力是比较弱的,驱动电平为3.3V,高电平驱动比电平驱动能力稍弱些,但这也足够驱动led工作,为方便理解,以下实验以高电平驱动方式进行。IO口输出高电平,led灯亮,输出低电平则灭。

 

实验内容

  • 使用面包板和杜邦线连接电路
  • 通过ssh局域网无线连接树莓派
  • 使用wiringPi控制IO
  • 使用vim编辑器

 

实验元器件

  • 树莓派及电源 x1
  • 无线网卡 x1
  • 串口连接器 x1
  • 面包板 x1
  • Led灯 x1
  • 电阻220欧 x1
  • 杜邦线 若干

 

以上器件可在树莓派创客社区淘宝直营店购买:https://52pi.taobao.com

 


实验步骤

一、连接线路。

%e5%9b%be%e7%89%871%e5%9b%be%e7%89%872

实物图如下:

%e5%9b%be%e7%89%8711

二、通过ssh连接连接树莓派

通过上一课程的学习,已经知道如何通过串口连接树莓派进行联网,接下来学习如何在局域网中通过ssh无线网络连接树莓派,这样摆脱了接串口线的麻烦,方便很多。

1.首先通过串口连接上树莓派,登陆进入树莓派后输入 ifconfig 回车。可以查看到树莓派的ip地址。

%e5%9b%be%e7%89%874
2.电脑打开PuTTY软件,选择SSH模式,输入上面查看的ip地址,端口22,确认无误后点击Open,输入默认用户名密码,登陆完成。

%e5%9b%be%e7%89%875

%e5%9b%be%e7%89%876
三、使用vi编辑器编写控制代码及编译运行

1.登陆树莓派后,输入cd ./wiringPi 进入wiringPi目录,使用vi编辑器编辑c源文件,

输入vim.tiny blink.c,如目录下有blink.c文件打开编辑,若无则会新建一个打开编辑。

%e5%9b%be%e7%89%877

2.按i进入输入模式,输入C语言代码,如下是使GPIO17间隔500ms交替输出高低电平的代码。

%e5%9b%be%e7%89%878

对应各栏接口的标号,如以下程序使用的0即为树莓派的GPIO17接口也是物理接口的11接口。

#include <wiringPi.h>

int main (void)

{

wiringPiSetup () ;

pinMode (0, OUTPUT) ;

for (;;)

{

digitalWrite (0, HIGH) ; delay (500) ;

digitalWrite (0, LOW) ; delay (500) ;

}

return 0 ;

}

%e5%9b%be%e7%89%879

 

代码书写完毕后输入按esc退出编辑模式,再输入:wq进行保存退出

3.输入gcc –o blink blink.c -lwiringPi编译程序,

  • gcc是对c语言编译的声明,
  • -o blink是输出工程文件到blink文件(接下来的执行文件)
  • blink.c是刚刚编写的c语言程序
  • -lwiringPi是库的调用

输入sudo ./blink执行程序。(需要通过sudo命令获取权限)

%e5%9b%be%e7%89%8710

 

可以看到面包板上的led在闪烁,恭喜您已学会用树莓派成功点亮第一个LED灯。

%e5%9b%be%e7%89%873

使用LAKKA系统打造怀旧游戏机

之前就关注过很多怀旧游戏机的项目,但是苦于很多项目的复杂难度和硬件要求,一直没有动手,前几天逛到一个网站,发现这个项目,支持不少硬件平台,而且搭建也很简单。

下载镜像和烧写

进入官网,就可以Get Lakka,选择树莓派2或3,这两个其实是同一个系统镜像(同时可以看到这个项目真的支持很多硬件平台)。

 

2

 

下载完解压是一个镜像文件3

 

如果是windows系统,可以用Win32DiskImager来烧写sd卡,然后和往常一样,sd卡插入树莓派,hdmi连接到显示器,然后有音响的话,还能插上音响,插好手柄(大多数,最后通电,就能成功地打开Lakka系统了。

 

初次启动

 

4

 

第一次启动会出现上面的界面,然后会有大概30秒的时间来覆盖文件系统到整个sd卡并重启,重启成功就会有下面的画面。

 

5

 

开始游戏

 

Lakka支持很多很多模拟器,包括NES(红白机),GBA,雅塔礼等等,事先把游戏rom放到文件系统的roms文件中(windows系统可能需要linux虚拟机)。

 

  • 启动系统后,选择Load Core,确定游戏相应的模拟器型号;
  • 选择Load Content,浏览文件系统,确定想玩的游戏,就会开始相应的游戏;
  • 一时间就会会想起小时候玩小霸王的感觉了

 

6

 

坦克大战

 

7

 

超级马里奥

 

8

 

9

 

不知道叫什么的很老很老的游戏

 

10

 

雪人兄弟

 

11

 

12

 

成功的在实验室搭起了一个游戏机,其中为了有点怀旧的感觉。。刻意使用了实验室废弃的显示器(不然就用大电视机了)。。

 

教程0_树莓派系统及wiringPi的安装

认识树莓派

树莓派(Raspberry Pi)是一款基于Linux系统的只有信用卡大小的单板机电脑。具有电脑的所有基本功能,它是由英国的树莓派基金会所开发,目的是以低价硬件及自由软件刺激在学校的基本计算机科学教育。

树莓派自问世以后,被越来越多的人所追捧,国外的普及度已经相当高,但由于环境的差异和树莓派开发的难度限制,国内对用树莓派的人相对来说属于小众。这几年赶上国内智能硬件的热潮,arduino这种简单的编程方式被越来越多的人所接受,树莓派也被越来越多的人所了解。为减少树莓派爱好者的开发难度,本基础教程主要介绍在树莓派上使用与arduino编程相似的编程库wiringPi一步步熟悉树莓派的IO操作及linux的基本操作方法。

了解树莓派创客社区

树莓派创客社区是由一群热爱开源、热爱创造的小伙伴们组织的开源社区。旨在与大家分享开源硬件上的点点滴滴,也希望尽我们的微薄之力为广大开源硬件爱好者提供一些帮助。

社区网站:http://www.52pi.net

服务QQ群:233426487

淘宝官方直营店:https://52pi.taobao.com

实验内容

  1. 烧写系统镜像;

  2. 连接电脑串口调试;

  3. 配置wifi无线网络连接;

  4. 安装wiringPi插件;

准备工作

0.树莓派板子

基础实验,树莓派所有版本都可以完成,本教程使用的是树莓派B+版本。

1.树莓派系统镜像

可到树莓派官网:www.raspberrypi.org下载。

2.USBTTL模块 (可到https://52pi.taobao.com购买)

用于电脑和树莓派的连接,通过串口输入命令及代码,也可使用其它连接方式,如:SSH

3. Win32DiskImager软件

用于系统镜像的烧写,其它软件皆可,如:USB Image Tool

4.PuTTY软件

官网:putty.org

电脑与树莓派通信的输入输出串口监视软件,支持快捷键操作(如:Ctrl + c),其它软件也可以使用。

5.USB无线网卡(可到https://52pi.taobao.com购买)

用于联网下载wiringPi和后续的ssh连接树莓派使用。

6.WiringPI

WiringPi(官网: wiringpi.com)是应用于树莓派平台的GPIO控制库函数,WiringPi遵守GUN Lv3wiringPi使用C或者C++开发并且可以被其他语言包转,例如pythonruby或者PHP等。WiringPi中的函数类似于Arduinowiring系统,这使得熟悉arduino的用户使用wringPi更为方便。(树莓派联网后可通过命令下载安装)

7.microSD

用于烧写系统镜像,由于系统较大,尽量使用8GB以上的卡,高速卡更佳,树莓派系统都是放在在储存卡里的,类似于windows电脑的C盘。早期版本树莓派用的是SD卡,注意区分。

8.电源

为适用于多场景使用,建议购买5V 2A左右的电源,电源线为通用的microUSB线。

9.其它实验器件

可到树莓派创客社区https://52pi.taobao.com购买基础套件,包含所有基础实验用的元件,

如面包板、杜邦线、led灯、按键等。

实验步骤

一、烧写树莓派系统镜像

  1. 插入microSD卡到电脑上,打开Win32DiskImager软件,如下图:

1.注意选好盘符,可在电脑文件资源管理器中查看。

2.打开文件夹,选择镜像文件。

2) 选择好下载的镜像文件,点击(Write)进行烧写,如下图:

1.确认选择好的镜像文件版本。

2.点击Write)写入,弹出提醒对话框后点击(Yes)确认写入。

3) 等待系统镜像烧写完毕,会弹出烧写成功对话框,点击确认,系统镜像烧写完成。

二、开机登陆树莓派系统

1.插上烧写好镜像文件的microSD卡,插上USB无线网卡,连接好串口线,串口通信只需连接三根线,GND-GNDTX-RXRX-TX,如下图。

2.将USBTTL串口模块连接电脑,在电脑设备管理器中查看串口号(如:COM3)。

3.打开PuTTY软件,界面如下,先选择串口模式(Serial >> 选择对应的串口号(COM15 >> 选择正确的串口速率(Speed),linux的串口波特率默认都是115200bps树莓派系统也是linux内核,所以选用115200bps点击(Open)打开串口窗口,如下:

4.给树莓派插上电源供电开机,串口监视串口会输出系统开机信息,

输出显示(raspberrypi login:),输入用户名:pi ,输入密码(Password):raspberry 回车(输入密码时无显示,但是是有效的)。

显示输出如上pi@raspberrypi:~$ 开机完成。

配置树莓派连接wifi网络

1.使用wpa_cli命令行配置wifi无线网络

了解wpa_cli命令行

wpa_cli是命令行界面下的无线网连接工具。通过wpa_cli管理备选的网络列表。在备选网络中启用的网络,树莓派会自动试图连接。输入sudo wpa_cli启动wpa_cli的命令行界面(必须sudo提取权限)。常用的指令如下:

status:列出目前的联网状态。

list:列出所有备选网络。目前正连接到的网络会标[CURRENT],禁用的网络会标[DISABLE]

add_network:增加一个备选网络,输出新网络的号码(这个号码替代下文的[network_id])。注意新网络此时是禁用状态。

set_network [network_id] ssid “Your SSID”:设置无线网的名称(SSID)。

set_network [network_id] key_mgmt WPA-PSK:设置无线网的加密方式为WPA-PSK/WPA2-PSK

set_network [network_id] psk “Your Password”:设置无线网的PSK密码。

enable_network [network_id]:启用网络,启用后如果系统搜索到了这个网络,就会尝试连接。

disable_network [network_id]:禁用网络。

save_config:保存配置。

配置方式如下:

中途输出信息可无视,配置完成,输入Ctrl + c退出wpa_cli命令行。

退出后可输入ifconfig查看网络连接,也可以ping IP地址来测试网络是否连接。

四、通过网络使用GIT工具安装wiringPi

1.如果在你的平台上还没有安装GIT工具,可以输入以下命令安装:

sudo apt-get install git-core

若在这个过程中出现错误,请确认Raspbian版本是否为最新的,可以输入以下命令更新:

sudo apt-get update

sudo apt-get upgrade

安装完GIT工具后可通过GIT获得wiringPi的源代码

git clone git://git.drogon.net/wiringPi

若已经安装过wiringPi可输入以下命令更新。

cd wiringPi

git pull origin

进入wiringPi目录并安装wiringPi

cd wiringPi

./build

build脚本会帮助你编译和安装wiringPi

wiringPi安装完毕,基础实验准备工作已经完成,快快进入下一课程继续学习吧。