首頁 > 評測 > 裝在口袋里的Beagle,上手很Easy

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

  • 作者:通宵敲代碼
  • 來源:21ic
  • [導(dǎo)讀]
  • 本文來簡單和大家介紹一下如何用python開發(fā)PocketBeagle。

一、概述

在開源硬件領(lǐng)域,繼Beaglebone大火之后,17年9月22日,BeagleBoard.org推出最新產(chǎn)品PocketBeagle。

這是一款外形小巧、但功能全面,且裝有USB密鑰卡的開源開發(fā)板,尺寸僅為35 x 56 x 5毫米,小巧靈活,適用于游戲、3D打印,機(jī)器人和其他電子項(xiàng)目;PocketBeagle包含一個(gè)1-GHz處理器、面向行業(yè)的外圍設(shè)備,以及優(yōu)化的微控制器,能夠更好地與外界進(jìn)行連接。PocketBeagle成本低、設(shè)計(jì)精良且用法簡單,是初學(xué)者和專業(yè)人士的理想之選。

image1.jpg

二、Pocketbeagle資源簡介

作為與BeagleBone同系列的開發(fā)板,PocketBeagle與其采用了相同的設(shè)計(jì)架構(gòu)。采用TI新的Octavo Systems OSD3358-SM 系統(tǒng)級封裝處理器,尺寸只有21x 21毫米。

OSD3358-SM內(nèi)部集成有:

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

SGX530圖像處理器,支持3D加速、

512MB 800MHz DDR3 RAM內(nèi)存、

2個(gè)32-bit 200-MHz PRU(可編程實(shí)時(shí)單元)、

4kB I2C EEPROM芯片、

ARM Cortex-M3電源管理芯片;

image2.png

PocketBeagle板載有:

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

支持系統(tǒng)啟動(dòng)的microSD 插槽、

JTAG調(diào)試觸點(diǎn)以及72個(gè)擴(kuò)展接口;

其中72個(gè)擴(kuò)展引腳的功能定義如下圖:

image3.png

PocketBeagle支持運(yùn)行Debian、Ubuntu等常用Linux系統(tǒng),官方推薦使用Debian:

image4.png

三、使用python開發(fā)Pocket

隨著這兩年編程語言的長足進(jìn)步,作為一種面向?qū)ο蟮慕忉屝陀?jì)算機(jī)程序設(shè)計(jì)語言,Python似乎是發(fā)展的無處不在,作為是純粹的自由軟件,Python的源代碼和解釋器CPython均遵循 GPL協(xié)議,同時(shí)Python具有各種豐富而強(qiáng)大的代碼庫,可以應(yīng)用到各個(gè)領(lǐng)域。

此處順便吐槽一下PocketBeagle的設(shè)計(jì)師,畫PCB的時(shí)候能不能走點(diǎn)心,這么低級的錯(cuò)誤不要犯,會(huì)被扣工資的。

image5.jpg

害得我苦逼的刮了半天的排針,好在干涉的空間不大,焊接起來還是不影響使用的,而且挺漂亮。

image6.jpg

在我們應(yīng)用PocketBeagle的過程中,我們驚奇的發(fā)現(xiàn),Debian 9.3系統(tǒng)已經(jīng)集成了Python 2.7,最簡單的驗(yàn)證方式就是在終端界面輸入python命令驗(yàn)證一下,如下圖。

image7.png

同樣驚奇的是,我們在Python的help()中發(fā)現(xiàn),Pyhton在Pocket上已經(jīng)有大量的模塊可以使用了,涵蓋了常用的軟件、硬件的各種資源,具體列表如下。

image8.png

下面我們簡單演示一下Adafruit_BBIO這個(gè)模塊在Pocket上的使用。

Adafruit_BBIO是從最早的BeagleBone就開始支持的,幾乎兼容了全系列的狗骨頭板子,主要用于提供對基本IO外設(shè)的操作,在他的官方主頁,我們可以看到Adafruit_BBIO提供的API。

image9.png

我們點(diǎn)擊GPIO一項(xiàng),進(jìn)入Adafruit_BBIO對GPIO的操作函數(shù)界面,可以看到Adafruit_BBIO不但提供了基本的函數(shù)使用說明,還給出了簡單的應(yīng)用例程供我們學(xué)習(xí)。

image10.png

下面我們就根據(jù)Adafruit_BBIO的基本例程,來操作一下我們的Pocketbeagle,就簡單用板載的LED點(diǎn)個(gè)燈吧。

首先我們通過對GPIO相關(guān)函數(shù)的學(xué)習(xí)發(fā)現(xiàn),我們需要知道要操作的IO口的“名稱”、“控制方向”以及需要的“輸出電平”,其中要控制LED燈,IO自然是輸出方向了,至于另外兩個(gè)參數(shù)就需要我們記性查找了。

首先我們點(diǎn)擊上圖“Beaglebone pin names table”,找到在beagle中關(guān)于引腳的定義,如下圖,我們發(fā)現(xiàn)板載的四顆LED的名字就是“USR0-3”。

image11.png

然后我們打開Pocketbeagle的原理圖,找到四顆LED的部分,電路結(jié)構(gòu)一目了然,想要點(diǎn)亮LED自然是輸出高電平了。

image12.png

然后我們回到Pocket的終端界面,進(jìn)入Pyhton模式,并導(dǎo)入我們需要使用的Adafruit_BBIO模塊,操作如下。

  • 本文系21ic原創(chuàng),未經(jīng)許可禁止轉(zhuǎn)載!

網(wǎng)友評論

  • 聯(lián)系人:巧克力娃娃
  • 郵箱:board@21ic.com
  • 我要投稿
  • 歡迎入駐,開放投稿

熱門標(biāo)簽
項(xiàng)目外包 more+