基于BeagleBone的嵌入式教学平台研制
2016-09-06吕国成杨延军王志军
吕国成, 杨延军, 王志军
(北京大学 信息科学技术学院, 北京 100871)
基于BeagleBone的嵌入式教学平台研制
吕国成, 杨延军, 王志军
(北京大学 信息科学技术学院, 北京100871)
研制了基于BeagleBone开源硬件的嵌入式教学平台。该平台以嵌入式BeagleBone为核心,扩展了丰富的外围接口(音、视频接口,UART接口,SPI接口,LCD接口等),可以满足嵌入式教学开发需求。介绍了该平台的软硬件系统组成、主要实验项目及安排。该平台可根据教学需求灵活配置各类实验,激发学生创新思维,提升学生嵌入式开发能力。
嵌入式教学平台; 实验教学; BeagleBone
嵌入式系统广泛应用于通信、智能家居、手机等消费电子领域[1]。随着物联网、移动互联网的发展和嵌入式软硬件处理能力的提高,嵌入式系统应用还将有更大的发展。北京大学信息科学技术学院嵌入式系统教学使用的是基于AT91SAM9261的嵌入式平台,该平台已经使用了近8年,处理能力及接口已不能满足当今主流嵌入式应用需求,亟待升级。
本文介绍了自行研制的嵌入式系统平台的主要硬件及操作系统。该平台具有较强处理能力及良好的结构,提供了丰富的接口,能够满足当前主流嵌入式应用需求;核心板与扩展板的架构便于平台的快速升级及维护[2]。基于该平台的教学实验内容提高了学生的创新能力和嵌入式系统开发能力[3-5]。
1 实验平台结构
本实验平台基于BeagleBone研制。BeagleBone为3种主流开源硬件(Arduino、BeagleBone及Raspberry Pi)之一。开源硬件项目与开源软件项目类似,通过共享硬件设计(工程制图、原理图、PCB图甚至HDL源代码)来消除技术壁垒及专利版权,推动嵌入式应用的快速发展。BeagleBone采用Cortex-A8处理器,具有强大的处理能力,同时具有丰富的接口和较强的可扩展性,便于实现各类接口实验项目。实验平台采用“核心板+扩展板”结构,选用BeagleBone为核心处理板完成核心处理,扩展板作为核心板的扩展,完成音、视频接口,UART,SPI,LCD等接口扩展。
2 硬件实现
2.1BeagleBone核心板
BeagleBone核心板是实验平台核心,完成主要功能和接口处理,并通过扩展接口与扩展接口板连接。其主要核心硬件包括:
(1) 处理器(CPU):采用TI Sitara ARM AM3359 Cortex-A8处理器,具有32 KB L1数据及指令缓存,256 KB L2缓存,最高工作频率为720 MHz;支持DDR2,DDR3;支持USB、LAN、LCD、多种串行接口[6-7](见图1);
图1 Cortex-A8处理器结构
(2) 电源芯片:采用TPS65217B集成电源芯片,为核心板CPU及外围芯片供电,可提供1.8 V、3.3 V等电压[8];
(3) 内存:采用MT47H128M16RT-25E内存芯片,提供256 MB DDR2 内存;
(4) 存储:采用标准micro SD接口,SD卡容量为8 GB;
(5) USB接口:核心板提供2个USB接口,分别为主设备接口、从设备接口;
(6) 网口:采用SMSC LAN8710 PHY接口芯片,网口速率为10/100 MHz 自适应;
(7) 扩展接口:扩展接口为两排46针接口,实现LCD、音频、各种串行接口扩展。
2.2扩展接口板
扩展接口主要包括音、视频接口及串口,通过接口功能扩展以实现交互式应用。主要包括以下硬件:
(1) 电源芯片LM2596S:完成12 V到5 V电压转换,为整个实验平台供电;
(2) LCD与触摸屏AT050TN22:5.0英寸TFT显示屏,屏幕分辨率为640×480(像素),通过并行带线与核心板连接;
(3) 音频接口TLV320AIC3106:该芯片完成立体声音频信号处理,通过I2C接口与核心板连接。
实验平台采用了“核心板+扩展板”结构。核心板完成核心功能,在扩展板上实现音、视频交互功能扩展,既保证了核心功能,又兼顾了灵活性,为实验项目的设计奠定了基础。图2为实验平台的硬件实物图。
图2 实验平台图
3 操作系统安装
硬件是实验平台的基础,嵌入式操作系统是实验平台的核心。完成嵌入式操作系统的安装是该实验平台的另一项主要工作。该平台采用SD卡作为存储介质,仅需要准备好操作系统的安装文件,将相关文件写入SD卡相应分区即可完成安装,大大简化了操作系统的安装流程[6]。此外,由于处理能力的提升,该平台支持更多Linux操作系统(Debain、Ubuntu、Andriod等),为后续实验内容的扩展提供有力支持。平台采用标准Linux操作系统。
嵌入式应用开发不同于普通程序开发,主要由主机及嵌入式实验平台构建开发环境。由于主机与目标板采用不同CPU架构,例如主机通常采用Intel架构,目标板采用ARM架构,所以主机上的程序只有通过交叉编译后才能在目标板上执行。标准Linux的安装过程包括3个主要步骤。
(1) 交叉编译环境建立。主要包括安装交叉编译工具、安装主要网络服务(例如TFTP、NFS等)[1,9]。
(2) 交叉编译U-boot、Linux kernel。U-boot完成硬件平台的自检,为内核启动做好准备,Linux kernel是操作系统核心,用于管理内存、外设及系统资源。本实验平台U-boot采用v2014.07版本[10],Linux kernel采用3.8.13-bone24.4版本。交叉编译后将生成的文件拷贝至SD卡相应目录下完成安装。
(3) 交叉编译文件系统。采用Buildroot工具完成文件系统配置,交叉编译后得到目标板的文件系统[11]。
将交叉编译好的U-boot文件、内核文件及文件系统拷贝到SD卡相应目录下,完成平台的操作系统安装。系统启动后可以通过串口登录至系统,完成平台操作系统安装[12]。
4 实验平台支持实验项目
新的实验平台提升了处理能力及扩展了接口,可以更好地支持各类嵌入式实验项目。为了使学生更好理解及掌握嵌入式开发,嵌入式实验内容按照复杂度分为3个阶段(见图3)。
图3 实验内容安排
(1) 基础性实验。是嵌入式实验的基础,包括嵌入式交叉编译环境的搭建及嵌入式系统的安装。在以后的实验中会经常用到基础性实验内容。
(2) 单元实验。将嵌入式主流应用分为几个独立的实验,每个实验有针对性地安排实验内容,通过具体实验内容来理解并掌握基础嵌入式应用开发。
(3) 综合、创新实验。学生通过基础实验及单元实验项目,逐步掌握嵌入式基础知识及主流应用开发,
再结合主流热门应用安排综合实验。学生也可以根据自己的兴趣、爱好选定一些创新实验题目。通过综合、创新实验,进一步巩固基础性实验和单元实验知识。
5 结语
基于BeagleBone的嵌入式教学平台采用核心板与扩展板双层架构,在保证核心功能的同时,得到了丰富的功能扩展。平台基于主流开源硬件,便于维护及升级。结合当前主流的嵌入式系统应用,设计了由简单到复杂、由基础到综合的分阶段实验项目,便于学生逐步深入地学习及掌握,促进了嵌入式教学改革。
References)
[1] 杨延军.嵌入式系统开发原理与实验[M].北京:北京大学出版社,2011.
[2] 谭大为.开放的嵌入式系统实验平台设计[J].实验技术与管理,2013,30(12):141-145.
[3] 唐续,赵芳斌,王嘉.EDA与单片机及SOPC一体化实验教学平台研制[J].实验技术与管理,2013,30(1):73-77.
[4] 宋焱翼,陈礼,颜芳.嵌入式系统实验教学改革与实验教学装置开发[J].实验室研究与探索,2011,30(7):239-241.
[5] 吕向阳,陈明义.嵌入式系统创新实验室建设[J].实验室研究与探索,2005,24(5):32-33.
[6] Coley G.BeagleBone Rev A6 System Reference Manual[EB/OL].(2012-05-09). http://www.beaglebone.org.
[7] Texas Instruments.AM335x ARM© Cortex-A8 Microprocessors (MPUs) Technical Reference Manual (SPRUH73H) [EB/OL]. October 2011 - Revised April 2013.http://www.ti.com.
[8] Texas Instruments. Powering the AM335x with theTPS65217x[EB/OL].http://www.ti.com.
[9] 刘忆智.Linux从入门到精通[M].北京:清华大学出版社,2010.
[10] Digi International Inc. U-Boot Reference Manual [EB/OL]. 2007.http://www.digiembedded.com.
[11] Thomas Petazzoni. The Buildroot user manual 2013.08-rc1[EB/OL].http://www.buildroot.uclibc.org.
[12] Nelson R. Beaglebone [EB/OL].[2015-08-18]. https://eewiki.net/display/linuxonarm/BeagleBone.
Development of a new experimental teaching platform with embedded system based on BeagleBone
Lü Guocheng, Yang Yanjun, Wang Zhijun
(School of Electronics Engineering and Computer Science, Peking University,Beijing 100871,China )
An experimental teaching platform with embedded system based on BeagleBone is developed. This platform is based on BeagleBone board with much interfaces (Voice/Video, UART, SPI, LCD, etc.) meeting the demands for embedded software development and teaching experiments. The composition and main features of this platform, as well as the experimental content and schedule, are discussed. This is a high performance and flexible platform supporting different kind experiments. That not only stimulates the student’s creativity, but also improves the embedded development ability.
teaching platform with embedded system; experimental teaching; BeagleBone
10.16791/j.cnki.sjg.2016.03.038
2015- 08- 17
北京大学2014实验教学改革项目
吕国成(1984—),男,云南宣威,硕士,工程师,主要从事嵌入式系统、卫星信号处理教学及研究.
E-mail:lv.guocheng@pku.edu.cn
TP316.4;G642.4
A
1002-4956(2016)3- 0151- 03