您好,欢迎来到百家汽车网。
搜索
您的当前位置:首页比较全的树莓派入门介绍

比较全的树莓派入门介绍

来源:百家汽车网
加电

没有插SD卡,加电时除了电源灯之外,不会有任何的反应,HDMI没有任何输出,树莓派的说明书中提到可以通过串口输入命令,但是它的串口是通过那两排GPIO的脚的其中三个脚印引出的,而且是TTL电平的,必须通过驱动芯片才能和PC机的串口连接。

准备SD卡

树莓派的官网提供了三个版本的镜像文件,还有无数第三方的镜像,由于是初次接触,还是用官网的Raspbian版本,因为是基于Debian的,所以Debian的一些命令和配置方法可以用得上。还要下载Win32DiskImager工具,用于在

Windows下将下载的IMG文件写入到SD卡中。至于为什么把镜像文件直接拷贝到SD卡中是无效的,一言难尽,就和刻录光碟的ISO镜像要用专门刻录镜像的功能,而不能直接把ISO文件刻录到光碟上的道理是一样的。

在这里下载文件,然后把读卡器和SD卡插入计算机,运行Win32DiskImager,选择镜像文件和合适的盘符,如果原来机器上插有其他的USB硬盘或者SD卡,建议在做这件事之前全部拔掉,避免发生选错盘符,把整个USB硬盘资料全部

洗掉的情况。

写入完成后,就可以把SD卡插到树莓派上,把HDMI线、鼠标、键盘、网线全部插上。

首次启动

加电后,如果电源灯旁边的绿色的灯(OK)会闪动,就说明SD卡是可用的。这时如果HDMI连接好电视了,电视上就会开始出现启动画面了。

接着是熟悉的Linux启动界面,企鹅被替换成了树莓:

首次启动将出现系统初始配置的界面,这个界面在也可以在之后的终端窗口中通过sudo raspi-config激活。

由于在初始配置的界面上没有看到有网络配置的选项,所以建议在网络环境中一定要有DHCP,也就是能自动获取IP的网络环境。因为Raspbian的各种软件的安装是需要网络连接支持的。需要用到的功能说明如下:

expand_rootfs – 将根分区扩展到整张SD卡,因为整个Image才400多兆,但是现在的SD卡基本都是几个G的,除非SD卡有其他用途,一般建议选择这项,这样可以有足够多的空间来安装各种程序。  overscan – 可以扩充或者缩小屏幕的设置,除非一启动就发现显示的内容能刚好填满整个电视的画面。大部分情况下是不能填满或者超过,如果这样就要enable这个,然后在系统启动之后,更改config.txt中的overscan_left、overscan_right、overscan_top和overscan_bottom的内容,如果显示内容

超出屏幕的范围(显示不全),就要设置这些值为正值,如果是1080p,一般设置为48。如果显示的内容不能填满屏幕,则设置这些值为负值,如果是1080p,一般设置为-48。具体可以更加显示的结果,以16为步长进行调整。  configure_keyboard - 这个很重要,前面的屏幕选默认值:Generic 105-key (Intl) PC,但在Keyboard layout:时,显示出来的都是English(UK)的,要选择Other,然后在里面选择English(US),否则会出现键盘的一些符号不对或者对调,比如引号”和@符号对调,#号变成英镑符号等等。之后的两个屏幕都选择默认值就可以了,到了:Use Control+Alt+Backspace to

terminate the X server? 时,选择Yes,表示用这个可以终止X Server,当整个X-Window死掉的时候可以用。  change_pass – 默认的用户名是pi,密码是raspberry,一般登录时不需要输入,但是用ssh远程连接时要用到这个用户名和密码,这里可以更改密码。  change_locale – 更改语言设置。在Locales to be generated: 中,选择en_US.UTF-8和zh_CN.UTF-8。在Default locale for the system

