树莓派3A+(Raspberry Pi 3 Model A+): 崛起or终结?
在单板计算机的世界里,毫无疑问,树莓派必有一席之地。
从性能、大小、性价比及生态发展各方面综合来说,树莓派可以称得上是王者。这样说是有理由的。在林林总总的SBC产品中,有些产品鼓吹性能、有些产品宣扬易用性,但是无论如何,这些产品在接口和尺寸上,包括生态发展方面,都毫不犹豫的选择了与树莓派兼容!
不过这些都有一个隐晦的暗示:树莓派Model B(+)。
其实在树莓派的世界里,除了今天很火爆的B/Zero之外,还有个Model A,树莓派的老用户都知道。
不过自2014年后,Raspberry Pi Model A+ 就没有得到过更新,以至于新入门的用户甚至不知道还有这么一款产品。树莓派基金会也意识到了这一点,在2018年推出了新款产品Raspberry Pi 3 Model A+。该产品尺寸与以前的A系列相同,在CPU上使用了与Raspberry Pi 3 Model B+相同的型号,即Broadcom BCM2837B0, Cortex-A53 (ARMv8) 64-bit SoC @ 1.4GHz,其它一些变化包括减少了内存大小、接口上也相应进行了调整,只提供了一个USB接口,去掉了以太网接口,不过为了弥补通信上的不足,保留了WiFi/BT接口。
如果说,Raspberry Pi 3 Model B+是树莓派中的旗舰,是皇者,那么Raspberry Pi 3 Model A+至少也是个王者。相比于前者来说,Raspberry Pi 3 Model A+在工业应用及IoT等项目中,更有自己的优势。
清爽不失活力的包装,杨家有女初长成,唔唔,这是说Raspberry Pi 3 Model A+胖么!
可以看到,HDMI、DSI、CSI、音频等主要接口一应俱全,GPIO也是40个,USB接口都在。
Raspberry Pi 3 Model A+开发板背面是存储器等接口,包括SD存储及尔必达的512MB的DDR存储器。注意该内存规格为LPDDR2,速率为1066,不算高,不过配合树莓派来说也够用。
就大小来说,Raspberry Pi 3 Model A+的尺寸为65 x 56mm,比B要小,比Zero型号又大。图中右边是RPI3,并非RPI3 B+。相对于B+型号来说,减少了一些接口,所以尽管尺寸缩小了,但是表面元器件一点也不显拥挤,甚至还看上去清爽了许多。
Raspberry Pi 3 Model A+的主要特性如下:
• CPU : 博通BCM28370B0 Cortex-A53 64位
• RAM : 512 MB LPDDR2
• WiFi : 802.11 b / g / n / ac dual band (2.4 and 5 GHz) 及Bluetooth 4.2
• USB : 1 USB 2.0端口
• Extended GPIO,40针
• CSI接口
• DSI接口
• 音频及复合视频输出
• SD接口
• USB供电接口5V/2.5A
A系列的最近更新还是在2014年,此次更新在尺寸上保持与前一代兼容,同时内存大小也仍然只有512MB,不过CPU使用了BCM2837B0,也就是与RPI3 B+使用的相同的CPU,在性能上得到了极大的提升。不过由于内存的限制,在多任务环境中可能会受到影响,官方的说法,Raspberry Pi 3 Model A+就不是给你用来做桌面使用的(尽管你也可以把它打造成一个桌面环境)。另外一个限制就是USB端口变成了一个,不过这也没有很大的影响。最后引用官方的原话
It's designed much more as a control board for computing projects or IoT installations. If nothing else, the lack of ports is going to more frustrating for those trying to use it as a miniature desktop computer than any speed issues.
所以,如果想使用桌面版的PI,还是老老实实使用B型吧!
接下来准备SD卡,打开网络,下载系统镜像,烧写SD卡,上电,此处省略若干文字。
前面已提及,Raspberry Pi 3 Model A+并不适合用来做桌面系统,所以接下来的过程我们也见不到桌面的影子,一色的cmd命令,用官话来说就是headless。
headless操作的第一步是配置网络,Raspberry Pi 3 Model A+没有以太网络接口,只能通过配置WiFi来实现远程管理,在制作好SD卡系统后,打开boot盘,在根目录下建立两个文件,一个空白的ssh文件,用来开启SSH服务;另外还需要一个wpa_supplicant.conf,用来配置网络连接信息,如下
country=CN
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
ssid="MyWiFiNetwork"
psk="aVeryStrongPassword"
key_mgmt=WPA-PSK
}
将SSID及PSK替换为自己的路由器信息,然后就可以给Raspberry Pi 3 Model A+上电。
使用SSH来连接设备,如下
登陆信息提示尚未更改默认的用户名、密码,为了安全考虑,建议更换。
查看CPU信息,其实也可以跑个sysbench的,不过说老实话,跑了分也伤心,只好装作不懂,继续使用,反正跑IoT项目,也不需要啥高端的CPU,实在想搞图像、视频处理,RK3399等可能更适合。
按理来说,接下来是点灯时间,不过老是点灯也没意思!刚好手头有个适合ZERO的小LCD,ADAFRUIT出品,用来写个小程序测试下也挺好。
就是这个小屏,单色显示,使用I2C接口。尽管如此,对于HEADLESS设备来说,也是欢乐的源泉!
在RPI上编程,Python当然是首选语言。为了不污染全局环境,接下来的代码都使用venv来完成。依次执行如下命令完成虚拟环境的准备工作
mkdir rpi3a_plus
python3 -m venv rpi3a_plus/venv
source rpi3a_plus/venv/bin/activate
进入后应看到如下画面
在venv环境下,继续安装两个python库,分别为adafruit-ssd1306及pillow,前者实现LCD的相关功能,后者是一个图形库,用来实现图像处理相关操作。
LCD使用I2C接口来进行通信,先要保证RPI启用了I2C接口,使用rasps-config来进行配置,参考如下
使用命令
git clone https://github.com/adafruit/Adafruit_Python_SSD1306.git
下载代码示例,接下来就可以运行程序了,下图是演示image.py效果。
Python程序往往包含大量的依赖库,如果发现程序不能正常运行,一般是缺少依赖库的原因。根据提示信息安装适当的库即可。另外该LED屏需要I2C接口来通信,如果没有开启树莓派的I2C接口,也会导致程序运行错误。下图是使用I2C命令查看接口的输出
原本以为Raspberry Pi 3 Model A+又要开始一段新的传奇,但是官方的消息说,这将是该系列的最后一个版本。故事刚开了个头,马上就要结尾!引用一段话来结束本文
The folks over at the Foundation say that the A+ is “about closing things out in style” because whatever comes next will be “less of an evolution” and rather be a larger upgrade. Still, older models will continue to be available for those who need them, so if you need a 1 A+ despite this upgrade, you can still get one, at least for now.