0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

BeagleBone Black和BeagleBone Green开发板十大要点

工程师兵营 来源:互联网 作者:佚名 2018-07-23 09:00 次阅读

BeagleBone 属于开源单板计算机 (SBC),可与其它上百种与之类似的 SBC 共享各种设计意图。也就是说,BeagleBone 体积小、价格低,但功能却十分强大。BeagleBone 是供学生、业余爱好者以及专业人员使用的绝佳学习平台,可简化开发过程。

但正式启动项目前,还需要了解一些知识,以便更好地使用该平台。

虽然 2008 年首次发布 BeagleBoard 后已经经历了数次 BeagleBone (BB) 迭代,本文将主要介绍 BeagleBone Black 和 BeagleBone Green 板。

本文探讨这些技巧的主要目的并非是为了提供一个完整的课程,而是提供一些经验性信息和建议,以便新用户使用这些设备时避免误入陷阱和障碍。

1:BeagleBone 入门

不需要单独的键盘、鼠标和显示器。实际上,一些型号的 BeagleBone 并没有板载 HDMI 或显示端口。但这并不妨碍板的运行。只要通过 USB 电缆将 BeagleBone 插入到 PC,然后安装最新的 BeagleBone 驱动程序即可。接下来,在浏览器窗口通过 SSH(安全 shell)会话接入 BeagleBone(切勿使用 IE 浏览器)。

同时,确保购买一张用于 BeagleBone 的 MicroSD 卡,例如,ATP Electronics 的 AF8GUD3-OEM 10 类 8 GB 卡。更新操作系统需要额外的内存。

2:获得外壳

除非 BeagleBone 可直接放进项目机箱,否则请使用外壳。如果没有外壳,也可以将板固定在塑料板上。高密度聚乙烯砧板材料就是绝佳之选。外壳或塑料基板可以保护 BB 板免受撞击或意外冲击。

购买外壳时,请选择露出 GPIO 端口和 RESET 按钮的类型,如 Hammond Manufacturing 的 1593HAMBONETBU(图 1)。露出端口和按钮可以避免用户误以为要拆开盒子才能进行复位或将配件连接到 GPIO 针座上。

图 1:外壳将有助于保护电路板免受冲击,但要选择露出 GPIO 端口和 RESET 的类型,例如 Hammond Manufacturing 的 1593HAMBONETBU。(图片来源:Hammond Manufacturing)

3:警告:BeagleBone 板对于电源要求十分苛刻

初次使用 BB 板的用户常常会碰到这样一个的问题,就是插入电源后,板并未启动。通常,这是因为电源的电压上升时间缓慢,或电源因突然经历负载无法保持电压而瞬间下降。

虽然在 BeagleBone Black (BBB) 迭代中,已经对元器件选择进行了一些微小改动以消除这些问题;但选择好的电源仍然十分重要。切勿在电源上省钱。在电源上省几块钱,但可能导致设备有时无法工作,而且还要冒着损坏 BeagleBone 板的风险,这并不划算。使用类似 Volgen America/Kaga Electronics USA 的 KTPS12-05025WA-VI-P1 5 VDC、2.5 A、套管插头电源。BeagleBone 上的电源插孔可接受内外直径分别为 2.1 mm 和 5.5 mm 的套管类型电源连接器

性能欠佳的电源也会对 Wi-Fi Dongle(如有使用)产生不利影响。Dongle 供电不足常表现为断断续续和连接失败。使用 Dongle 时,应确保电源(如 KTPS12-05025WA-VI-P1)至少可输出 2 A 电流

如果启动失败,请尝试长按板卡上的复位按钮,直至电源保持稳定。然后松开按钮。同时,通过板上的电源按钮关闭 BB 板,而不是只拔出电源连接器。

遇到相关问题时,请勿通过 GPIO 针座为 BB 上电;通过 GPIO 上电会损坏 ARM CPU

4:BeagleBone Black 的秘密武器:PRU

BeagleBone 的最大秘密武器是 PRU。PRU 意指“可编程实时单元”。PRU 为小型、小助手微控制器,能够分担主 CPU 的任务。

没有 PRU,可能需要其他硬件来对 I/O 进行快速或实时控制。假设引脚切换的速度可以和代码执行速度一样快。同时,它们也有其自身的一组外设,如 UART 和 PWM。PRU 的所有资源都可供主处理器使用。学习如何使用 PRU。它们将避免拼凑各种零件,从而增大了 BB 体积。

5:学习 Python

可以说,启动在 BeagleBone 上控制 GPIO 的最快方式就是编写一些 Python 代码。Debian 是当前最受青睐的 Linux 版本,BeagleBone 将其用作默认操作系统。Debian 内部的开发环境称为“Cloud 9”。通过 SSH 进入 BeagleBone 后,在屏幕左侧菜单中可以看到 Cloud 9。

