基于LS_BBB开发板学习ARM-LINUX嵌入式系统之一——平台概述

2023-10-19 15:40

本文主要是介绍基于LS_BBB开发板学习ARM-LINUX嵌入式系统之一——平台概述,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

曾几何时,一套友善之臂的Mini2440开发板带着一代人走进ARM-LINUX嵌入式系统开发的殿堂,十几年过去了,当嵌入式软件系统已经升到Android十代,嵌入式CPU已经升级到64位8核,但Mini2440开发板仍然热销不已。为什么?因为作为一款开发板,主要评价标准是是否能有效地提高学习效率,更具体地说,相关资料有多少,用户有多少,技术支持是否给力。这里,我给大家推荐一款比Mini2440更适合学习的开发板,那就是TI的Beaglebone Black。

TI在十多年前推出的Beaglebone Black,重新定义了开发板的概念。袖珍的尺寸,强大的扩展能力,低廉的价格,丰富的资料,一下子风靡全球,引出众多的模仿者,一时间,各种Pie粉墨登场,其中最有名的竞争者就是树莓派。以下是当年的二者参数对比。

 

BBB

树莓派

 

 

 

芯片资料与技术资源

BBB 用德州仪器(TI)的 AM3358 在它自己官网就有了。几千页的技术手册详细描述到每一个寄存器。海量的参考板电路设计,全部开源。官方SDKCCS开发工具。

树莓派用Broadcom 资料挺难找的,仅仅有一个两百多页的引脚与接口说明。无SDK,无IDE开发工具。

 

CPU

ARMv7-A 架构系列,32bitCortex A8

ARMv7-A 架构系列,32bitCortex A7

GPU

BBB GPU 比较老,PowerVR SGX530PowerVR 不产 GPU 只卖设计,这里说 BBB 的那生产的也是 TISGX 5 系的参数请点击这里

Broadcom 定制的 GPUVideoCore IV 双核处理器,型号 BCM2763,树莓派一二代都是这一块,Broadcom 官网介绍请点击这里。能对多媒体进行编码解码。1080p 哦。

PRU

两个,UART port 12MbpseCAP, MII Ethernet, MDIO

GPIO

IO 引脚看照片都知道,BBB 是比较多,2 X 46 个母。但有些 BBB 已经用掉了一些的,自己看着办,要用就要禁用原有功能,比如 HDMI 输出或者 eMMC 等等。P8 说明请点击这里打开 PDFP9 说明请点击这里打开 PDF,高清图,打不开或许要FQ

40个插针。都是 multiplex。普通情况特别是用来学习的话,应该不会不够用吧。

USB

两个,一个 host 一个 OTG

4个大的。

CSI

无。

树莓派居然还有个CSICamera Serial Interface),官方摄像头直接插进去,装一下驱动调一下 raspi-config 即可。BBB 需要自己折腾引脚接线。我看着羡慕嫉妒恨。

HDMI 插头

一个。

一个。

DSI 插头

无。

一个。

JTAG

扩展板

叫做 cape

叫做 HAT,类型较多,还有拿来兼容 arduino shield的,相对 BBB cape 比较便宜一点点。

价格

Element14 出品,RMB 310

见过淘宝有 RMB 199

预装 OS

ArmStrong

Raspbian

学习资料

海量教材,海量视频,海量的TI知识库及社区讨论贴。海量的第三方开发板可供参考。

海量教材、视频。但没有第三方的开发板可供参考。

当然,众所周知,二者的发展路线及用途不一样。Beaglebone Black仅仅是当年TI为了推广AM335X系列芯片而赞助的廉价开发板,主要用于学习,树莓派却是一纯粹的商业应用产品,虽然也用于教学市场,但性能和功能上的不断升级,已经让它偏离了早期的教学用途。不管怎么说,到现在为止,即使树莓派已经演进到第四代 ,CPU为四核Cortex-A72,但树莓派的主芯片资料依然不开放,电路图也不开放,即便作为学习用的开发板,也无法学习底层的嵌入式开发知识与技巧。虽然Beaglebone Black仍然停留在十几年前的配置,但依然是一款最佳的学习嵌入式系统的开发板。

目前的官方版Beaglebone Black售价仍然保持在250元以上,性价比不佳。在此我推荐一款精简版的Beaglebone Black,即LS_BBB板,售价只要69元,以下是精简版的Beaglebone Black与官方版Beaglebone Black的对比。

 

官方原版BBB

LS_BBB

备注

CPU

AM3358,运行速度800MHz,有PRU和GPU

AM3352,运行速度1GHz,无PRU和GPU

都是工业级芯片,GPU与PRU对嵌入式LINUX学习用处不大

内存

镁光512MB DDR3

海力士256MB DDR3

 

程序存储器

4GB eMMC

镁光256MB Nand Flash

