首页 > 评测 > 装在口袋里的Beagle,上手很Easy

装在口袋里的Beagle,上手很Easy

  • 作者:通宵敲代码
  • 来源:21ic
  • [导读]
  • 本文来简单和大家介绍一下如何用python开发PocketBeagle。

一、概述

在开源硬件领域,继Beaglebone大火之后,17年9月22日,BeagleBoard.org推出最新产品PocketBeagle

这是一款外形小巧、但功能全面,且装有USB密钥卡的开源开发板,尺寸仅为35 x 56 x 5毫米,小巧灵活,适用于游戏、3D打印,机器人和其他电子项目;PocketBeagle包含一个1-GHz处理器、面向行业的外围设备,以及优化的微控制器,能够更好地与外界进行连接。PocketBeagle成本低、设计精良且用法简单,是初学者和专业人士的理想之选。

image1.jpg

二、Pocketbeagle资源简介

作为与BeagleBone同系列的开发板,PocketBeagle与其采用了相同的设计架构。采用TI新的Octavo Systems OSD3358-SM 系统级封装处理器,尺寸只有21x 21毫米。

OSD3358-SM内部集成有:

1GHz ARM Cortex-A8 中央处理器、

SGX530图像处理器,支持3D加速、

512MB 800MHz DDR3 RAM内存、

2个32-bit 200-MHz PRU(可编程实时单元)、

4kB I2C EEPROM芯片、

ARM Cortex-M3电源管理芯片;

image2.png

PocketBeagle板载有:

高速USB 2.0 OTG (host/client)接口、

支持系统启动的microSD 插槽、

JTAG调试触点以及72个扩展接口;

其中72个扩展引脚的功能定义如下图:

image3.png

PocketBeagle支持运行Debian、Ubuntu等常用Linux系统,官方推荐使用Debian:

image4.png

三、使用python开发Pocket

随着这两年编程语言的长足进步,作为一种面向对象的解释型计算机程序设计语言,Python似乎是发展的无处不在,作为是纯粹的自由软件,Python的源代码和解释器CPython均遵循 GPL协议,同时Python具有各种丰富而强大的代码库,可以应用到各个领域。

此处顺便吐槽一下PocketBeagle的设计师,画PCB的时候能不能走点心,这么低级的错误不要犯,会被扣工资的。

image5.jpg

害得我苦逼的刮了半天的排针,好在干涉的空间不大,焊接起来还是不影响使用的,而且挺漂亮。

image6.jpg

在我们应用PocketBeagle的过程中,我们惊奇的发现,Debian 9.3系统已经集成了Python 2.7,最简单的验证方式就是在终端界面输入python命令验证一下,如下图。

image7.png

同样惊奇的是,我们在Python的help()中发现,Pyhton在Pocket上已经有大量的模块可以使用了,涵盖了常用的软件、硬件的各种资源,具体列表如下。

image8.png

下面我们简单演示一下Adafruit_BBIO这个模块在Pocket上的使用。

Adafruit_BBIO是从最早的BeagleBone就开始支持的,几乎兼容了全系列的狗骨头板子,主要用于提供对基本IO外设的操作,在他的官方主页,我们可以看到Adafruit_BBIO提供的API。

image9.png

我们点击GPIO一项,进入Adafruit_BBIO对GPIO的操作函数界面,可以看到Adafruit_BBIO不但提供了基本的函数使用说明,还给出了简单的应用例程供我们学习。

image10.png

下面我们就根据Adafruit_BBIO的基本例程,来操作一下我们的Pocketbeagle,就简单用板载的LED点个灯吧。

首先我们通过对GPIO相关函数的学习发现,我们需要知道要操作的IO口的“名称”、“控制方向”以及需要的“输出电平”,其中要控制LED灯,IO自然是输出方向了,至于另外两个参数就需要我们记性查找了。

首先我们点击上图“Beaglebone pin names table”,找到在beagle中关于引脚的定义,如下图,我们发现板载的四颗LED的名字就是“USR0-3”。

image11.png

然后我们打开Pocketbeagle的原理图,找到四颗LED的部分,电路结构一目了然,想要点亮LED自然是输出高电平了。

image12.png

然后我们回到Pocket的终端界面,进入Pyhton模式,并导入我们需要使用的Adafruit_BBIO模块,操作如下。

  • 本文系21ic原创,未经许可禁止转载!

网友评论