本文采用知识共享署名 4.0 国际许可协议进行许可,转载时请注明原文链接,图片在使用时请保留全部内容,可适当缩放并在引用处附上图片所在的文章链接。
简介
BeagleBone Black Rev.C是一款基于AM335x处理器的开发套件,它集成了ARM Cortex™-A8内核,处理速度高达1GHz,并有丰富的外设。可扩展的接口有以太网、USB、OTG、TF卡、串口、JTAG、D型HDMI、ADC、I2C、SPI、PWM及LCD。

常规参数
·尺寸: 86.36 mm×54.61mm
·工作温度:0 ~ 70℃
·工作湿度:20% ~ 90% (Non-Condensing)
·供电电压5V/0.35A
AM335x处理器
·集成 1GHz ARM Cortex™-A8内核
·集成 NEON™ SIMD 协处理器
·集成 SGX530图形引擎
·集成实时可编程子系统单元
·集成32KB指令缓存和32KB数据缓存具有一位奇偶校验位
·集成256KB带错误检测码的第二层快速存储器
板载内存
• 4GB 8-位eMMC 板载闪存
• 512MB DDR3 SDRAM
板载接口
• 1个D型HDMI接口(16位颜色与音频输出)
• 1个LCD接口 (24-bit输出, P8接口输出)
• 1个10/100M以太网接口 (RJ45 接头)
• 1个带PHY的高速USB 2.0 OTG接口(Mini USB type-B 接头)
• 1个带PHY的高速USB 2.0 HOST接口 (USB type-A 接头)
• 1个TF卡槽(SD/MMC)
• 1个3线调试串口(6引脚 2.54接头)
• 1个D型HDMI接口
• 1 个扩展接口,可接LCD、 UART、eMMC、ADC、I2C、SPI及PWM
• 1 个JTAG 接口 (可选,20引脚标准接口, 默认不焊接)
按键&灯
• 1个开机选择按键
• 1个电源开关
• 1个重启开关
• 1个LED电源指示灯
• 4个常规指示灯
系统框图
操作系统: Debian, Angstrom, Ubuntu, Android
设备驱动
Uart:Uart 驱动
Ehternet:10/100 IEEE1588
显示器:HDMI Driver
mmc/sd:SD 2.0 /eMMC 驱动
USB:高速USB驱动
Led:用户 LED驱动
支持Debian系统,带有驱动和源代码。
支持TISDK系统,带有驱动和源代码。
资源
Beagleboard:BeagleBoneBlack
Beagleboard:BeagleBoneBlack Debian
开发环境搭建
串口工具
sudo apt-get install minicom
启动并配置minicom
sudo minicom -s
查看USB串口设备
ls /dev/ttyUSB*
minicom退出
crtl + a + z + x
查看系统信息
板载闪存
1
2
3
4
5
6
7
8
9
10
|
root@BBB-2:~# df -h
Filesystem Size Used Avail Use% Mounted on
rootfs 3.4G 2.0G 1.3G 60% /
udev 10M 0 10M 0% /dev
tmpfs 100M 520K 99M 1% /run
/dev/disk/by-uuid/b74cd3fe-800f-4a18-a50e-598d20a512fd 3.4G 2.0G 1.3G 60% /
tmpfs 249M 0 249M 0% /dev/shm
tmpfs 249M 0 249M 0% /sys/fs/cgroup
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 100M 0 100M 0% /run/user
|
以太网
ifconfig eth0
1
2
3
4
5
6
7
8
9
|
eth0 Link encap:Ethernet HWaddr b0:d5:cc:f9:e3:11
inet addr:192.168.101.217 Bcast:192.168.101.255 Mask:255.255.254.0
inet6 addr: fe80::b2d5:ccff:fef9:e311/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1537 errors:0 dropped:0 overruns:0 frame:0
TX packets:352 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:217702 (212.5 KiB) TX bytes:109929 (107.3 KiB)
Interrupt:40
|
交叉编译
arm-eabi :是用于编译裸机程序的,当然也包括Bootloader
arm-linux-gnueabihf :适用于编译运行于嵌入式linux的程序
arm-eabi
arm:指的是arm内核的处理器;
eabi:指的是嵌入式应用二进制接口(Embedded application binary interface)。
交叉编译工具链在windows上面运行的时候需要配合mingw32使用,可以直接下载gcc-linaro-7.4.1-2019.02-i686-mingw32_arm-eabi.tar.xz版本。
arm-linux-gnueabihf
arm:指的是arm内核的处理器;
linux:表示用于运行在linux上的程序的编译;
gnueabihf:The GNU C compiler for armhf architecture,hf表示使用hard硬件浮点模式。
交叉编译工具链在windows上面运行的时候需要配合mingw32使用,可以直接下载gcc-linaro-7.4.1-2019.02-i686-mingw32_arm-linux-gnueabihf.tar.xz版本。
安装
1
2
3
|
sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386 zlib1g:i386
|
1
|
arm-linux-gnueabihf-gcc -v
|
输出
1
2
3
4
5
6
7
|
使用内建 specs。
COLLECT_GCC=arm-linux-gnueabihf-gcc
COLLECT_LTO_WRAPPER=/opt/tegra-linux/x86-arm/arm-linux-gnueabihf/bin/../libexec/gcc/arm-linux-gnueabihf/4.8.3/lto-wrapper
目标:arm-linux-gnueabihf
配置为:/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-linux/.build/src/gcc-linaro-4.8-2014.04/configure --build=i686-build_pc-linux-gnu --host=i686-build_pc-linux-gnu --target=arm-linux-gnueabihf --prefix=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-linux/install --with-sysroot=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-linux/install/arm-linux-gnueabihf/libc --enable-languages=c,c++,fortran --enable-multilib --with-arch=armv7-a --with-tune=cortex-a9 --with-fpu=vfpv3-d16 --with-float=hard --with-pkgversion='crosstool-NG linaro-1.13.1-4.8-2014.04 - Linaro GCC 4.8-2014.04' --with-bugurl=https://bugs.launchpad.net/gcc-linaro --enable-__cxa_atexit --enable-libmudflap --enable-libgomp --enable-libssp --with-gmp=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-linux/.build/arm-linux-gnueabihf/build/static --with-mpfr=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-linux/.build/arm-linux-gnueabihf/build/static --with-mpc=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-linux/.build/arm-linux-gnueabihf/build/static --with-isl=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-linux/.build/arm-linux-gnueabihf/build/static --with-cloog=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-linux/.build/arm-linux-gnueabihf/build/static --with-libelf=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-linux/.build/arm-linux-gnueabihf/build/static --enable-threads=posix --disable-libstdcxx-pch --enable-linker-build-id --enable-gold --with-local-prefix=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-linux/install/arm-linux-gnueabihf/libc --enable-c99 --enable-long-long --with-mode=thumb --with-float=hard
线程模型:posix
gcc 版本 4.8.3 20140401 (prerelease) (crosstool-NG linaro-1.13.1-4.8-2014.04 - Linaro GCC 4.8-2014.04)
|