environment:中,选择en_US.UTF-8(等启动完机器,装完中文字体,再改回zh_CN.UTF-8,否则第一次启动会出现方块)。  change_timezone – 更改时区,这个很重要,因为树莓派没有内部时钟,是通过网络获取的时间,如果设错时区,那么时间就不正确了,选择Asia – Shanghai,没错是Shanghai,木有Beijing,这是Unix的传统。缩写是CST,不知道是China Shanghai Time还是China Standard Time。  memory_split – 按照网上的说法,这个功能有Bug,会导致/boot/start.elf损坏使系统无法启动,所以不要使用这个功能。可以通过拷贝/boot/下的arm128_start.elf、arm192_start.elf、arm224_start.elf覆盖start.elf来实现显存和内存的划分。为了能播放高清1080p的视频,至少要分配M显存给GPU。所以arm224就不能播放1080p高清视频。  ssh – 是否激活sshd服务,应该选择激活,这是当界面死掉后唯一进入机器的通道(如果Kernel没死的话),可以找另外一部机器,用putty或者其他ssh的工具连接到这部机器上,用pi这个用户登录,至少可以实现安全重启。  boot_behaviour – 设置启动时启动图形界面,正常肯定是Yes。 设置完成后,选择Finish,会提示是否重启,选择Yes。

重启后,将进入LXDE的X-Window环境,反正都是有桌面图标和开始菜单,应该比较容易掌握使用。

让Raspbian支持中文

一直令我很奇怪的是,即使你用Debian的安装光碟安装系统,如果你把Locale改成了中文的话,系统是不会自动安装中文字体的,直接的效果是系统的很多信息都用中文显示,但是由于没有安装字体,所以全部变成了方块,所以完全不知道信息的内容是什么, 这个作为系统安装工具我认为是有问题的,因为这样会直接造成系统不可用,基于Debian的Raspbian也有同样的问题。所以如果你在初始设置时,不小心把系统的Locale设置成了zh_CN.UTF-8,当你进入Raspbian的图像界面时,会马上傻眼了,不知道图标、菜单的内容是什么,因为全部是方块。所以建议初始设置时,locale尽量用en_US.UTF-8或者

en_GB.UTF-8。启动后,双击桌面那个计算机显示器图标,出现提示符时打入: sudo apt-get install ttf-wqy-zenhei

将安装文泉驿的开源中文字体,在这里向文泉驿表示致敬,貌似它是唯一一个开源的中文字体库。郭嘉有钱建孔子学院,但是从来不会有钱搞一套比较完整的开源中文字库出来的。 中文是可以显示啦,输入呢?Linux下早就有啦,叫SCIM(Smart Common Input Method ),所以只要输入:

sudo apt-get install scim-pinyin

就会安装拼音输入法,安装完成后,可以直接打入scim激活,下次启动是会自动启动的。快捷键也是Ctrl+空格。或者直接点击右下角图标选择。 接着运行:

sudo raspi-config

然后选择change_locale,在Default locale for the system environment:中选择zh_CN.UTF-8。然后重启机器,就发现整个环境变成中文的了。

视频播放

标准Raspbian版本中支持树莓派的GPU的播放器好像只有omxplayer,是个命令行程序,没有界面的,也不能拖动。它有很多参数,最常用的是-o,选项有local和hdmi,表示声音输出到audio out还是hdmi,omxplayer后面跟着要播放的文件名称,不支持wmv,不支持外置字幕。打开终端窗口,出现提示符后输入:

omxplayer -o hdmi 文件名

也可以先用cd命令,将当前路径改变到文件所在的目录,文件名就不需要绝对路径了。其实大家会觉得命令行输入非常麻烦,但只要用Tab键进行命令补齐,

用ls列出当前目录的文件,再配合鼠标选择文字,然后按中键(就是按下滚轮)进行连动的复制粘贴,即使没有资源管理器也会发现目录操作可以很快速的。 由于一般媒体文件都是放置在外置的硬盘中,所以这时需要将硬盘接入到USB口上,系统默认会在/media目录下创建和硬盘卷标一样的目录,并将USB硬盘挂接上去,之后就可以访问了。