后者不占用GPIO

网口/SD卡

1个10/100M网口

1个TF卡插座

1个10/100M网口

1个TF卡插座

二者相同

USB/HDMI

1个USB Host插座

1个USB OTG插座

1个microHDMI插座

1个USB Host插座

1个USB OTG插座

 

后者需要加扩展板才支持视频显示

和官方BBB一样,LS_BBB运行的是U-Boot2013.04和LINUX3.8,支持设备树。TI官方SDK已经更新到U-Boot2019和LINUX4.19,随时可以升级。

本开发板最大的亮点还是可以通过仿真器配合TI的CCS开发环境实现仿真与调试,这对于学习ARM架构及嵌入式底层基础知识非常重要。

QQ: 8799374

wechat: longspringstudio

taobao: https://shop71823792.taobao.com

这篇关于基于LS_BBB开发板学习ARM-LINUX嵌入式系统之一——平台概述的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/240741

相关文章

Mac系统下卸载JAVA和JDK的步骤

《Mac系统下卸载JAVA和JDK的步骤》JDK是Java语言的软件开发工具包,它提供了开发和运行Java应用程序所需的工具、库和资源,:本文主要介绍Mac系统下卸载JAVA和JDK的相关资料,需... 目录1. 卸载系统自带的 Java 版本检查当前 Java 版本通过命令卸载系统 Java2. 卸载自定

基于Linux的ffmpeg python的关键帧抽取

《基于Linux的ffmpegpython的关键帧抽取》本文主要介绍了基于Linux的ffmpegpython的关键帧抽取,实现以按帧或时间间隔抽取关键帧,文中通过示例代码介绍的非常详细,对大家的学... 目录1.FFmpeg的环境配置1) 创建一个虚拟环境envjavascript2) ffmpeg-py

Linux脚本(shell)的使用方式

《Linux脚本(shell)的使用方式》:本文主要介绍Linux脚本(shell)的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录概述语法详解数学运算表达式Shell变量变量分类环境变量Shell内部变量自定义变量:定义、赋值自定义变量:引用、修改、删

Linux链表操作方式

《Linux链表操作方式》:本文主要介绍Linux链表操作方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、链表基础概念与内核链表优势二、内核链表结构与宏解析三、内核链表的优点四、用户态链表示例五、双向循环链表在内核中的实现优势六、典型应用场景七、调试技巧与

基于Python实现一个简单的题库与在线考试系统

《基于Python实现一个简单的题库与在线考试系统》在当今信息化教育时代,在线学习与考试系统已成为教育技术领域的重要组成部分,本文就来介绍一下如何使用Python和PyQt5框架开发一个名为白泽题库系... 目录概述功能特点界面展示系统架构设计类结构图Excel题库填写格式模板题库题目填写格式表核心数据结构

Go学习记录之runtime包深入解析

《Go学习记录之runtime包深入解析》Go语言runtime包管理运行时环境,涵盖goroutine调度、内存分配、垃圾回收、类型信息等核心功能,:本文主要介绍Go学习记录之runtime包的... 目录前言:一、runtime包内容学习1、作用:① Goroutine和并发控制:② 垃圾回收:③ 栈和

详解Linux中常见环境变量的特点与设置

《详解Linux中常见环境变量的特点与设置》环境变量是操作系统和用户设置的一些动态键值对,为运行的程序提供配置信息,理解环境变量对于系统管理、软件开发都很重要,下面小编就为大家详细介绍一下吧... 目录前言一、环境变量的概念二、常见的环境变量三、环境变量特点及其相关指令3.1 环境变量的全局性3.2、环境变

Linux系统中的firewall-offline-cmd详解(收藏版)

《Linux系统中的firewall-offline-cmd详解(收藏版)》firewall-offline-cmd是firewalld的一个命令行工具,专门设计用于在没有运行firewalld服务的... 目录主要用途基本语法选项1. 状态管理2. 区域管理3. 服务管理4. 端口管理5. ICMP 阻断

Linux实现线程同步的多种方式汇总

《Linux实现线程同步的多种方式汇总》本文详细介绍了Linux下线程同步的多种方法,包括互斥锁、自旋锁、信号量以及它们的使用示例,通过这些同步机制,可以解决线程安全问题,防止资源竞争导致的错误,示例... 目录什么是线程同步?一、互斥锁(单人洗手间规则)适用场景:特点:二、条件变量(咖啡厅取餐系统)工作流

Linux中修改Apache HTTP Server(httpd)默认端口的完整指南

《Linux中修改ApacheHTTPServer(httpd)默认端口的完整指南》ApacheHTTPServer(简称httpd)是Linux系统中最常用的Web服务器之一,本文将详细介绍如何... 目录一、修改 httpd 默认端口的步骤1. 查找 httpd 配置文件路径2. 编辑配置文件3. 保存