访问 Python.org 可下载可该板上运行的各版 Python 的说明文档。如需查看版本,请在命令行中输入“python”。该命令将调用 Python shell 并在顶部列出版本号。

如需创建 Python 图形化用户界面 (GUI),其中一种方法就是使用 Tkinter 库。Jan Bodner 编写的一本电子书针对该主题作过详细的探讨。

最后,新手容易忽略的是,Python 2.x.x 和 3.x.x 之间的不兼容问题。代码需要符合 BeagleBone 上 Python 版本的正确语法才能运行。也就是说,如果存在不兼容代码样本,可以通过编辑使其在板的 Python 版本上运行。

6:打印 BeagleBone 引脚布局图片

BeagleBone 在板上几乎没有丝印任何引脚标识。虽然不方便,但确实可以让板更为小巧整洁。保存了这份引脚布局图便于参考(图 2)。

图 2:打印 BeagleBone GPIO 针座标识图。(图片来源:Embedded Basics)

7:BeagleBone Black 在选择 Wi-Fi Dongle 上极为挑剔

开始时,确保使用的 Dongle 已知可用于 BeagleBone,如 Adafruit 的 814 Wi-Fi USB Dongle(图 3)。

图 3:BeagleBone Black 对 Wi-Fi Dongle 极为挑剔,因此解决这一问题的方法就是使用已知的优良零件,如 Adafruit 814 Wi-Fi Dongle。(图片来源:Adafruit)

另一种获得 Wi-Fi 连接的方法是购买 BeagleBone Black Wireless(图 4)或 BeagleBone Green Wireless(图 5)。这些板迭代包含内置 Wi-Fi,因而无需使用 Dongle。

图 4:获得 Wi-Fi 连接的另一种方法是选择 BeagleBone Black Wireless。(图片来源:GHI Electronics)

注意,为了给 Wi-Fi 功能留出空间,将会牺牲这些板上的一些非无线版特性。例如,BeagleBone Green Wireless 获得了 Wi-Fi 和蓝牙功能,但损失了板载以太网

图 5:牺牲了板载以太网来为 Wi-Fi 留出空间的 BeagleBone Green Wireless。(图片来源:Seeed Technology)

8:获得 Linux (Debian) 命令列表

为了成功浏览 Linux (Debian),请使用命令行。用 BeagleBone 启动 SSH 会话并在 Cloud 9 中打开一个新选项卡。在此选项卡,输入“help”并单击“Enter”即可获得命令列表。如需了解这些命名含义,只需输入“man” 后跟命令名称即可。随即屏幕上将出现更为详细的介绍。注意在 Linux 中,“文件夹”被称为“目录”。

9:Linux 不是实时操作系统

大部分 BeagleBone 用户会运行 Debian。Debian、其他 Linux 版本以及大多数其他操作系统运行时将处理时间进行了拆分,并解析到任何正在运行的进程。CPU 时间必须解析到内核、GUI、相关进程及任何正在运行的代码。OS 将消耗这些时钟周期的绝大部分。剩下的部分会为代码保留。如此一来,CPU 就不可能超出一定精度执行操作。例如,运行 Linux 的 BeagleBone 无法提供与常见 WS2812 LED 灯条通信所需的精确定时。实时任务应通过 PRU 处理。

10:一旦启动并运行,使用 Cape 和配件板来实现更快、更顺畅地操作

Cape 属于配件板,可提升 BeagleBone 的性能并迅速避免许多额外硬件要求。许多常见的任务需要用到多种不同的 Cape 和配件板。

例如,BeagleBone 本身没有板载 CAN 总线解释。需要使用 Cape 处理错综复杂的 CAN 总线通信,而不是编写代码对 CAN 总线进行位冲。

Cape 有很多种,如显示 Cape、传感器 Cape、电机驱动 Cape 以及原型 Cape,主要都是空白穿孔板,可插到 BB GPIO 针座上。Texas Instruments 甚至可提供一种分接 PRU 外设的 PRU Cape。

图 6:“分接”PRU 外设的 PRU Cape。(图片来源:Texas Instruments)

总结

BeagleBone SBC 是功能强大、应用广泛的计算平台,可快速启动电子项目而且还小有趣味。事先做一些考虑和研究,并结合一些经验人员的建议,启动过程将会更加顺利。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    5068

    文章

    19008

    浏览量

    302962
  • Linux
    +关注

    关注

    87

    文章

    11219

    浏览量

    208872
  • python
    +关注

    关注

    55

    文章

    4778

    浏览量

    84439
  • BeagleBone
    +关注

    关注

    4

    文章

    26

    浏览量

    65737