测试的结果大部分用X.2编码的1080p视频都可以正常流畅播放。唯一一部无法播放的是:[魔术师和兔子].Pixar.Short.Presto.1080p.BluRay.x2.mkv。 这是《变形金刚3》的播放效果:

omxplayer的快捷键如下: Key 1 2 j k i

Action 加速 减速 上一条音轨 下一条音轨 上一节

o n m s q

下一节 上一条字幕轨 下一条字幕轨 显示/不显示字幕 退出

空格或 p 暂停/继续 - + 左 右 上 下

减小音量 增加音量 后退30 前进30 后退600 前进600

浏览器

鬼佬在测试他们的浏览器时,经常都是打开几个英文网站,然后就观察一下载入网页的速度、内存占用情况,然后马上就宣称他们的浏览器在什么平台上运行非常平滑,内存占用有特别少,等等,我们先来看一下几个浏览器是怎么说他们自己的:

Midori(日语“绿”的意思)- Midori is a web browser that aims to be lightweight and fast.(浏览器“绿”的目标是轻量级和速度快)

NetSurf – Small as a mouse, fast as a cheetah and available for free.(象老鼠一样小,象猎豹一样快速,免费)。  Uzbl – web interface tools which adhere to the unix philosophy(坚持unix哲学的万维网界面工具)。

他们没有想到在神秘的东方,有一些不可思议的网站在等着他们。如:新浪新闻的首页。我曾经拿iPhone4和高端的安卓机去访问,基本都是会卡死在那里。实际测试流量的结果,打开整个新浪首页耗费的流量大约在1MByte到2Mbyte,这还是当年Flash视频没那么流行的时候。反正上面的这几个浏览器,在树莓派上,打开新浪新闻首页,肯定整个界面就会卡死一段时间,等全部页面下完了,拉动起来也非常吃力。

我突然想到了Chrome,搜索了一下,发现Chrome的开源版本Chromium也给port到了Raspbian上了,安装的方法如下: 打开终端窗口,出现提示符后,打入:

wget http://goo.gl/go5yx -O install.sh 成功后,打入:

chmod a+x install.sh

然后,输入(注意一定要加上前面的”点斜杆”):

./install.sh

就开始下载和安装一些必要的包,还有下载整个Chrome并安装,整个过程速度飞快,难道功夫网对Linux格外开恩?安装完成后,直接打入(&让它在背景运行):

chrome -disable-ipv6 &

就可以看到熟悉的Chrome界面了:

在进行魔鬼测试前,我先做了一点点优化,不像其他浏览器,Chrome是一定要有磁盘缓存的,不能关闭的,在正常情况下,这不是什么大问题,因为磁盘的速度远高于网速,但是现在我们用的是SD卡,例如我的class 6的卡,读取速度就是6Mbps,比很多ADSL都慢,所以缓存在这种情况下成为瓶颈,但是它的内部设计有是必须有缓存的,网上有些说法是把缓存的size改成1K,相当于disable掉它。但是缓存对提升速度还是有帮助的,我的做法是用USB硬盘做缓存,启动时打入下列的命令:

chrome -disable-ipv6 --disk-cache-dir=USB硬盘的某个目录 & 好,魔鬼测试开始,开新浪新闻:

整个载入时间花了可能接近一分钟,但是载入的过程中是可以拉动网页的,载入后也可以上下拉动,其他浏览器是几乎死掉了。网页下载的过程中,CPU的占用一直是满的,但是下载完后,CPU的占用就基本很小了。

我还是太傻太天真了,以为新浪新闻就是魔鬼测试了,哪知道还有个更大的魔鬼在后面,那就是新浪微博:

注意右下角的CPU占有率,微博在下载完页面后,还是保持基满的CPU占用率。这时整个浏览器拉动起来很费劲了,而且任何一个操作,比如点开图片都要

