长 沙 学 院
《 基 于 A R M 的 嵌 入 式 系 统 开 发 》
课 程 设 计 说 明 书
题
院
目 基于 ARM 的嵌入式系统开发课
程设计
系
电子信息与电气工程学院
专 业 ( 班 级 )
姓
学
名
号
指 导 教 师
起 止 日 期
1
基于 ARM 的嵌入式系统开发课程设计任务书
院(部):电子与电气工程学院
新辉,马凌云,谢明华,吴了,周智华
专业:14 级电子
指导教师: 龙英,刘辉,王
课题名称
智能云家居系统设计
设
计
内
容
及
要
求
进
度
安
排
一、课题内容
基于粤嵌 GEC210 开发平台的智能云家居系统设计
二、要求:
设计一个基于 ARM+Linux 的程序,通过获取温度、湿度、二氧化碳浓度、光线强
度等环境指标,自动控制照明系统、环境控制系统、家庭网络系统,并且将相关数
据传输智能云家居平台,同时在智能云家居平台上实现对照明、环境系统的监测和
控制。
起止日期(或时间量)
设计内容(或预期目标)
备注
第一天
第二天
第三天
第四天
第五天
课题介绍,答疑,收集材料
设计方案论证
程序设计
程序调试、仿真
系统测试并编写设计说明书
教研室
意见
院(部)主管
领导意见
年 月 日
年 月 日
2
长沙学院课程设计鉴定表
姓名 杜莹 学号 B20140403229 专业 电子信息工程 班级
02
设计题目
智能云家居系统设计
指 导 教
师
龙英,刘辉,王新辉,马凌
云,谢明华,吴了,周智华
指导教师意见:
评定成绩: 教师签名: 日期:
教研室意见:
最终评定等级:
教研室主任签名:
日期:
说明 课程设计成绩分“优秀”、“良好”、“中等”、“及格”、“不及格”五等。
3
目录
一、概述 ............................................................................................................................................ 5
二、设计目的 .................................................................................................................................... 5
三、设计要求 .................................................................................................................................... 6
四、嵌入式开发................................................................................................................................ 6
ARM 嵌入式简介............................................................................................................... 6
4.1
Linux 操作系统 ............................................................................................................... 6
4.2
4.3 交叉编译 .......................................................................................................................... 6
4.4 硬件开发 .......................................................................................................................... 7
五、软件编程 .................................................................................................................................... 9
5.1 图片显示 ............................................................................................................................. 9
5.2 数据获取 ........................................................................................................................... 10
5.3 主程序............................................................................................................................... 11
六、心得体会 .................................................................................................................................. 14
七、参考文献 .................................................................................................................................. 14
4
一、概述
随着社会信息化的加快,人们的工作、生活和通讯、信息的关系日益紧密。信息化社会
在改变人们工作方式和生活习惯的同时,也对传统的住宅提出了挑战。社会、技术以及经济
的进步,更是人们的观念随之巨变。人们对居家的要求早已不只是需要一个物理空间,更为
关注的是一个安全、方便、和舒适的居家环境。为了满足人们对现代居家生活的不断追求智
能家居应运而生,正悄然走近我们的生活。
智能家居(Smart Home),又称智能住宅,是利用先进的计算机系统和网络通讯技术,
将各种家用设备(如照明设备、安防设备、网络家电设备等)连接到一起,构成一个可以相
互通信、协作的整体。通过统筹管理优化人们的生活方式,帮助人们有效的安排时间,增强
家居生活安全性,甚至可以为各种能源费用节省资金。此外,它还能让用户使用更方便的方
法来管理家庭设备,如果,通过无线遥控器、电话、互联网的各种设备相互间可以通讯,自
动根据不同状态互动运行,从而给用户带来高效、舒适、便利与安全的生活。目前智能家居
系统包括照明控制系统、家居安防系统、环境控制系统、电器控制系统、电话远程控制系统、
智能化协同工作系统等。
图 1-1
智能家居系统
二、设计目的
通过两周实训中老师对对嵌入式系统原理、、Linux 操作系统基本原理以及嵌入式系统
设计开发流程的指导,使学生深入了解嵌入式以及智能家居的相关理论,加强学生的动手实
践能力,掌握以所学的计算机技术、电子技术等解决实际问题的能力,使学生在掌握嵌入式
技术的基础上,以应用为中心,从产品角度出发,掌握电子技术、计算机技术、软件工程等
5
技术的交叉应用,建立产品研发的整体思路及流程,把理论应用到实际中去。为学生将来就
业、创业打下坚实的技术基础。
三、设计要求
设计一个基于 ARM+Linux 的程序,通过获取温度、湿度、二氧化碳浓度、光线强度等环
境指标,自动控制照明系统、环境控制系统、家庭网络系统,并且将相关数据传输智能云家
居平台,同时在智能云家居平台上实现对照明、环境系统的监测和控制。
四、嵌入式开发
4.1
ARM 嵌入式简介
RISC
ARM(Advanced
Machines)是微处理器行业的一家知名企业,设计了大量高性
能、廉价、耗能低的 RISC 处理器、相关技术及软件。其技术具有性能高、成本低和能耗省
的特点,适用于多种领域,比如嵌入控制、消费/教育类多媒体、DSP 和移动式应用等。
ARM 处理器的性能优点主要有以下几点:
(1)体积小、低成本、低功耗、高性能;
(2)支持 Thumb(16 位)/ARM(32 位)双指令集,能很好的兼容 8 位/16 位器件;
(3)寻址方式灵活简单、执行效率高;
(4)大多数数据操作都在寄存器中完成;
(5)大量使用寄存器,指令执行速度更快;
(6)指令长度固定。
4.2
Linux 操作系统
Linux 操作系统作为一种多任务、稳定可靠内核可裁剪的系统,是开发嵌入式硬件产品
的优秀软件平台。嵌入式 Linux 是指对 Linux 经过裁剪小型化后,应用于特定嵌入式场合的
专用 Linux 操作系统。其特点如下
(1)完全免费
(2)完全兼容 POSIX1.0 标准
(3)多用户、多任务
(4)良好的界面
(5)丰富的网络功能
(6)可靠的安全、稳定性能
(7)支持多种平台
4.3 交叉编译
嵌入式软件开发所用的编译为交叉编译。所谓交叉编译就是在一个平台上生成在另一个
6
平台上的执行的代码。编译的主要工作就是在将程序转化成运行该程序 CPU 所能识别的机器
代码。由于不同的体系结构有不同的指令系统,因此,不同的 CPU 需要有相应的编译器,而
交叉编译就如同编译一样,把相同的程序翻译成不同的 CPU 的对应语言。
图 4-1 嵌入式系统交叉编译过程
4.4 硬件开发
4.4.1
GEC210
本次设计采用硬件平台采用 GEC210。GEC210 是一款高性能的 Cortex A8 核心板,它是
采用三星 S5PV210 作为主处理器,运行主频可高 1GHz。GEC210 主要采用了 2.0mm 间距的双
排针,引出 CPU 大部分常用功能引脚,,另外还根据 S5PV210 芯片的特性,分别引出了标准
的 miniHDMI 接口。
图 4-2
GEC210 高性能 Cortex A8 核心板
GEC210 开发板 Cortex-A8 基本配置:
(1)硬件配置
CPU 处理器
Samsung S5PV210,基于 CortexTM-A8,运行主频 1GHz;内置 PowerVR SGX540 高性能图形引
擎,支持流畅的 2D/3D 图形加速;最高可支持 1080p @ 30fps 硬件解码视频流畅播放,格式
可为 MPEG4, H.263, H.264 等;最高可支持 1080p @ 30fps 硬件编码(Mpeg-2/VC1)视频输出
(2)DDR2 RAM 内存
Size: 512MB
7
32bit 数据总线,单通道
运行频率: 200MHz
(3)FLASH 存储
SLC NAND Flash: 256MB(标配)/1GB
(4)PCB 规格尺寸
Size: 69 x 50 11(mm)
4.4.2 SecureCRT 的设置与连接
(1)获取连接上的端口号
用串口线连接好开发板后,启动开发板。
在设备管理器中,查找识别出的端口。
若不能正确识别端口(有感叹号),则需要安装驱动。
(2)SecureCRT 的设置
点击快速连接,并进行设置
a.协议: Serial
b.端口: 你电脑识别出的端口号
c.波特率: 115200
d.把数据流控制中的 RTS/CTS(R)勾去掉
其它保持默认设置
4.4.3 BY8301-16P 语音模块
1、模块管脚图
BY8301-16P 引脚图
图 4-3
2、控制指令详细说明
播放:7E 03 01 02 EF
发送该指令为播放音乐,在暂停或者停止状态下可启动播放。
暂停:7E 03 02 01 EF
发送该指令暂停播放音乐。
下一曲:7E 03 03 00 EF
该指令能够触发播放下一曲音乐,在播放最后一曲音乐时,发送该指令可触发播放第一曲音
乐。
上一曲:7E 03 04 07 EF
该指令能够触发播放下一曲音乐,在播放第一曲音乐时,发送该指令可触发播放最后一曲音
8