收藏 人收藏

    评论

    相关推荐

    【迅为】瑞芯微RK3588开发板RK3568开发板区别及优势

    RK3568开发板
    的头像 发表于 11-18 14:19 141次阅读
    【迅为】瑞芯微RK3588<b class='flag-5'>开发板</b>RK3568<b class='flag-5'>开发板</b>区别及优势

    基于哪吒开发板部署YOLOv8模型

    2024英特尔 “走近开发者”互动活动-哪吒开发套件免费试 用 AI 创新计划:哪吒开发板是专为支持入门级边缘 AI 应用程序和设备而设计,能够满足人工智能学习、开发、实训等应用场景。
    的头像 发表于 11-15 14:13 138次阅读
    基于哪吒<b class='flag-5'>开发板</b>部署YOLOv8模型

    正点原子fpga开发板不同型号

    正点原子作为国内领先的FPGA开发板供应商,其产品线覆盖了从入门级到高端应用的各个领域。这些开发板不仅适用于学术研究,还广泛应用于工业控制、通信、图像处理等多个领域。 1. 入门级开发板 1.1
    的头像 发表于 11-13 09:30 273次阅读

    51开发板芯片资料

    51开发板芯片资料
    发表于 09-18 09:29 1次下载

    linux开发板与树莓派的区别

    定义和用途 Linux开发板:Linux开发板是一种基于Linux操作系统的嵌入式开发板,通常用于工业自动化、物联网、智能家居等领域。 树莓派:树莓派(Raspberry Pi)是一种基于Linux
    的头像 发表于 08-30 15:34 725次阅读

    linux开发板如何编译curl

    在Linux开发板上编译 curl 库通常涉及到几个步骤,包括准备开发环境、下载源代码、配置编译选项以及执行编译和安装过程。以下是一个基本的指南,帮助你在Linux开发板上编译 curl 。 1.
    的头像 发表于 08-30 15:33 471次阅读

    linux开发板和单片机开发的区别

    硬件架构 Linux开发板和单片机开发在硬件架构上有很大的区别。Linux开发板通常基于ARM、x86或其他处理器架构,具有较高的处理能力和内存容量。而单片机开发则基于微控制器,如80
    的头像 发表于 08-30 15:30 617次阅读

    第2章_开发板使用

    本课程使用 ST-Link 给开发板供电、烧录、调试。
    的头像 发表于 06-29 14:25 1565次阅读
    第2章_<b class='flag-5'>开发板</b>使用

    Beaglebone Black Wireless问题

    各位大神,我自己做了一个Beaglebone Black Wireless开发板,按照参考资料做的,但LED灯不亮,按键按下去那四个LED灯也没有反应。请问这个要从哪个方面着手排查问题?多谢多谢。
    发表于 06-24 17:10

    鸿蒙OpenHarmony开发板解析:【芯片解决方案】

    芯片解决方案是指基于某款开发板的完整解决方案,包含驱动、设备侧接口适配、开发板sdk等。
    的头像 发表于 05-10 15:42 1150次阅读
    鸿蒙OpenHarmony<b class='flag-5'>开发板</b>解析:【芯片解决方案】

    fpga开发板是什么?fpga开发板有哪些?

    FPGA开发板是一种基于FPGA(现场可编程门阵列)技术的开发平台,它允许工程师通过编程来定义和配置FPGA芯片上的逻辑电路,以实现各种数字电路和逻辑功能。FPGA开发板通常包括FPGA芯片、时钟模块、电源模块、输入输出接口等组
    的头像 发表于 03-14 18:20 1812次阅读

    fpga开发板使用教程

    FPGA开发板的使用教程主要包括以下几个关键步骤。
    的头像 发表于 03-14 15:50 958次阅读

    fpga开发板与linux开发板区别

    FPGA开发板与Linux开发板是两种不同的硬件开发平台,各自具有不同的特点和应用场景。在以下的文章中,我将详细介绍FPGA开发板和Linux开发板
    的头像 发表于 02-01 17:09 2073次阅读

    51单片机开发板的主要功能 51单片机开发板能做什么

    51单片机开发板是一种基于8051系列单片机芯片的开发板,具有丰富的功能和广泛的应用。下面将详细介绍51单片机开发板的主要功能以及能够实现的各种应用。 一、基本功能: 通用输入输出:51单片机
    的头像 发表于 01-23 15:52 3401次阅读

    DIY个人的Linux开发板教程

    作者简介:大佬已在硬创社开源了近50款开发板,动手能力极强,于去年年底开始接触学习Linux,并由全志V3s、F1C200S等芯片开始上手DIY个人的Linux开发板
    的头像 发表于 01-07 09:52 1950次阅读
    DIY个人的Linux<b class='flag-5'>开发板</b>教程