等很久。用224的内存分配,情况好一点,但是基本没办法做到可用。原因应该是新浪微博用了大量的Javascript。

但是整体上来说,Chrome还是表现最佳。如果有人能用专业的测试工具测一下这几个浏览器的表现,看看瓶颈在哪里就好了。

接下来玩什么

1、超频(overclocking)

玩家型的CPU都是支持超频的,通过更改/boog/config.txt中的下列参数可以实现超频: Option arm_freq gpu_freq

Description

frequency of ARM in MHz. Default 700. Sets core_freq, h2_freq, isp_freq, v3d_freq together.

frequency of GPU processor core in MHz. It have an impact on ARM performance since it drives L2 cache. Default 250.

frequency of hardware video block in MHz. Default 250.

frequency of image sensor pipeline block in MHz. Default 250.

frequency of 3D block in MHz. Default 250. frequency of SDRAM in MHz. Default 400. ARM/GPU core voltage adjust. [-16,8] equates to [0.8V,1.4V] with 0.025V steps. Default 0 (1.2V) [1]

Sets over_voltage_sdram_c, over_voltage_sdram_i, over_voltage_sdram_p together

core_freq h2_freq isp_freq v3d_freq sdram_freq

over_voltage over_voltage_sdram

SDRAM controller voltage adjust. [-16,8] equates to [0.8V,1.4V] with 0.025V steps. Default 0

over_voltage_sdram_c (1.2V) [1]

SDRAM I/O voltage adjust. [-16,8] equates to

over_voltage_sdram_i [0.8V,1.4V] with 0.025V steps. Default 0 (1.2V)[1]

SDRAM phy voltage adjust. [-16,8] equates to

over_voltage_sdram_p [0.8V,1.4V] with 0.025V steps. Default 0 (1.2V)[1] 如何组合参照下表(注意:如果设置了over_voltage,质保就会失效,但是SD卡在你手上它怎么知道你设了?): arm_fgpu_fcore_req req freq 750 900 900 900 930

255 250 275 350

450 500 500

h2_freq

isp_fv3d_fsdram_over_voreq req freq ltage

450 500 500 450 500 450 500

6 6

over_voltage_sdram

1000 1000

但是本人没有玩过,会不会发生冒烟、地震、火山爆发或61年一遇的洪水等情况,就不得而知了。

2、Razdroid

实际上就是 Android 4.0 (Ice Cream Sandwich) for Raspberry Pi。根据这个帖子,安卓4.0已经在树莓派上跑起来了,很快就会发布了。这是我非常期待的一个东西,之后就有大量的应用程序可以用了,但是我还是对性能上的表现十分担心,毕竟现在很多手机都是1G以上的CPU和1G内存了。

3、XBian

XBMC是Linux的媒体中心版,XBian就是XBMC和Raspbian结合的产物,作为播放器应用,这个也应该更加方便,支持的文件格式应该更多,尤其是能支持外置字幕。等我新买的SD卡到货后,就会马上刷这个试试。

4、外壳

现在网上已经有很多外壳的3D模型,用3D打印应该就可以打出来了,但是价格会非常昂贵,我询问了一下大概一个外壳要300块左右,如果有人能开模做出个低价的外壳出来就好了。

总结

很好玩的一块板,作为家庭的播放器和下载机应该是没什么问题的,普通的上网浏览也是可以胜任的,如果opera能port到上面来,用服务器端进行渲染,应该访问复杂的页面也是可以的。由于所有的系统文件和虚拟内存(SWAP)全部都是在SD卡上,所以SD卡的速度对性能可能会有很大影响,等换一块高速卡对比一下再看。我觉得在上面做应用应该采用专门系统的方式,很难一个系统解决所有问题,比如做一个系统是专门打游戏的、一个专门优化后进行上网的、一个进行视频播放的,一个专门拿来做编程学习的,然后通过换不同SD卡的方式实现不同的功能,和以前的红白机一样。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- baijiahaobaidu.com 版权所有 湘ICP备2023023988号-9

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务