树莓派(Raspberry Pi)是基于ARM的微型电脑主板,外形只有信用卡大小,因此也被称为新型卡片式电脑,树莓派具有电脑的所有基本功能,可谓麻雀虽小五脏俱全。而其开发组织Raspberry Pi 基金会更是以“提升学校计算机科学及相关学科的教学质量,让计算机变得有趣”为宗旨,所以热爱IT技术、喜欢折腾的千万不要错过这一神器。

树莓派早期有A和B两个型号,B型的树莓派配置上要高A型一个级别。主要区别在USB接口、网卡的数量、功率、工作电流和运行内存上。甚至日常生活中标准的5V2A移动电源都可以支撑他们正常工作,而最新产出的Raspberry Pi 3更是搭载了64位四核1.2GHz处理器,1GB LPDDR2内存,完全兼容已发布的应用程序。Raspberry Pi 3在无线方面还直接板载了激动人心的802.11n Wi-Fi和蓝牙4.1支持。而供电方面第三代树莓派则需要搭配2.5A的USB充电器。笔者体验的是树莓派B和B+这两块板,通过av或者HDMI可以将图像输出到任何显示器上,接上鼠标和键盘,一台完整的电脑就诞生了。如果你手头上没有闲置的显示器,树莓派板子上预留了一个csi接口的液晶显示屏,通过notro/fbtft这个开源项目,可以完整的实现framebuffer驱动,让树莓派完美支持tft液晶,有没有想起了曾经爱不释手的MP4,现在又被遗忘在哪个角落呢?

我们可以将树莓派看做是一台搭载Linux操作系统的迷你电脑,虽然极客们已经绞尽脑汁的想要把windows 10 x86移植到上面了,但树莓派和Linux才是最配的。出厂默认的树莓派是不带存储设备的,我们需要一张SD卡(B+之后采用体积更小的TF卡),然后通过win32diskimager等磁盘管理工具即可将合适的操作系统烧录到内存卡上,官方提供并推荐的操作系统是基于debian的Raspbian,Raspbian自带了PythonJava等语言的集成开发环境,当然NOOBS也是不错的选择。安装和配置完系统之后我们就可以”为所欲为”了。

我们甚至可以说树莓派无所不能,除了用于日常的编程学习,树莓派的内核在编译时就自带了gpio的驱动,你可以很方便的通过python GPIO、wiringPi、BCM2835 C Library等第三方操作库进行编程和学习。

事实上我对硬件的了解并不多,因此玩的更多是软(黑)科技,当然,要是让我用树莓派实现一个收音机,我想还是可以做到的。笔者对Linux的学习也是在摸索阶段,目前正在学习《Linux就该这么学》这本书中Linux命令的章节,刘老师的书籍是免费公开的,冲着这种共享精神也要给他做下广告,书籍网址是,趁着学习Linux的劲头也写下了这篇技术含量不算高的文章来介绍树莓派的黑科技。

树莓派简而言之有这样两大玩法:一是作为控制中心实现各种"智能机器",在智能设备方面,我们可以通过树莓派实现一台Wifi小车、自制笔记本、智能开关、监控拍摄、甚至智能机器人等。二是发挥其每一块硬件的提供"软"服务,在软服务方面可以通过树莓派搭建个人网站、作为网络存储设备、部署家庭相册、提供WIFI热点、站点监控仪等。

我的其中一块树莓派(Model B+)现正在实验室中服役,作为实验室的NAS(网络附属存储),它主要提供的“软”服务不只是文件的存储,同时还提供了实时备份和同步的功能。采用硬盘架来装载闲置的硬盘,通过高速USB3.0的接口对存储设备的进行读写(性能瓶颈在于网络而不是IO,因此这里没有进行优化)。使用SMABA协议我们可以很方便的在Linux、Windows甚至OS X中对NAS进行访问,通过schedule调度和rsync进行实时增量备份,再配合Shell脚本进行智能判断,实现从远端服务器进行文件的同步。

而我的另外一块树莓派更是久经沙场,曾经一度被当作我的Git仓库,说实话内存有点吃不消,通过Docker进行gogs的安装和部署可以说是最敏捷的git仓库搭建之道。当然后面我还给这位老将带上温度、湿度传感器,通过websocket推送到服务器,然后只需要在手机浏览器或者微信访问页面就能对实验室的温度湿度一览无余了。甚至想过一怒之下用树莓派搭载继电器,通过WEB服务器进行电动门的开关控制,当然出于“安全”着想,我还是放弃了这个危险的想法。

树莓派是我在Linux学习之路上又一件神奇的法宝,通过对它的学习和使用,我对Linux基础掌握和应用能力都得到了不小的提升。同时还挺庆幸自己的学习路线并没有太过曲折,实践之后久而久之,原来用于打基础的《Raspberry Pi用户指南》、《Linux就该这么学》、《玩转树莓派Raspberry Pi》书籍逐渐从教材的作用转变为工具书进行查阅。这篇文章只是出于兴趣爱好,执笔比较仓促,如有盲点还望海涵。当然另外一个目的就是想广而告之:树莓派真的太棒了!

