找回密码
 立即注册
Qt开源社区 门户 查看内容

科协五分钟——树莓派入门教程

2019-9-26 06:51| 发布者: admin| 查看: 2008| 评论: 0

摘要: 欢迎关注精仪系科协栏目:”科协五分钟“。本栏目每周一期,会向大家介绍科协科创成果,推送最新动态,提供技术交流的平台,也会有面向低年级同学的科普讲解。本期将会为大家介绍树莓派(Raspberry Pi)——一款基于 ...

欢迎关注精仪系科协栏目:”科协五分钟“。本栏目每周一期,会向大家介绍科协科创成果,推送最新动态,提供技术交流的平台,也会有面向低年级同学的科普讲解。

本期将会为大家介绍树莓派(Raspberry Pi)——一款基于ARM的微型电脑主板的相关配置和简单使用。

01

什么是树莓派

        树莓派(Raspberry Pi)是尺寸仅有信用卡大小的一个小型电脑,能够运行部分linux发行版和Windows IOT系统。您可以将树莓派连接电视、显示器、键盘鼠标等设备使用。

        树莓派能替代日常桌面计算机的多种用途,包括文字处理、电子表格、媒体中心甚至是游戏。并且树莓派还可以播放高至1080p的高清视频。可谓是“麻雀虽小,五脏俱全”。







        树莓派的能连接的地方大致有这么几处:USB,网卡,HDMI,电源,GPIO,Micro SD卡插槽,CSI摄像头,DSI显示器等。在本次实验中我们会使用GPIO来点亮LED灯,因此会用到GPIO接口。



02

材料准备

       因为树莓派只是一块主板,所以在开始玩树莓派之前,我们需要准备一些硬件材料和外设,包括:

  • Micro SD卡×1

  • 读卡器×1

  • Micro USB线×1

  • HDMI线×1

  • 显示器×1

  • 鼠标×1

  • 键盘×1

  • 面包板×1

  • 杜邦线×2

  • 直插LED×1

  • 小电阻×1

       其中的显示器鼠标键盘等外设,在配置完远程访问后即可丢掉不用。

 另外,还需要一些软件上的准备,包括系统镜像、烧录软件、ssh连接软件等,这些软件可以点击“阅读原文”获取(连校园网不记流量哦)。



