树莓派编程基础与硬件控制

本文介绍了Python编程语言的优势,如易读性、简洁语法和强大的可扩展性,特别强调了其在树莓派上的应用,包括GPIO接口操作、LED控制和用OpenCV进行机器视觉,如颜色空间转换、图像二值化和轮廓检测。

1.编程语言

Python 是一种泛用型的编程语言,可以用于大量场景的程序开发中。根据基于谷歌搜
索指数的 PYPL(程序语言流行指数)统计,Python 是 2019 年 2 月全球范围内最为流行
的编程语言
           相比传统的 C、Java 等编程语言,Python 具备一些优势。
(1)较强的易读性。Python 是一种高级编程语言,其在设计上更为接近人类使用的
自然语言(英语)。具备英语基础和少许编程基础的人可以很轻松地阅读 Python 代码。
(2)简洁的语法(规则)。Python 语言的设计哲学是“优雅”“明确”和“简单”,
力图用最简洁的方式完成程序内容。相比于传统编程语言,Python 通常可以用更短的语句
执行同样的功能。
(3)强大的可扩展性。由于 Python 是一个完全开放的编程语言环境,其拥有大量强
大的扩展包,例如数学计算包 NumPy、游戏开发包 pygame、机器学习包 TensorFlow 等。
正是因为这一特点,Python 目前是人工智能编程的首选语言。
(4)便利的可移植性。Python 几乎可以运行于任何操作系统,将 Python 代码移植
到 Windows、macOS、Linux 等不同环境中非常便利。
交互式编程是一种非常便利的 Python 编程方式,常用于程序测试的场景。首先通过任
务栏打开树莓派的“终端”,在其中输入“python3”并回车即可进入 Python 3 的交互式
编程环境
用 Geany 编辑器编写 Python 程序
虽然交互式编程环境可以很方便地输出语句的结果,但它并不能将大段的程序内容存
储起来反复运行,因此只适用于程序测试的场景。绝大多数情形下,我们需要将完整的
Python 程序存储为 .py 格式的文件,再调用它进行运行。
可以使用任意的文本编辑器编写 Python 程序。我们在后续的课程中统一使用树莓派系
统预装的轻量级文本编辑器 Geany 来编写 Python 程序。Geany 可在树莓派任务栏的开
始菜单中选择“编程”找到。
            使用 Geany 编辑器的图标可以方便地进行文件的新建、打开、保存以及 Python 程序
的运行操作
              打开 Geany 后,我们先新建一个空白文档,再单击文档→设置文件类型→脚本语
言→ Python 源文件,将其设为 Python 程序文件

2.树莓派的 GPIO 接口

 

树莓派 3B+ 主控板可以通过上面的 40 个引脚连接电子设备输入或输出电信号。

  3. 点亮一盏小灯 

导入 Python 扩展包

要使用 Python 程序对 GPIO 连接的输入 / 输出设备进行控制,需要用到一个名为
RPi.GPIO 的扩展包。在 Python 程序中,许多功能被写在了一些额外的官方或第三方扩展
包中,可以通过如下两种方式导入扩展包。
第一种方式为直接导入,后面的“as 自定义名称”可以不写。不写时,使用“扩展包
名 . 包内的函数或变量名”的形式可以调用包内预先设定好的函数或变量。若设定了自定义
名称,则使用“自定义名称 . 包内的函数或变量名”的形式调用。
第二种导入方式则可以选择性导入包中设定的函数或变量,导入多个函数或变量时需使
用逗号隔开。若使用“import *”则可导入包中的所有函数及变量。用这种方式导入扩展包时,
我们可以直接用导入的函数或变量名来调用它们而不用再写包名。
中除了 1~40 的编号外,每个 GPIO 引脚后面还有另一个编号。在 Python
程序中使用 GPIO 时,需要指定程序应该使用哪一种编号方式。其设定方法是:
树莓派的所有 GPIO 口既可以连接输入设备,也可以连接输出设备,因此需要事先设
定其为输入模式还是输出模式:
模式有两种:gpio.IN 代表这是一个输入设备,gpio.OUT 代表这是一个输出设备。
例如,对 LED
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值