一块神奇的树莓派电子板竟让我学会了Linux系统的更多相关文章

  1. 树莓派学习笔记 1 -- 硬件的需求以及raspbian系统的安装

    树莓派(Raspberry Pi) --  基于Linux系统的大小只有信用卡大小的卡片式机器.  按照发明者的想法,他是想降低学习程序开发的成本而设计制作的这款产品.你可以理解为一个简陋版的电脑.树 ...

  2. 树莓派linux系统连接windows7系统中的共享文件夹的正确姿势

    一.要想使用树莓派linux成功访问win7的共享文件夹而不报错,最重要的事情是要正确设置win7中共享文件的设置. 1.需要共享文件点击右键→属性 2.共享选项卡→网络和共享中心 3.点开公用下拉菜 ...

  3. 树莓派与Linux系统之间文件传输

    最近因为要学习Python,于是把放在家里接了一年灰的树莓派又给搜出来了,刚买那会也捣鼓了好一阵子, 基本操作都学会了,但现在又忘光了,只能又从头开始搞了,首先第一个要解决的是怎么把文件从电脑传输到树 ...

  4. 树莓派学习笔记(2):常用linux命令

    转载请注明:@小五义http://www.cnblogs.com/xiaowuyi 1.ls命令:列出文件目录的常用命令,主要参数见下表. -a 列出目录下的所有文件,包括以.开头的隐含文件. -b ...

  5. SpringBoot2.1电商通用(微信+支付宝)支付系统实战

    『课程目录』: ├─第10章 全模块电商系统之商品模块 │      10-1_商品列表-上.mp4 │      10-2_商品列表-中.mp4 │      10-3_商品列表-下.mp4 │  ...

  6. 夏日葵电商:连锁零售店小程序o2o系统解决方案

    公众平台"附近小程序"功能上线后,一个主体账号可以同时绑定N+个门店,这对连锁零售店铺来说是重磅福利呀,无论你是通过搜索还是线下扫码进入小程序,线上与线下都完全贯通了,线上多种入口 ...

  7. Raspberry Pi(树莓派)上从零开始构建Linux系统(简称PiLFS)(一)

    一. 准备工作 1. 装有Linux宿主系统的树莓派主板,可参考 Raspberry Pi(树莓派)上安装Raspbian(无路由器,无显示器) 2. 参考网址:Linux From Scratch ...

  8. 树莓派3b+_32位linux系统arm架构安装JDK

    如图我的Raspbian系统如下图版本信息: 可以看到是armv7l,我查了一下是32位的arm架构,即下载第一个就好了 然后用SSH Secure Shell远程上去把压缩包或者解压后的文件传过去 ...

  9. 新加了一块硬盘,在bios中可以看的到,在系统的磁盘管理器中看不到新加硬盘

    今天新加了一块硬盘,进入bios中可以看到新加的硬盘,但是进入系统后在磁盘管理及磁盘驱动器中都看不到.并且在设备管理器下其他设备出现了ATA channel1,前面显示感叹号,如下图所示: 而且电脑变 ...

随机推荐

  1. 【转】lonekight@xmu·ACM/ICPC 回忆录

    转自:http://hi.baidu.com/ordeder/item/2a342a7fe7cb9e336dc37c89 2009年09月06日 星期日 21:55 初识ACM最早听说ACM/ICPC ...

  2. Mysql 语句中对关键字进行转义的方式

    在SQLserver中, 对列名表名库名Owner进行转义使用的是[ ] 这个我在其他文章中讲过 ,而且这是一个很好的习惯! 同理  在MySql中 也建议对表名等进行转移  使用的方式是 ``  就 ...

  3. win7 APPCRASH问题解决!

    真是废了老劲了..什么清理插件,各种运行msconfig/启动都试了 问题:**.exe已停止工作 问题事件名称: APPCRASH 应用程序名: compute_image_mean.exe 应用程 ...

  4. YTU 3025: 创建二叉树

    原文链接:https://www.dreamwings.cn/ytu3025/2628.html 3025: 创建二叉树 时间限制: 1 Sec  内存限制: 128 MB 提交: 3  解决: 3 ...

  5. 20160308001 GridView的Sorting排序

    参考地址: http://www.cnblogs.com/yinluhui0229/archive/2011/08/01/2124169.html 功能介绍:单击gridview的某一列列头,可以对该 ...

  6. Mayor's posters(线段树+离散化POJ2528)

    Mayor's posters Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 51175 Accepted: 14820 Des ...

  7. PetaPoco入门(一)

    1. ORM概括 1.1. ORM简介 ORM 对象-关系映射(Object/Relation Mapping,简称ORM),是随着面向对象的软件开发方法发展而产生的.面向对象的开发方法是当今企业级应 ...

  8. javascript 常用实用函数。。。。。。

    javascript 正则表达式 1.获取屏幕大小尺寸 /* 获取屏幕大小尺寸 */ var getScreen = function () { var screen = { width: 0, he ...

  9. URL地址传参乱码

    1.页面使用javascript的方法encodeURIComponent对需要转码的字符进行两次转码,如:encodeURIComponent(encodeURIComponent("** ...

  10. FIFO页面置换算法

    本文以序列长度20的{ 7,0,1,2,0,3,0,4,2,3,0,3,2,1,2,0,1,7,0,1};以及页面4:为例: #include <stdio.h> #define Init ...