(请不要在意混乱的摆放

03

烧录系统

        众所周知,我们的每一台电脑都有自己的操作系统,树莓派也不例外,但树莓派本身不自带存储功能,它需要借助一张Micro SD卡来存储数据,所以需要提前将操作系统烧录到Micro SD卡中,树莓派才能正常工作。

        在这个环节,你需要用到如下硬件和软件(软件请点击“阅读原文”获取):

  • Micro SD卡×1

  • 读卡器×1

  • 电脑×1

  • Win32DiskImager

  • Raspbian镜像


烧录步骤如下

  1. 将Micro SD卡插入读卡器,并将读卡器连接电脑。

  2. 解压Raspbian镜像

  3. 打开刚解压出来的Win32DiskImager文件夹,双击Win32DiskImager程序后按图片提示操作



       4.写入完成后,移除Micro SD卡

至此,系统烧录完成。

04

基本配置与操作

        在烧录完系统后,就可以将micro SD卡插入树莓派开机了,在这个环节,你需要准备(软件请点击“阅读原文”获取):

  • 树莓派×1

  • Micro USB线×1

  • HDMI线×1

  • 显示器×1

  • 鼠标×1

  • 键盘×1

  • SSH连接软件(推荐Mobaxterm)

  • VNC连接软件(推荐VNC Viewer)


        将树莓派连接显示器并插上键盘鼠标等外设,通电后开机。你将看到如下画面:



接下来进行一些简单的配置

1.开启SSH,VNC,GPIO

ssh是常用于linux远程控制的通讯协议,VNC指虚拟网络控制台,常用用于可视化控制,GPIO则是用于控制树莓派引脚输入输出的功能,这些为我们使用树莓派提供了极大的便利

        图形化方式

        在菜单中选中Raspberry Pi Configuration



        选择Interfaces选项卡,将SSH、VNC、REMOTE GPIO等选项从Disabled改为Enacted,点击OK后重启



        命令行方式

        打开命令行,输入命令

        sudo raspi-config

        进入Interfacing Options选项卡,将SSH、 VNC等选项变为Enabled





    2.更改键盘布局

        树莓派(raspberry pi)是英国产品,默认键盘布局是英国(GB),我们用的键盘布局一般是美国(US)的。因此需要更改键盘布局使得我们能正确地打出符号。

    图形化方式

        在菜单中选中Mouse and Keyborad Settings



        在Keyboard选项卡中点击Keyborad Layout



        将选项改成和下图一样,均改成English(US)



     3.连接wifi

        点击右上角的wifi图标,选择需要连接的wifi名称,输入密码即可连接



接下来是一些树莓派的基本操作

   1.命令行的基本操作

        在树莓派中,很大一部分操作是通过命令行来执行的,因此需要学会一些命令行的基本操作。

        命令的基本格式:命令 - 参数 / 目标

        例:查看/home目录所有文件的命令为 ls -a /home

        其中ls的是一个基本命令,意思是list,可以将当前目录下的文件列出来。之后的-a是一个参数,意思是all,表示不会忽略隐藏文件。命令的参数一般在前面加上-或--以示区别。/home表示目标,因此本条命令的意思就是将/home文件夹下所有的文件列出来。linux命令大多都是这种形式。在打完命令后按下回车即可执行命令。

        注意:

  • 参数是用来限定命令的执行方式,可以加也可以不加

  • 命令和参数和目标之间要用空格分开

  • 在执行命令时通常遵循这些规则 特殊情况除外

以下是一些常见的命令:

pwd:查看用户的当前目录

cd :来切换目录

ls:显示文件或目录信息

mkdir:当前目录下创建一个空目录

touch:生成一个空文件或更改文件的时间

cp:复制文件或目录

mv:移动文件或目录、文件或目录改名

rm:删除文件或目录

cat:查看文本文件内容

passwd:修改密码

tips:输入命令的时候要常用tab键来补全

        如果遇到一个陌生的命令,一般你可以通过在命令后加上--help参数或者键入man 命令来阅读使用说明

  2.获取ip地址

        在图形界面中按下Ctrl+Alt+T或者点击左上角的终端图标打开终端,输入ifconfig命令即可获取当前树莓派的ip地址。例如目前我连接wifi获得的ip地址为192.168.0.159



3.使用SSH客户端连接

       在大部分情况下,我们都是通过ssh来连接树莓派的,接下来以mobaxterm为例演示ssh连接的过程。树莓派默认的用户名为pi,密码为raspberry

        ①解压mobaxterm的压缩包,打开mobaxterm,点击左上角的Session,在窗口中输入树莓派的ip地址及用户名



        ②输入密码,进入命令行界面,左侧是自动开启的sftp服务,可以直接将文件上传到树莓派



    4.使用VNC客户端连接

        如果需要运行一些在图形界面下才能运行的程序,则可以使用VNC来进行连接。接下来以VNC Viewer为例演示连接过程。

        ①打开vnc viewer程序,在上方输入框中输入树莓派的ip地址



        ②输入用户名和密码



        ③完成连接



    5.配置软件源,安装软件

        raspbian默认的软件源速度较慢,最好换为国内软件源以加快速度。更换为tuna源操作方法如下

# 编辑 /etc/apt/sources.list文件,删除原文件所有内容,用以下内容取代:
deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib
deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib

# 编辑/etc/apt/sources.list.d/raspi.list文件,删除原文件所有内容,用以下内容取代:
deb http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ buster main ui

        编辑镜像站后,请使用sudo apt-get update命令,更新软件源列表,同时检查编辑是否正确。

        如需安装新的软件,可使用sudo apt-get 软件名 命令来进行安装。


05

使用GPIO点亮LED灯

        最后是一个关于树莓派IO的简单例程——使用GPIO点亮LED灯。

        通过树莓派的IO口可以外接很多外设,如舵机、红外发送接收模块、继电器、步进电机、各类兼容传感器、屏幕等。通过这些外设可以制作很多有趣的设计。

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

        在这个环节,你需要准备(软件请点击“阅读原文”获取)

  • 树莓派×1

  • Micro USB线×1

  • SSH连接软件(推荐Mobaxterm)

  • 面包板×1

  • 杜邦线×2

  • 直插LED×1

  • 小电阻×1

 1. GPIO介绍

        GPIO(General Purpose I/O Ports)意思为通用输入/输出端口,通俗地说,就是一些引脚,可以通过它们输出高低电平或者通过它们读入引脚的状态-是高电平或是低电平。GPIO是个比较重要的概念,用户可以通过GPIO口和硬件进行数据交互(如UART),控制硬件工作(如LED、蜂鸣器等),读取硬件的工作状态信号(如中断信号)等。GPIO口的使用非常广泛,掌握了GPIO,差不多相当于掌握了操作硬件的能力。

        在树莓派中,有40个GPIO可以进行操作,引脚图如下:



树莓派引脚有三种编码方式

     第一种是Board编码,这种就是按照树莓派主板上引脚排针编号。分别对应1~40号排针。

     第二种是BCM编码,这种方式是参考 Broadcom SOC 的通道编号,侧重CPU寄存器,是用BCM库或者python编程常采用这种编码

     第三种是WPI编码,就是WiringPi编码,把扩展GPIO端口从0开始编码,在使用wiringPi库编程会使用这种编码。

2.连接电路

本次实验使用GPIO.0,即为树莓派BCM编码的17接口,也是Board编码的11接口。

        电路原理图如下



        实际连接效果图如下



   3.使用ssh连接树莓派(略)

    4.编辑代码及运行(c语言版)

        输入命令

nano test.c

        将以下程序粘贴到文件中

#include <wiringPi.h>

int main(void) {

    wiringPiSetup();

    pinMode(4, OUTPUT);

    for (;;){

        digitalWrite(0, HIGH);

        delay(500);

        digitalWrite(0, LOW);

        delay(500);

    }

    return 0;

}

        接下来按下Ctrl+x保存退出,之后对c程序进行编译

 gcc test.c -o test -lwiringPi

  • gcc是对c语言编译的声明,

  • -o test是输出工程文件到blink文件(接下来的执行文件)

  • test.c是刚刚编写的c语言程序

  • -lwiringPi是库的调用

        运行

 sudo ./test

        可以看到面包板上的led在闪烁



    5.编辑代码及运行(python版)

        输入命令

nano test.py

        将以下程序粘贴到文件中

# -*- coding: utf-8 -*-

import RPi.GPIO as GPIO

import time

pin = 11                        ## 使用11号引脚

GPIO.setmode(GPIO.BOARD)        ## 使用BOARD引脚编号,此外还有 GPIO.BCM

GPIO.setup(pin, GPIO.OUT)       ## 设置11号引脚输出

while 1:                  ## 重复

    GPIO.output(pin, GPIO.HIGH) ## 打开 GPIO 引脚(HIGH)

    time.sleep(1)               ## 等1秒

    GPIO.output(pin, GPIO.LOW)  ## 关闭 GPIO 引脚(LOW)

    time.sleep(1)               ## 等1秒

GPIO.cleanup()                   ## 清除

        接下来按下Ctrl+x保存退出,运行python程序

python test.py

        最后会得到类似的结果

树莓派上可以安装MC,可以作为自己的服务器(拿来挂北邮人下载,挂个人网页,挂个人云盘),可以当成监控摄像头,可以作为大型智能机器人的嵌入式中央控制器(linux还尤其适合架设AI),更多的可能性都等着你来探索~

好了,本期科协(十)五分钟到这里就结束了,希望有兴趣有能力做科创的同学能在这条路上走得远一些。

编辑 胡克勤

审核 林逸晗



----------------------------------------------------------------------------------------------------------------------
我们尊重原创,也注重分享,文章来源于微信公众号:精小仪,建议关注公众号查看原文。如若侵权请联系qter@qter.org。
----------------------------------------------------------------------------------------------------------------------

鲜花

握手

雷人

路过

鸡蛋

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了