树莓派串口(UART)编程Python示例

20170123103950947-0

前言

本文将详细介绍树莓派的串口(UART)配置和使用,并结合一个modbus RTU从机的例子说明树莓派串口的应用。
在开始前说明以下几点
1.树莓派UART端口的位置
TXD位于HEAD-8
RXD位于HEAD-10
GND位于HEAD-6(可选其他GND)
2.树莓派的TXD应接USB转串口设备的RXD,当然如果测试失败请交换RXD和TXD的顺序
3.经过很多次的测试(N>25),当波特率为115200时打开树莓派的UART时,树莓派会莫名其妙的发送一字节0xF8,该问题始终无法解决。不过波特率为9600时并没有此问题,猜测是树莓派硬件或内核驱动问题。
4.树莓派的串口默认为SSH调试使用,若要使用串口需要修改两处文件。
阅读全文

树莓派CM3发布:性能10倍于初代 内存翻倍

20170119191246663-0

树莓派(Raspberry Pi)正式推出全新一代计算模块(Compute Module 3,以下简称CM3),与树莓派3采用的是同款处理器。

树莓派推出的计算模块主要目的是工业用途,第一代计算模块(Compute Module 1,以下简称CM1)于2014年推出,采用的是和第一代树莓派相同的CPU。CM3的全新升级包括:1GB RAM,1.2GHz的博通BCM2837处理器。相比前代,CM3的CPU性能提高了10倍。

阅读全文

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

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

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

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

xsetdpms 0 0 0
xsets off

20161224142639576-0

阅读全文

瑞士军刀扩展板的跑马灯实现(C++版)

树莓派上通过C和Python来控制GPIO已经成为了很流行的方式,本文介绍如何使用C++/Boost/OOP和用户空间驱动树莓派瑞士军刀扩展板的LED,实现跑马灯效果。相关原理和方法通用,当然也可以用于瑞士军刀扩展板之外的情况。

1、运行环境
系统信息:Linux raspberrypi 4.4.21-v7 #1 SMP Sat Sep 24 20:40:17 CST 2016 armv7l GNU/Linux
硬件搭配:Raspberry Pi 3B + 瑞士军刀扩展板,如图所示。
20161220201908269-0

阅读全文

树莓派 HiFiBox DAC 扩展板开始发售

hifibox-dac-hat-for-raspberry-pi

树莓派实验室继瑞士军刀扩展板之后,又一款扩展板产品——HiFiBox DAC 今日开售了。这是一个针对音乐爱好者的产品,集成了 TI 公司专业的音频解码芯片 PCM5122,采用 I2S 接口标准整合了一套基于树莓派的完善的音频硬件解码系统。并支持 Volumio、RuneAudio、OSMC 等功能强大的播放软件,是快速搭建树莓派 HiFi 系统的不二之选!

HiFiBox DAC 适用于树莓派1代A+、B+,树莓派2代、树莓派3代、树莓派Zero,以及后续对该标准兼容的树莓派系列硬件。
阅读全文

RPi.GPIO 模块使用基础

RPi.GPIO 模块程序包提供了一个在 Raspberry Pi 中控制 GPIO 的类。

注意,该模块不适合应用到追求实时性或计数周期的应用中。这是由于您无法预测 Ptyhon 何时繁忙,以及资源回收的时间。而且它是运行在基于 Linux 核心的系统中,也不合适用于实时应用 – 原因在于其它进程可能获得更高的 CPU 优先级。如果您一定要追求实时操作的性能,可以考虑购买一块 Arduino 主板http://www.arduino.cc!

还需要注意一点,目前的版本还不支持 Raspberry Pi 的 SPI、I2C、1-wire、串口等功能。计划在不久的将来会实现的!

本文是 RPi.GPIO 模块文档系列文章的第一篇,除本文外还包括以下几篇:

使用 RPi.GPIO 模块的输入(Input)功能
使用 RPi.GPIO 模块的输出(Output)功能
使用 RPi.GPIO 模块的脉宽调制(PWM)功能

导入模块

导入 RPi.GPIO 模块:

import RPi.GPIO as GPIO

通过该操作,您可以将模块名称映射为 GPIO,以便接下来您其它脚本进行使用。

阅读全文