《嵌入式系统原理》课程设计题目.docx
《《嵌入式系统原理》课程设计题目.docx》由会员分享,可在线阅读,更多相关《《嵌入式系统原理》课程设计题目.docx(8页珍藏版)》请在冰豆网上搜索。
《嵌入式系统原理》课程设计题目
《嵌入式系统原理》
课程设计可选题目及要求
一、汽车信息系统
汽车信息系统是典型的嵌入式应用。
以前的汽车主要利用机械式仪表盘来显示汽车的速度、测量、里程等信息。
现代汽车则利用嵌入式系统将各个传感器检测的信息在汽车信息系统(汽车电脑)是显示出来,并提供更多的汽车信息服务如汽车上网、GPS、MP3、VCD/DVD等信息。
该题目可以分为如下几个子题:
1.汽车信息集成子系统
任务:
在LCD上提供一个统一的菜单,通过点击相应菜单可以调用对应的各个功能子系统。
要求:
1)熟悉开发板环境;
2)熟悉LCD驱动原理;
3)编写相应菜单,并可利用键盘或鼠标调用相应的程序;
---状态-—速度、油量、里程、
汽车信息系统-----导航—GPS导航、收发短信
---娱乐—MP3、VCD/DVD、上网浏览
菜单要求:
采用二级菜单的方式。
2.速度显示及报警子系统(模拟)
任务:
在4个数码管上显示速度值,(通过键盘上的上、下光标键模拟加速、减速、刹车等过程),当速度超过某一设定数值时,发出报警信号(快速闪烁速度数值)。
要求:
1)熟悉开发板环境;
2)熟悉数码管驱动原理;(驱动及例子程序见资源文件夹下EXT中的LED文件夹)
3)提供一段程序进行速度报警值的设定,并能进行加速、减速时速度的正确显示;
3.油量显示及报警系统(模拟)
任务:
在4个数码管上进行油箱存油量的显示(设耗油量与里程成正比),通过通过键盘上的上、下光标键来模拟汽车的行驶过程,根据设定的报警值提前报警(闪烁显示)
要求:
1)熟悉开发板环境;
2)熟悉数码管驱动原理;(驱动及例子程序见资源文件夹下EXT中的LED)
3)提供一段程序进行油量报警值的设定,并能在行驶过程中进行油量的正确显示与报警;
4.车灯控制子系统:
任务:
显示汽车在各种状况下车灯的开启与关闭控制。
要求:
1)熟悉开发板环境;
2)熟悉LED灯(红、绿各两个)驱动原理;(驱动及例子程序见LED.C及LED_TEST.c)
3)利用键盘模拟汽车行驶的五种状况:
汽车左转、汽车右转、远大灯、近小灯,每个灯可以设定快速闪烁或常开、常闭。
5.嵌入式红绿灯控制系统(模拟)
任务:
对十字路口的交通灯进行定时转换控制
要求:
1)熟悉开发板环境;
2)熟悉LED灯(红、绿各两个)驱动原理;(驱动及例子程序见LED.C及LED_TEST.c)
3)灯光控制的规律可归纳如下:
(1)东西与南北的交通灯定时交换红绿灯一次。
(2)每次红绿灯交换之间要求黄色灯点亮一段时间。
4)可由程序设定定时交换及黄灯亮的时间,并写入文件保留。
下次显示时自动读取文件中的数值。
6.短信收发子系统:
任务:
利用汽车的GSM网络接收或发送手机短信(英文),并提供显示或输入界面。
要求:
1)熟悉开发板环境;
2)熟悉串口通讯驱动原理;
3) 熟悉串口GSM短信收发的原理;(驱动及例子程序见EXT文件夹下GSM)
4) 提供发送短信界面,需要输入接收号码,短信内容(不超过70个汉字,140个英文字母).
5) 提供接收短信界面,显示发送者号码,短信内容;
6) 需要提供设置界面,设定使用的串口号,波特率,短信中心号码.
7.MP3播放系统
任务:
利用汽车嵌入式系统实现MP3播放
要求:
1)熟悉开发板环境;
2)熟悉音频驱动原理、了解MP3编解码原理;(驱动及例子程序见EXT文件夹下IIS)
3) 实现MP3播放功能。
4)提供播放界面,如选择文件、播放、暂停、下一首、上一首等。
8.汽车电子Linux的内核编译与剪裁
任务:
针对上述汽车信息系统应用要求,对Linux内核进行配置与编译。
要求:
1)熟悉开发板环境
2)熟悉内核结构与编译
3)熟悉内核烧写
4)内核要求:
串口、LCD、LED、数码管、音频,不要网络、磁盘、USB等设备。
并能进行正确的启动。
内核要尽可能小
二、智能家庭控制系统
9.微波炉控制程序
任务:
实现微波炉控制面板
要求:
1)熟悉开发板工作环境;
2)熟悉数码管驱动原理;(驱动及例子程序见资源文件夹下EXT中的LED文件夹)
3)通过按键实现微波炉的工作时间的设定(以1分和10秒为增减单位)。
4))通过按启动键开始倒计时,到时后自动停止,并可通过按停止键取消工作。
3)通过按键实现至少三种工作模式:
强、中、弱。
三、手机(PDA)应用系统
手机是典型的嵌入式系统。
除了基本的通话功能外,还嵌入了不少的应用程序如短信、电话本、游戏、日历等。
该题目可以分为如下几个子题:
10.手机应用程序集成子系统
任务:
在LCD上提供一个统一的菜单,通过点击相应菜单可以调用对应的各个应用程序。
要求:
1)熟悉开发板环境;
2)熟悉LCD驱动原理;
3)编写相应菜单,并可利用键盘的回车键(对应OK)或退出键(对应取消)及方向键进行控制。
菜单按照自己的手机菜单方式来设计。
选中菜单后可显示选中的内容。
当前菜单用反色显示。
菜单要求:
采用二级菜单的方式。
11.电话本管理子系统
任务:
在LCD屏幕上提供一个电话本管理程序,模拟手机实现电话本的增加、删除、查询等功能。
要求:
1)熟悉开发板环境;
2)熟悉LCD驱动原理;
3)编写相应菜单,并可利用键盘的回车键(对应OK)或退出键(对应取消)及方向键进行控制。
菜单按照自己的手机菜单电话本方式来设计。
4)电话本可进行分组管理,如同学、朋友、亲戚等。
并可增加、删除、显示分组信息;
5)要求提供按拼音首字母快速定位功能,如按C键可自动显示出以C开头的姓的联系人。
6)删除需要提供单个删除、全部删除、分组删除等。
12.手机记事本程序
任务:
在LCD屏幕上提供一个电话本管理程序,模拟手机实现电话本的增加、删除、查询等功能。
要求:
1)熟悉开发板环境;
2)熟悉LCD驱动原理;
3)编写相应菜单,并可利用键盘的回车键(对应OK)或退出键(对应取消)及方向键进行控制。
4)记事本功能要求:
记事内容最大长度不超过200个汉字;可增加、删除、修改、查询、显示记事内容;记事内容需要用文件方式保存。
13.手机日历程序
任务:
在LCD屏幕上提供一个电话本管理程序,模拟手机实现手机日历的查询、设定等功能。
要求:
1)熟悉开发板环境;
2)熟悉LCD驱动原理;
3)编写相应菜单,并可利用键盘的回车键(对应OK)或退出键(对应取消)及方向键进行控制。
4)日历功能要求:
能以月历的形式显示当前的日期,并可上翻下翻、输入查询某日的星期几。
也可进行当前时间的设置。
要求考虑到闰年、大小月等情况;
5)日历显示要符合手机屏幕要求。
14.手机闹钟程序
任务:
在LCD屏幕上提供一个闹钟管理程序,模拟手机实现电话本的增加、删除、查询等功能。
要求:
1)熟悉开发板环境;
2)熟悉LCD驱动原理;
3)编写相应菜单,并可利用键盘的回车键(对应OK)或退出键(对应取消)及方向键进行控制。
4)功能要求:
能正确实现闹钟的走时、可以设定当前时间;可以设置闹钟时间,并在时间到时发出响声。
5)闹钟可设定多个,并可设定星期闹钟,如星期一到星期五7:
00闹,星期六到星期天7:
00不闹铃。
15.手机计算器程序
任务:
在LCD屏幕上提供一个手机计算器程序,模拟手机实现计算器加减乘除混合运算等功能。
要求:
1)熟悉开发板环境;
2)熟悉LCD驱动原理;
3)编写相应菜单,并可利用键盘的回车键(对应OK)或退出键(对应取消)及方向键进行控制。
4)功能要求:
实现加减乘除功能;具有记忆功能;
16.手机游戏程序
任务:
在LCD屏幕上提供一个手机小游戏程序。
要求:
1)熟悉开发板环境;
2)熟悉LCD驱动原理;
3)编写相应菜单,并可利用键盘的回车键(对应OK)或退出键(对应取消)及方向键进行控制。
4)功能要求:
实现手机拼图游戏或其它游戏程序。
也可利用现存的游戏源码进行嵌入式系统的移植。
17.手机Linux的内核编译与剪裁
任务:
针对上述汽车信息系统应用要求,对Linux内核进行配置与编译。
要求:
1)熟悉开发板环境
2)熟悉内核结构与编译
3)熟悉内核烧写
4)内核要求:
串口、LCD、LED、数码管、音频、USB、摄像头,不要以太网、磁盘等设备。
并能进行正确的启动。
内核要尽可能小
四、系统移植类
18.MiniGUI在开发板上的移植
任务:
将MiniGUI在开发板上进行移植,以提供图形用户接口。
要求:
MiniGUI是一款典型的嵌入式LinuxGUI.
1)熟悉开发板环境
2)熟悉GUI结构
3)利用给定的MiniGUI源码(见资源文件夹),进行交叉编译并对源码作适当修改,最终实现在目标板上运行MiniGUI.(能在目标板上运行HelloWorld程序)。
19.Mpg123在开发板上的移植
任务:
将Mpg123在开发板上进行移植,以提供多媒体播放。
要求:
Mpg123是一款典型的嵌入式Linux中的音频播放程序.
1)熟悉开发板环境
2)熟悉音频播放结构
3)利用给定的Mpg123的源码(见资源文件夹),进行交叉编译并对源码作适当修改,最终实现在目标板上运行MiniGUI.(能在目标板上运行HelloWorld程序)。
20.嵌入式WEB服务器BOA(或是httpd)在开发板上的移植
任务:
将BOA源码在开发板上进行移植,以提WEB(网页)服务器支持。
要求:
BOA是一款典型的嵌入式Linux中的WEB服务器程序.
1)熟悉开发板环境
2)熟悉WEB服务器原理
3)利用给定的BOA的源码(见资源文件夹),进行交叉编译并对源码作适当修改,最终实现在目标板上运行BOA.(能在目标板上运行WEB服务器,用浏览器能访问该服务器站点)。
21.嵌入式数据库SQLLite在开发板上的移植
任务:
将SQLLite在开发板上进行移植,以提供嵌入式数据库支持。
要求:
SQLLite是一款典型的嵌入式Linux中的数据库系统.
1)熟悉开发板环境
2)熟悉数据库知识
3)利用给定的SQLLite的源码(见资源文件夹),进行交叉编译并对源码作适当修改,最终实现在目标板上运行SQLLite.(能在目标板上支持SQL语句)。
22.嵌入式FTP服务器的移植
23.播放器Mplayer的移植
24.嵌入式linux2.6内核的移植
26.嵌入式按键驱动程序的移植
27.嵌入式LCD驱动程序的移植
28.嵌入式音频驱动程序的移植
29.嵌入式摄像头驱动程序的移植
30.cramfs文件系统的移植
31.j2ffs文件系统的移植
32.引导程序uboot的移植
33.busybox嵌入式文件系统的移植
34.嵌入式QT的移植
35.嵌入式网络数据传输
36.嵌入式网络浏览器的移植
37.嵌入式java的移植
38.基于QT的电子相框设计
39.基于QT的MP3播放器设计
40.基于QT的远程数据采集系统(短信收发程序)
41.其他自己感兴趣的与嵌入式有关的题目。