嵌入式系统课程设计报告基于s3c2410a的游戏机设计

嵌入式系统课程设计报告基于s3c2410a的游戏机设计
嵌入式系统课程设计报告基于s3c2410a的游戏机设计

xxxxxxxxxxxxx学院嵌入式系统课程设计报告

基于S3C2410A的游戏机设计

系别:

专业:

学号:

姓名:

指导教师:

摘要

嵌入式系统是体现近年来微电子技术及计算机技术发展的高科技应用系统,以应用为中心,以计算机技术为基础,软件硬件可裁剪,满足应用系统对功能、可靠性、成本、体积、功耗等有特殊要求的专用计算机系统Linux在嵌入式领域中的应用也越来越广。选用Linux 作为平台,可以根据具体需要自由地裁减源码,打造适合目标平台的环境,编写最有效率的应用程序。与其他嵌入式平台类似,基于ARM架构的嵌入式系统有以下特点:(1)是“类计算机系统”;(2)面向特定应用的;(3)更注重低功耗、低成本;(4)升级较慢;(5)具有固化的代码;(6)系统开发需要专用开发工具和环境;(7)软件需要RTOS开发平台;(8)开发人员应具备电路专业知识;(9)是开放性的知识集成系统。随着微处理器性能的提升,现在的微处理器已经可以支撑游戏模拟器的运行,用户可以选择在非PC 平台下操作街机游戏以及20 世纪90 年代需要PC 机才能运行的游戏节目,这无疑提升了游戏硬件平台移动性。电子游戏业将是这一技术进步的最大受益者。目前,在一个配有LCD 图形界面和32 位ARM 微处理器的移动平台上,甚至可以实现最早出现在PC 机上3D游戏。本文介绍利用ARM嵌入式系统平台(内置S3C2410A 核心微处理器),将开源游戏模拟器Visual Boy Advance(VBA )的代码移植到微处理器上的方法。SDL (Simple DirectMedia Layer)是一个自由的、跨平台的多媒体开发包,现在广泛应用于游戏、游戏SDK、模拟器、MPEG 播放器和其他众多的软件设计领域。特别是,SDL(Simple DirectMedia Layer)在游戏开发领域已经得到了广泛的认可,许多著名的游戏都用到了SDL开发包,其中最著名的是赢得LINUX组游戏开发大奖的“文明:权利的召唤(Civilization: Call To Power )”。

关键词:嵌入式系统ARM嵌入式系统平台ARM微处理器电子游戏SDL

目录

一、设计任务

1.1设计目的

1.2设计要求

二、基于ARM架构的嵌入式系统简介

三、嵌入式程序的设计原理

3.1 BootLoader的应用

3.2 Linux内核的应用

3.3根文件系统的应用

3.4YAFFS应用程序的下载

四、使用MPLAYER播放视频文件

4.3 启动

4.2 建立超级终端

4.1 硬件连接

五、主要的设计内容

5.7 上传应用程序

5.2建立超级终端

5.3启动

5.4恢复到出厂状态

5.5 JTAG烧写vivi

5.6烧写内核和根文件系统

5.1 硬件连接

六、设计总结和心得

6.1 设计总结

参考资料

附录

一、设计任务

1.1 设计目的

(1)巩固学习过的ARM嵌入式系统的BootLoader的应用设计

(2)巩固学习过的ARM嵌入式系统的Linux内核的应用设计

(3)巩固学习过的ARM嵌入式系统的根文件系统的设计

(4)学习使用JTAG调试器的驱动安装及BootLoader下载

(5)学习使用嵌入式Linux系统中的ftp服务器传送YAFFS应用程序

(6)学习开源软件VBA的配置与编译

1.2 设计要求

要求:“基于S3C2410A的游戏机设计”适用

1、BootLoader要能够实现便捷的人机交互界面。

2、Linux内核具有基本的应用库。

3、根文件系统采用CRAMFS格式。

4、系统能够播放视频及音频文件。

5、系统支持ftp服务器运行。

6、VBA能够模拟游戏的运行。

二、基于ARM架构的嵌入式系统简介

嵌入式系统是体现近年来微电子技术及计算机技术发展的高科技应用系统,它是面向特定应用的,为人们设计了极为简便却仍具有标准PC 机功能的设备,给人们的生产与生活带来了极大的便利与丰富的乐趣。英国的电气工程师学会(IEE)对嵌入式系统的定义是用来控制、监视或辅助设备、机器和工厂运行的装置。

在32位嵌入式处理器市场中,ARM处理器占有很大的份额。ARM 架构是ARM (Advanced RISC Machine)公司开发的一种高性能低功耗微处理器的体系结构设计,有一系列不同的版本。ARM不仅是一个公司、一种技术,也是一种经营理念,即ARM 架构的嵌入式微处理器都是各芯片厂商根据ARM 公司出售的知识产权(IP)核生产的,拥有众多的系列类型,都具有ARM 微处理器的共同特点。以S3C2410 微处理器为硬件核心的嵌入式系统具有体积小、低功耗、低成本、高性能等特点,且支持Thumb(16 位)/ARM(32 位)双指令集,指令执行速度更快。

由于存储空间等原因,在嵌入式芯片上编程有较大的困难,选取合适的平台就显得很重要。Linux自出现以来,得到了迅猛的发展。Linux是开放源码的操作系统,吸引着全世界的程序员参与到发展和完善的工作中来,所以Linux保持了稳定而且卓越的性能。Linux在服务器领域已经占有很大的份额,在图形界面方面也不输于Windows。由于源码可以修改、移植,Linux在嵌入式领域中的应用也越来越广。选用Linux作为平台,可以根据具体需要自由地裁减源码,打造适合目标平台的环境,编写最有效率的应用程序。

与其他嵌入式平台类似,基于ARM架构的嵌入式系统有以下特点:(1)是“类计算机系统”;(2)面向特定应用的;(3)更注重低功耗、低成本;(4)升级较慢;(5)具有固化的代码;(6)系统开发需要专用开发工具和环境;(7)软件需要RTOS开发平台;(8)开发人员应具备电路专业知识;(9)是开放性的知识集成系统

三、嵌入式程序的设计原理

3.1 BootLoader的应用

BootLoader 是在系统上电以后引导操作系统内核运行的一段小程序,它类似于PC 机上的BIOS 程序。通过这段小程序来初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件环境配置到一个合适的状态,以便为最终调用操作系统内核准备好正确的环境。通常,BootLoader是依赖于具体的硬件来实现的,在嵌入式应用系统中,BootLoader不但依赖于CPU 的体系结构,而且依赖于嵌入式系统板级设备的配置。U-Boot就同时支持PowerPC、ARM、MIPS和X86等体系结构,在U-Boot-1.2.0版本中已经支持的电路板就有218种。

事实上,一个功能完善的BootLoader已经相当于一个微型的操作系统了,话虽这样说,它仍没有像微型操作系统那样复杂,甚至还比不上PC机的BIOS程序规模大。大多数功能比较完善的BootLoader 程序都包含两种不同的操作模式:“正常启动”模式与“下载更新”模式,主要功能有:初始化系统在启动阶段必需的硬件设备;准备后续软件系统(如操作系统)运行所需的软件环境,比如复制一部分代码到RAM 中等;向内核传递启动参数;配置系统各种参数[可选];支持各种协议来下载BootLoader、内核、文件系统等[可选];在线烧写系统firmware,如启动参数、BootLoader、内核、文件系统等[可选];支持在线调试[可选];引导内核启动。

试验箱原始bootloader为现在较少使用的vivi。

3.2 Linux内核的应用

在嵌入式系统应用中有三个基础组成部分(分别是BootLoader、Linux 内核及根文件系统),Linux 内核的使用是其中最重要的一项。内核是所有linux 系统的中心软件组件。嵌入式领域所说的linux,一般是指linux 内核。在使用Linux 内核时,需要针对具体的微处理器配置、编译Linux 内核,之后才能将得到的内核映像文件下载到目标平台运行。

在嵌入式领域,Linux 2.6 除了提高了实时响应性能、系统移植的便捷性以外,还添加了新的体系结构和处理器类型,其中包括对没有硬件控制内存管理方案的MMU-less 系统的支持,比如Linux2.6 内核开始支持m68k 等不带MMU 的微控制器。此外,Linux2.6 内核已经可以支持大容量内存模型、更多的微控制器,同时还改善了IPO 子系统,增添更多的多媒体应用功能。

三星公司针对s3c2410 芯片推出了smdk2410 demo 板,Linux 内核对该开发板的支持非常完善。为了移植方便,并最大可能地实现代码重用,可以选择该开发板作为原始目标板,在它的基础上进行必要的修改。系统应用平台硬件配置的变化往往需要Linux 内核的配置也相应的改变,以使Linux 内核能够适应硬件电路,通过修改相应的Makefile 文件可以配置编译工具。

以试验箱自带配置编译好的内核下载应用为例说明下载过程如下:vivi>load flash kernel x 回车,当出现“Ready for downloading using xmodem...Waiting...”点击超级终端任务栏上“传送”下拉菜单中的“发送文件”,选择好镜像文件zImage,Enter,协议为Xmodem,点击“发送”,4 分钟左右zImage 烧写完毕;vivi>load flash root x 回车,当出现“Ready for downloading using xmodem...Waiting...”点击超级终端任务栏上“传送”下拉菜单中的“发送文件”,选择好镜像文件root.cramfs,协议为Xmodem,点击“发送”,8 分钟左右root.cramfs 烧写完毕。

3.3根文件系统的应用

嵌入式系统应用中的根文件系统是内核启动时首先需要加载的文件系统,可以为用户提供人机交互的界面(shell),它与前面介绍的BootLoader、Linux 内核一起为嵌入式系统提供一个完整的应用环境。Linux内核在系统启动期间进行的最后操作之一就是安装根文件系统,在系统启动时,所有其它的文件系统都被加载(mounted)到根文件系统。

根文件系统存储在一定类型的存储介质上,是一个具有层次关系的目录树。在不同计算机平台上的根文件系统的具体内容有所不同,但是它们都包含一些必要的文件,这些文件可

以用来启动系统,还可以用来引导系统到挂载其它文件系统的状态,由这些必要的文件实现的一个最小系统集主要包括根目录、/boot、/dev、/etc、/bin、/sbin、/tmp等目录。

根文件系统直接影响着系统能否从磁盘正常引导并运行,保持根文件系统的规模最小,即是shell命令、库文件、启动文件以及相应目录的最小集,最小规模的、不会频繁修改的文件系统才能使系统平稳运行。

常见的文件系统包括EXT2文件系统、JFFS2文件系统、Y AFFS文件系统等。

试验箱原根文件系统下载过程如下:vivi>load flash root x 回车,当出现“Ready for downloading using xmodem...Waiting...”点击超级终端任务栏上“传送”下拉菜单中的“发送文件”,选择好镜像文件root.cramfs,协议为Xmodem,点击“发送”,8 分钟左右root.cramfs 烧写完毕。

3.4 YAFFS应用程序的下载

试验箱所配备的yaffs文件系统下载过程如下:

用网线连接好2410-S 试验箱的网口和PC 机的网口,配置IP 在同一网段,重启2410-S 进入目录[/mnt/yaffs]下。

[/mnt/yaffs]ifconfig --查看IP

[/mnt/yaffs]ifconfig eth0 192.168.0.111 --配置eth0 ip

[/mnt/yaffs]inetd --启动ftp

打开ftp 软件(在光盘中flashvivi 目录中提供),192.168.0.111,用户名:root,密码:无,

连接进入ftp,上传“yaffs.tar”到2410-S 的/var 下,3 分钟左右上传完毕。

这时千万不要重启2410-S

[/mnt/yaffs]cd .. --转换到/mnt 下

[/mnt]rm -rf yaffs/* --删除/yaffs 下文件

[/mnt]cd /var --转到var 目录下

[/var]tar xjvf yaffs.tar.bz2 -C /mnt/yaffs --解压yaffs.tar.bz2 到mnt/yaffs 目录下,需3 分

钟左右。

四、使用MPLAYER播放视频文件

4.1 硬件连接

连接电源,将5V电源线的连到UP-NETARM2410-S的电源接口;连接串口线,一端连接PC的串口,另一端连接到UP-NETARM2410-S的串口(上面的);连接网线,将随机附带的交叉网线把UP-NETARM2410-S靠近于电源接口的网口和PC机的网口连接好。

4.2 建立超级终端

在Windows 系统下,开始→所有程序→附件→通讯→超级终端,选择ARM 开发平台实际连接的PC 机串口(COM1),设置属性为波特率115200、数据位8、无奇偶校验、停止位1、无数据流控制。

4.3 启动

打开电源开关,系统由VIVI开始引导,超级终端会显示启动信息,输入“boot”后会引导kernel,启动linux系统。

4.4 使用MPLAYER播放视频文件

在[/mnt/yaffs/mplayer] 路径下输入“ls”命令可查看到mplayer、mplayer2、test.avi三个文件,继续在该路径下输入“mplayer test.avi”命令可以看到原始的视频,输入“mplayer2 test.avi”命令可以看到全屏的视频。

五、主要的设计内容

5.1 硬件连接:

连接电源,将5V电源线的连到UP-NETARM2410-S的电源接口;连接串

口线,一端连接PC的串口,另一端连接到UP-NETARM2410-S的串口(上

面的);连接网线,将随机附带的交叉网线把UP-NETARM2410-S靠近于

电源接口的网口和PC机的网口连接好。

5.2建立超级终端:

运行Windows 系统下(以WindowsXP 为例)开始→所有程序→附件→通讯→超级终端(HyperTerminal)。在windows xp 操作系统下,当初次建立超级终端的时候,会出现如图1对话框,请在□中打上√,并选择“否”。

图1 图2

新建一个通信终端。如果要求输入区号、电话号码等信息请随意输入,出现如图2 所示对话框时,为所建超级终端取名为arm,可以为其选一个图标。单击“确定”按钮。在接下来的对话框中选择ARM开发平台实际连接的PC机串口(如COM1),按确定后出现如图 3 所示的属性对话框,设置通信的格式和协议。这里波特率为115200,数据位8,无奇偶校验,停止位1,无数据流控制。按确定完成设置。

图3 图4

完成新建超级终端的设置以后,可以选择超级终端文件菜单中的另存为,把设置好的超级终端保存在桌面上,以备后用。用串口线将PC机串口和平台UART0 正确连接后,就可以在超级终端上看到程序输出的信息了。

5.3启动:

打开电源开关,系统会由VIVI开始引导。正常启动时会显示启动信息到“Press Return to start the LINUX now, any other key for vivi”,不进行任何操作等待30S或按回车则启动进入linux系统,按除回车键外的其它键则进入vivi控制台,如图5.3.1。在这里输入“boot”,进入LINUX系统;输入“bootucos”进入ucos系统。输入“boot”后会引导kernel,启动linux 系统,见图5.是在应用程序目录下,可以通过“ls”查看,如图6:

图 5 图6

5.4恢复到出厂状态

在windows xp下进行,需要的文件在光盘中的\Linux-V6.0\img目

录和\Linux-V6.0\img \flashvivi目录下提供。烧写2410-S linux 操作系统包括烧写

vivi,kernel,root三个步骤,除此我们还要烧写yaffs.tar,这四个文件在\Linux-V6.0\img目录中。

vivi ----linux系统的bootloader;

zImage----linux系统内核;

root.cramfs----根文件系统;

yaffs.tar----应用程序

5.5 JTAG烧写vivi:

把并口线插到pc机的并口,并把并口与JTAG相连,JTAG与开发板的14针JTA T口相连,打开2410-S. 把整个GIVEIO目录(在\Linux-V6.0\img \flashvivi目录下)拷贝到

C:\WINDOWS下,并把该目录下的giveio.sys文件拷贝到c:/windows/system32/drivers下。

在控制面板里,选添加硬件>下一步>选-是我已经连接了此硬件>下一步>选中-添加新的硬件设备>下一步>选中安装我手动从列表选择的硬件>下一步>选择-显示所有设备>

选择-从磁盘安装-浏览,指定驱动为C:\WINDOWS\GIVEIO\giveio.inf文件,点击确定,安装好驱动在d盘新建一目录bootloader,把sjf2410-s(在\Linux-V6.0\img

\flashvivi目录下)和要烧写的vivi拷贝到该目录下,在程序-附件-msdos下,进入该目录,运行sjf2410-s命令如下:sjf2410-s /f:vivi在此后出现的三次要求输入参数,第一次是让选择Flash,选0;第二次是选择jtag对flash的两种功能,也选0;第三次是让选择起始地址,选0此后就等待大约3-5分钟的烧写时间,当VIVI 烧写完毕后选择参数2,

退出烧写。

5.6烧写内核和根文件系统:

烧写内核zImage(kernel)

复位2410-s,进入VIVI。

vivi>load flash kernel x 回车

当出现Ready for downloading using xmodem...如图7

图7 图8

点击超级终端任务栏上“传送”下拉菜单中的“发送文件”,选择好镜像文件zImage,Enter,协议为Xmodem,点击“发送”,4分钟左右zImage烧写完毕;

烧写根文件系统(root)

vivi>load flash root x 回车

当出现Ready for downloading using xmodem...如图9 点击超级终端任务栏上“传送”下拉菜单中的“发送文件”,选择好镜像文件root.cramfs,协议为Xmodem,点击“发送" ,7分钟左右root.cramfs烧写完毕。到此,就可以正常启动linux系统了。

5.7 上传应用程序:

配置网络服务

用网线连接好2410-S的NIC-1口和PC机的网口,配置IP在同一网段,重启2410-s进入[/mnt/yaffs]下。

[/mnt/yaffs]ifconfig --查看IP

[/mnt/yaffs]ifconfig eth0 192.168.0.111 --配置eth0 ip

[/mnt/yaffs]inetd --启动网络服务

同时,pc的网口ip配置和2410-S的eth0的ip要在同一网段,以保证正常通讯。

上传“yaffs.tar.bz2”

打开如图ftp软件(在光盘中flashvivi目录中提供),点击右半部

工具栏中红色闪电图标,此时打开了“Quick Connect”,192.168.0.111,用户名:root,密码:无,连接进入ftp,右键左边列出文件中的“yaffs.tar.bz2”,点击TRANSFER,上传“yaffs.tar”到2410-S的/var下,3分钟左右上传完毕。/var是虚拟目录,所以这时2410-S不能掉电

图9 图10

[/mnt/yaffs]cd .. --转换到/mnt下

[/mnt]rm -rf yaffs/* --删除yaffs下文件

[/mnt]cd /var --转到var目录下

[/var]tar xjvf yaffs.tar.bz2r -C /mnt/yaffs --解压yaffs-2410s-1.0.tar到mnt/yaffs目录下需5 分钟左右. 解压缩结束后,应用程序都存放在/mnt/yaffs 下了。

FLASH格式化:

在进行恢复操作是一般不需要格式化FLASH,如果特殊性况下需要格式化可以按以下操作进行。打开超级终端,启动2410-S,进入vivi控制台,按照以下命令重新分区: vivi>bon part 0 128k 192k 1216k 4288k:m 64704k 这步操作同时进行了分区和格式化,0—128存放vivi,128—192存放VIVI控制台指令,192—1216存放kernel,1216—4288存放root,其余部分存放应用程序。

这时已格式化flash,千万不要重启2410-S,否则vivi将丢失。

vivi>load flash vivi x 回车

当出现Ready for downloading using xmodem...如图10 ,这时点击超级终端任务栏上“传送”下拉菜单中的“发送文件”,选择好镜像文件vivi,协议为Xmodem,点击“发送"通过串口重新烧录一遍,至此你的vivi就烧写到flash里了。此时掉电也不会丢失VIVI。

下面只需执行第2、3步便可恢复出场状态,如果格式化后掉电丢失VIVI,则要执行第1、2、3步来恢复。

六、设计总结和心得

6.1 设计总结

这次嵌入式课程设计,老师提供给我们两个设计题目“基于S3C2410A的游戏机设计”和“基于SKYEYE的嵌入式系统仿真”。我们选择完成第一个设计。基于ARM架构的嵌入式系统有以下特点:(1)是“类计算机系统”;(2)面向特定应用的;(3)更注重低功耗、低成本;(4)升级较慢;(5)具有固化的代码;(6)系统开发需要专用开发工具和环境;(7)软件需要RTOS开发平台;(8)开发人员应具备电路专业知识;(9)是开放性的知识集成系统。经过对实验手册和设计指导的研究,最终基本实现了设计要求:1、BootLoader 要能够实现便捷的人机交互界面。2、Linux内核具有基本的应用库。3、根文件系统采用CRAMFS格式。4、系统能够播放视频及音频文件。5、系统支持ftp服务器运行。6、VBA 能够模拟游戏的运行。

6.2 设计心得

这次课程设计,让我有机会对所学的嵌入式课程的理论知识有了更进一步的了解,并且把嵌入式开发流程的主要步骤又温习了一遍。在设计过程中遇到了一些看似不大却也很难解决设计问题,最后这些问题在老师和同学的帮助下还是解决了。我深知嵌入式是一门实践性非常强的课程与技术,我对嵌入式这方面的知识比较生疏,设计开发方面更是微乎其微,但通过这次课程设计,我明白了这门课程的重要性,如果以后有机会我还会去学习嵌入式方面的知识,完善自己的知识层面。

参考资料

1、嵌入式系统应用基础PDF

2、2410-S快速开始手册

3、2410-S实验指导书@2006[1].07.06

附录

主要软件:VMware Workstation,Redhat Enterprise Linux Advanced Server 4,U-Boot,SKYEYE,Linux2.6,BusyBox

北京科技大学 嵌入式课程设计报告

《嵌入式控制系统》课程设计报告 学院 专业班级 姓名 学号 指导教师 _

目录 摘要 (4)

Abstract (4) 引言 (5) 带中断LED数码管驱动程序设计 (6) 1.设计内容 (6) 1.1 基本功能 (6) 1.2 扩展功能 (6) 1.3创新功能 (6) 2.实验设备 (6) 3.设计功能块说明 (6) 4.设计原理 (7) 4.1 LED发光原理 (7) 4.2 八位LED显示器 (8) 5. 实验步骤 (8) 5.1 驱动程序加载 (8) 5.2 添加控件 (8) 5.3基本功能的实现 (9) 5.4 使用指南 (10) 6. 实验结果 (10) 6.1 基本功能实现结果 (10) 6.2 LED数码管清零功能实现结果 (11) 6.3 中断计数功能实现结果 (12) 6.4 频率设置功能实现结果 (13) 7. 心得体会 (14) 附录 (16)

摘要 通过嵌入式控制系统课程的学习并结合本次课程设计,了解嵌入式系统的开发方法和流程,熟悉Intel XScale硬件平台及其应用处理机的使用方法,熟悉Windows CE嵌入式系统的基本原理、概念。能针对Intel XScale硬件平台、应用需求自行定制、优化WinCE操作系统,并独立编写可在Intel XScale嵌入式设备上运行的应用程序。 本课程设计主要实现了LED数码管的驱动程序,中断计数功能、LED显示清零功能、LED 数字显示频率设置的功能。 关键字:WINCE 中断数码管驱动 Abstract Learning Embedded Control Systems and combining the curriculum design can help us understand the Embedded Control Sy stems’ development methods and processes, and be familiar with Intel XScale Hardware platform and its usage. Know well the basic principles and concepts about WINCE. Design and optimize Windows Embedded Compact and compose Application software program that can operate on the Intel XScale Hardware platform. The main achievement of the curriculum design are drivers for LED, Interrupt Count, clean the results of the LED and set up the display frequency of the LED. Key words: WINCE Interrupt Digital Driving

嵌入式系统课程设计题目

嵌入式系统课程设计题目 2016.5 共同要求:在LCD上显示设计题目、设计者名字(主设计者在前) 常用外设引脚: LED:LED0(上边)~LED3(下边)分别接PF5~PF9引脚,低电平点亮 按钮:K0(上边)~K3(下边)分别接PA0、PC13、PA8、PD3引脚,另一端均接地,按下为低电平。 蜂鸣器:蜂鸣器BEEP接PB10引脚,为有源蜂鸣器,PB10输出低电平发声 1、频率计设计 所谓频率计,就是每秒的计数值。使用2个通用定时器,一个计时,另一个对外部信号计数,在LCD 上显示出计数值和频率值。 2、用DAC设计低频信号发生器——硬键盘 使用DAC的模拟输出功能,模拟输出正弦波、方波、三角波信号。 用实验板上的4个按钮(K0~K3)控制输出:K3用于循环选择输出的信号类型,K0、K1、K2用于设置输出的频率,K2用于循环选择输出频率的某个位(个十百千万),K0按钮用于对选中的位加1,K1用于对选中的位减1。 在LCD上显示出频率值和输出信号的波形(曲线)。 3、用DAC设计低频信号发生器——软键盘 使用DAC的模拟输出功能,模拟输出正弦波、方波、三角波信号。 在LCD上设计4个触摸屏按钮(K0~K3)控制输出:K3用于循环选择输出的信号类型,K0、K1、K2用于设置输出的频率,K2用于循环选择输出频率的某个位(个十百千万),K0按钮用于对选中的位加1,K1用于对选中的位减1。 在LCD上显示出频率值和输出信号的波形(曲线)。 4、直流电机控制器设计——硬键盘 直流电机控制原理:理论上转速与电压成正比,用PWM控制则与占空比成正比;旋转方向与绕组电流的方向有关,改变绕组接电源的极性,便可改变电机的转向。 使用通用定时器的比较输出引脚,接直流电机的绕组,改变比较寄存器的值,即改变了占空比,便可调速(可以使用ARM实验箱上的直流电机(有驱动),只需把时钟信号和地线接到直流电机上即可)。 用4个按钮分别控制启动、停止、加速、减速;在LCD上显示出电机的转速等级。 5、直流电机控制器设计——软键盘

基于STM32和uC_OS-II的多任务设计-嵌入式系统课程设计报告

基于STM32和uC_OS-II的多任务设计-嵌入式系统课程设 计报告 NORTH CHINA UNIVERSITY OF SCIENCE AND TECHNOLOGY 嵌入式系统课程设计报告 学生姓名: 学号: 学院: 专业班级: 指导教师: 同组成员: 2016年 12 月 26 日 嵌入式系统课程设计报告 一、课程设计目的 本课程设计是在《嵌入式系统原理与应用》课程的基础上,通过软件编程及仿真调试的实践,进一步掌握嵌入式系统的原理和应用方法,是毕业设计前的一 次重要实践,为今后从事嵌入式系统相关工作岗位打下良好的基础。 二、设计题目及要求 2.1 设计题目: 基于STM32和uC/OS-II的多任务设计 2.2 功能实现:

使用uC/OS-II的任务管理函数和STM32库函数控制相应的寄存器,完成一个多任务设计。整个设计共有4个任务,驱动一个LED指示灯闪烁、由3个LED指示灯组成的流水灯、驱动蜂鸣器和利用swd方式进行printf输出。 2.3 设计要求: 理解和熟练使用KEIL软件、STM32寄存器、STM32库函数和uC/OS-II任务管理函数,用KEIL软件完成编程和调试,下载到开发板中实现4个设定的任务,并完成课程设计报告。 四个任务分别为: (1)驱动1个LED指示灯闪烁、 (2)由3个LED指示灯组成流水灯 (3)驱动蜂鸣器发出响声。 (4)利用swd方式进行printf输出。 三、设计原理说明 3.1 硬件说明 本次课程设计主要使用的是STM32 神舟 IV 号开发板为基础进行课程设计的,本节将详细介绍神舟IV号开发板的各部分硬件原理与实现。 (1)开发板资源图 - 1 - 嵌入式系统课程设计报告

嵌入式课程设计报告

嵌入式课程设计报告设计题目:电子密码锁

、 摘要 随着科技和人们的生活水平的提高,实现防盗的问题也变得尤为突出,传统机械锁构造简单,电子锁的保密性高,使用灵活性好。根据需要设计运用W90P170开发板,制作一款电子密码锁,密码锁通过键盘输入密码,通过在LCD的文字和图片显示当前密码锁的状态。实现设置密码,密码验证,错误密码自锁、图片显示的功能。 目录

一、选题意义及系统功能 (3) 二、硬件设计及描述 (4) 三、软件设计及描述 (5) 四、程序代码 (6) 五、课程设计体会 (11) 六、运行结果 (12) 七、心得体会 (12) 八、参考文献 (13) 九、附录 (13) 一、选题意义及功能描述 1、选题意义 电子密码锁是通过密码输入来控制电路或是芯片工作,从而控制机械的开关闭合、开锁的电子产品。随着科技提高和人们生活水平的提高,对电子密码锁的需求增加。电子密码做较传统的机械锁安全性能更高。 特点如下: (1)保密性好,编程量大,随机开锁的成功率几乎为零。

(2)密码可变,用户可以随时改变密码,防止密码被盗,同时也可以避免人员的更替而使锁的密级下降。 (3)误码输入保护,输入密码多次错误是,系统进行自锁。 (4)无活动零件,不会磨损,寿命长。 (5)使用灵活性好,无需佩戴钥匙,操作简单。 2、功能描述 基本功能: (1)从键盘输入任意6位数字作为密码,将这六位数字经过USI总线存储到Flash芯片中,设置密码完成。 (2)从键盘输入密码,比较键盘输入的密码与Flash中存储的密码是否相同。 (3)如果密码正确,则LED灯点亮;如果密码不正确,则LED灯闪烁,而且如果连续三次输入密码错误则系统锁定,不允许再次输入密码。 扩展功能: (1)首先显示“请输入密码:”,显示密码锁背景图片1。 (2)如果密码正确则显示“密码正确”,显示成功进入系统的背景图片2。 (3)如果密码不正确则显示“密码不正确,请重新输入:” (4)如果连续三次输入密码错误则显示“对不起,您已经连续三次输入密码错误,系统锁定”,显示图片1。

嵌入式系统设计课设报告分析解析

福州大学 《嵌入式系统设计课设》 报告书 题目:基于28027的虚拟系统 姓名: 学号: 学院:电气工程与自动化学院 专业:电气工程与自动化 年级: 起讫日期: 指导教师:

目录 1、课程设计目的 (1) 2、课程设计题目和实现目标 (1) 3、设计方案 (1) 4、程序流程图 (1) 5、程序代码 (1) 6、调试总结 (1) 7、设计心得体会 (1) 8、参考文献 (1)

1、课程设计目的 《嵌入式系统设计课设》是与《嵌入式系统设计》课程相配套的实践教学环节。《嵌入式系统设计》是一门实践性很强的专业基础课,通过课程设计,达到进一步理解嵌入式芯片的硬件、软件和综合应用方面的知识,培养实践能力和综合应用能力,开拓学习积极性、主动性,学会灵活运用已经学过的知识,并能不断接受新的知识。培养大胆发明创造的设计理念,为今后就业打下良好的基础。 通过课程设计,掌握以下知识和技能: 1.嵌入式应用系统的总体方案的设计; 2.嵌入式应用系统的硬件设计; 3.嵌入式应用系统的软件程序设计; 4.嵌入式开发系统的应用和调试能力 2、课程设计题目和实现目标 课程设计题目:基于28027的虚拟系统 任务要求: A、利用28027的片上温度传感器,检测当前温度; B、通过PWM过零中断作为温度检测A/D的触发,在PWM中断时 完成温度采样和下一周期PWM占空比的修正;PWM频率为1K; C、利用按键作为温度给定;温度给定变化从10度到40度。 D、当检测温度超过给定时,PWM占空比增减小(减小幅度自己设 定);当检测温度小于给定时,PWM占空比增大(增大幅度自己 设定); E、把PWM输出接到捕获口,利用捕获口测量当前PWM的占空比; F、把E测量的PWM占空比通过串口通信发送给上位机; 3、设计方案-----介绍系统实现方案和系统原理图 ①系统实现方案: 任务A:利用ADC模块通道A5获取当前环境温度。 任务B:PWM过零触发ADC模块,在PWM中断服务函数中,将当前环境温度和按键设定温度进行比较,并按照任务D的要求修订PWM占空比。

嵌入式实验心得体会

嵌入式实验心得体会 嵌入式实验心得体会是计算机专业应该具备的常用知识,以下这篇范文整理个人对嵌入式系统的认识,和进行操作之后的个人体会,对操作的疑难的反思。下面是这篇嵌入式实验心得体会 嵌入式实验心得体会 学期开始,我们开始学习《嵌入式系统及应用》,由于初次接触嵌入式系统,感觉蛮难的,所以收获不是很大,很多的概念都比较模糊,等到学期结束开始做嵌入式课程设计时,真是茫然无从下手,自,从拿到设计主题后,我就从像热锅像上的蚂蚁,一个字“急”。最后实在没有办“法,逼着自己去学法 习,查资料,总算对嵌入式有了资浅层理解。浅 嵌入式系统本本身是一个相对模糊的定义义,一个手持的mp3和一个一pc104的微型工业业控制计算机都可以认为是嵌入是式系统。总体来说,嵌入式系统是“用于控,制,监视或者辅制 助操作机器器和设备的装备”。一个典典型的桌面linux系统统包括3个主要的软件层---linux-内核、cc库和应用程序代码。内核核是唯一可以完全控制硬件的层,内核驱动程序代件表应用程表序与硬件之间进行行会话。内核之上是c 库,,负责把posixapii转换为内核可以识别的形形式,然后调用内核,从应应用程序向内核传递参数。应用程序依靠驱动内核。来完成特定的任务。来在了解了基础知识之后,我了开始进行上机操作,当然开,,其中遇到很多的难题,很多东西都是第一次接触很,又没有别,人在旁边指导操作,完全凭借自己去摸操索索练习。其中的困难可想而知。然而坚持就是胜利而,,牙一咬眼一闭坚持做下去去,而通过本次实验,我感觉收获还是蛮多的。可感能我对于嵌入能式的知识学习的还是不太多,但是这习之外的东西收获颇丰。之

嵌入式系统课程设计

《嵌入式系统设计与应用》课程设计 题目嵌入式系统的实践教学探讨 1.嵌入式系统设计与应用课程的内容概述 1.1 内容概述 本课程适用于计算机类专业,是一门重要的专业课程。它的任务是掌握嵌入式系统的基本概念;掌握嵌入式处理器 ARM 体系结构,包括ARM总体结构、存储器组织、系统控制模块和I/O外围控制模块;掌握ARM指令集和Thumb指令集;掌握ARM汇编语言和C语言编程方法;了解基于ARM 的开发调试方法。它的目的是了解和掌握嵌入式处理器的原理及其应用方法。 1)介绍嵌入式系统开发的基础知识,从嵌入式计算机的历史由来、嵌入式系统的定义、嵌入式系统的基本特点、嵌入式系统的分类及应 用、嵌入式系统软硬件各部分组成、嵌入式系统的开发流程、嵌入 式技术的发展趋势等方面进行了介绍,涉及到嵌入式系统开发的基 本内容,使学生系统地建立起的嵌入式系统整体概念。 2)对ARM技术进行全面论述,使学生对ARM技术有个全面的了解和掌握,建立起以ARM技术为基础的嵌入式系统应用和以ARM核为基础 的嵌入式芯片设计的技术基础。 3)ARM指令系统特点,ARM 指令系统,Thumb 指令系统,ARM 宏汇编,ARM 汇编语言程序设计,嵌入式 C 语言程序设计。 1.2实践教学探讨 在IEEE 计算机协会2004年6月发布的Computing Curricula Computer Engineering Report, Ironman Draf t 报告中把嵌入式系统课程列为计算机工程学科的领域之一,把软硬件协同设计列为高层次的选修课程。美国科罗拉多州立大学“嵌入式系统认证”课程目录包括实时嵌入式系统导论、嵌入式系统设计和嵌入式系统工程训练课程。美国华盛顿大学嵌入式系统课程名称是嵌入式系统

嵌入式系统课程设计

嵌入式系统课程设计 学号:1070410014030 班级:通信10 姓名:刘豆

嵌入式系统在智能交通中的应用摘要:介绍了嵌入式系统及其操作系统,并将其系统和通用计算机系统作了比较,总结了嵌入式系统产品在ITS(Intelligent Traffic system ),智能交通系统应用中的工作稳定性高,环境适应能力强和设备独立性三个特点,且结合嵌入式产品在ITS中应用的这几个特点,探讨了嵌入式系统在智能交通系统中应用研究。最后,展望嵌入式系统在ITS(智能交通系统)中的广泛应用。 关键词:嵌入式系统;嵌入式操作系;ITS;数字信号 中图分类号: Application of Embedded System in ITS Abstract: This article mainly introduce embedded system and its operation system , the embedded system are compared with general computer system. And this article summarizes three characteristics about embedded systems’ production applied to ITS: the high working stabilities, the strong ability for environment and the independency of equipments .Combining with the application research of embedded systems in ITS。At last, the author prospects that embedded systems are used widely in ITS in the whole nation. Keywords; embedded system; embedded operational systems ; ITS ; digital signal 嵌入式系统如今在实际生活中有巨大应用,观察身边不难发现电子产品、智能家居等大多用嵌入式系统来实现。这篇论文举一个应用实例,即智能交通系统。一个智能交通系统(ITS)主要由交通信息采集、交通状况监视、交通控制、信息发布和通信5大子系统组成。各种信息都是ITS的运行基础,而以嵌入式为主的交通管理系统就像人体内的神经系统一样在ITS 中起至关重要的作用。嵌入式系统应用在测速雷达、(返回数字式速度值)运输车队遥控指挥系统、车辆导航系统等方面,在这些应用系统中能对交通数据进行获取、存储、管理、传输、分析和显示,以提供交通管理者或决策者对交通状况现状进行决策和研究。 1.嵌入式系统与嵌入式操作系统 1.1嵌入式系统 通俗来讲,嵌入式系统是带有操作系统的单片机系统;主要由嵌入式处理器、相关支撑硬件和嵌入式软件系统组。他的框架可分为5个部分:处理器、内存、输入/输出、操作系统与应用软件(如图1所示)。嵌入式软件包括与硬件相关的底层软件、操作系统、图形界面、通讯协议、数据库系统、标准化浏览器和应用软件等。总体看来,嵌入式系统具有便利灵活、性能价格比高、嵌入性强等特点,可以嵌入到现有任何信息家电和工业控制系统中。软件角度来看,嵌入式系统具有不可修改性,系统所需配置要求较低&系统专业性和实时性较强等特点。 1.2 嵌入式操作系统 对于目前发展迅速的信息产品来说,其最关键的核心技术就是嵌入式操作系统。嵌入式操作系统EOS(Embedded Operating System)是一种支持嵌入式系统应用的操作系统软件。嵌入式操作系统具有通用操作系统的基本特点,如能够有效管理越来越复杂的系统资源;能够把硬件虚拟化,使得开发人员从繁忙的驱动程序移植和维护中解脱出来;能够提供库函数、驱动程序、工具集以及应用程序;另外,嵌入式操作系统在系统实时高效性、硬件的相关依赖性、软件固态化以及应用的专用性等方面具有较为突出的特点。

arm嵌入式linux安装课程设计心得

arm嵌入式linux安装课程设计心得 篇一:116709047陈俊松嵌入式Linux课程设计 福建农林大学金山学院电子信息类课程设计 课程名称:设计题目:姓名: 系: 专业:年级:学号:指导教师:职称: 嵌入式linux应用开发课程设计嵌入式linux Web服务器的设计 陈俊松信息与机电工程系电子信息工程2011级116709047 朱仕浪讲师 2014年11 月24 日 福建农林大学金山学院电子信息类 课程设计结果评定 目录 设计的目的

-------------------------------------------------------- 1 设计要求---------------------------------------------------------- 1 主要仪器设备(软硬件环境)---------------------------------------- 1 设计内容---------------------------------------------------------- 1 设计原理---------------------------------------------------- 1 总体方案设计------------------------------------------------- 3 程序设计---------------------------------------------------- 3 程序的调试和运行结果---------------------------------------- 7 总结-------------------------------------------------------------- 8 参考文献---------------------------------------------------------- 9 嵌入式linux Web服务器的设计 1. 设计的目的

嵌入式系统课程设计报告

湖北民族学院 信息工程学院 课程设计报告书 题目 :基于A RM的数字式万年历 课程:嵌入式系统课程设计 专业:电子信息科学与技术 班级: 03114411 学号: 031441119 学生姓名:田紫龙 指导教师:易金桥 2017年6 月20 日

信息工程学院课程设计任务书 学号031441119学生姓名田紫龙专业(班级)0314411 设计题目基于 ARM 的数字式万年历 1.能测量温度并且实时显示; 2.具有时间显示功能,能够显示年月日,时分秒,并且可以手动调节时间。 设 3. 具有 12 小时制和 24 小时制切换功能。 计 技 术 参 数 对年、月、日、时、分、秒进行计时,还具有闰年补偿等多种功能。温度采集 选用 DS18B20芯片,万年历采用直观的数字显示,数据显示采用1602 液晶显 示模块,可以在LCD1602 上同时显示年、月、日、周日、时、分、秒,还具有 设 时间校准整点灯光提醒等功能。制作仿真和实物。 计 要 求 [1]苏平 . 单片机的原理与接口技术 [M]. 北京 : 电子工业出版社, 2006,1-113. [2]王忠民 . 微型计算机原理 [M]. 西安 : 西安科技大学出版社, 2003,15-55. [3]左金生 . 电子与模拟电子技术 [M]. 北京 : 电子工业出版社, 2004,105-131. [4]新编单片机原理与应用(第二版). 西安电子科技大学出版社, 2007.2 [5]张萌 . 单片机应用系统开发综合实例 [M]. 北京:清华大学出版社, 2007.7 [6] 朱思荣. 51 单片机实现公历与农历、星期的转换[Z].当当电子网 [7]李广弟 . 单片机原理及应用 [M] 北京航空航天大学出版社 ,2004 年 参[8] 王越明 . 电子万年历的设计 [J]. 黑龙江科技信息, 2004 年 考 资 料 2017年 6 月 20 日

广东海洋大学嵌入式系统课程设计

《嵌入式系统》设计报告学生姓名 Adao (学号) 所在学院数学与计算机学院 所在班级计科1141 指导教师 成绩

目录 1.课程设计目的 (2) 2.系统分析与设计 (2) 3.系统结构图 (2) 4.实现过程 (3) 5.实验效果 (5) 6.代码分析 (6) 7.系统测试出现的问题和解决的方案 (7) 8.系统优缺点 (7) 9.心得体会 (8) 参考文献 (8)

双按键控制流水灯系统开发 1.课程设计目的: 本次课程设计目的主要是对之前所学习的STM32的某个实验进行更深入的学习与了解,弄懂引脚,端口等相关的配置,对实验原理和具体实现有一定的理解,能做到自己通过原理图和使用库函数等把功能实现出来。我选择的是EXTI-外部中断实验并加以整合,具有一定实用功能的系统,可以对外提供服务。 2.系统分析与设计: 本课程设计所定义的系统主要功能为,通过两个按键KEY1(PA0)、KEY2(PC13)可以实现对流水灯进行同步控制,即一个开关控制产生的灯的状态可以被另一个开关去改变,按键控制需要对两个按键的端口,引脚等进行相关配置,并在两个引脚的中断服务程序中完成对流水灯状态同步控制的操作。本还想通过使用SysTick(系统滴答定时器)功能对流水灯进行精确定时,但由于时间比较匆促,最终没有实现。 3.系统结构图: 图3-1

4.实现过程: 1、GPIO的输入模式有上拉输入模式、下拉输入模式、浮空输入模式和模拟输入模式。GPIO 中的每个引脚可以通过配置端口配置寄存器来配置它的模式。每个引脚的模式由寄存器的4个位控制。 上拉/下拉输入模式:1000 浮空输入模式:0100 模拟输入模式:0000 2、STM32的所有GPIO都可以用作外部中断源的输入端。STM32的中断由中断控制器NVIC 处理。STM32的中断向量具有两个属性,一个为抢占属性,另一个为响应属性,其属性编号越小,表面它的优先级别越高。抢占属性会出现嵌套中断。 3、编写NVIC_Configuration()函数配置NVIC控制器的函数。 static void NVIC_Configuration(uint8_t IRQ) { NVIC_InitTypeDef NVIC_InitStructure; //将NVIC中断优先级分组设置为第1组 NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1); /* 配置中断源 */ NVIC_InitStructure.NVIC_IRQChannel = IRQ;//设置中断线 NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;//设置抢占优先级 NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;//设置响应优先级 NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; NVIC_Init(&NVIC_InitStructure); //对NVIC中断控制器进行初始化 } 4、调用GPIO_EXTILineConfig()函数把GPIOA、Pin0和GDIOC、PIN13设置为EXTI输入线。 GPIO_EXTILineConfig(GPIO_PortSourceGPIOA, GPIO_PinSource0); GPIO_EXTILineConfig(GPIO_PortSourceGPIOC, GPIO_PinSource13); 5、填写EXTI的初始化结构体,然后调用EXTI_Init()把EXTI初始化结构体的参数写入寄存器。编写EXTI_PA0_Config()函数完成各种需要的初始化。 void EXTI_Pxy_Config(void) { GPIO_InitTypeDef GPIO_InitStructure; EXTI_InitTypeDef EXTI_InitStructure; /* config the extiline clock and AFIO clock */

嵌入式课设

河海大学计算机及信息工程学院(常州)课程设计报告 题目基于uCOSII的LCD驱动 专业、学号 授课班号 学生姓名 指导教师 完成时间2013,06,25

课程设计(报告)任务书 (理工科类) Ⅰ、课程设计(报告)题目: 基于uCOSII的LCD驱动 Ⅱ、课程设计(论文)工作内容 一、课程设计目标 1、培养综合运用知识和独立开展实践创新的能力; 2、掌握基于uCOSII的LCD驱动编写开发过程; 3、掌握在UCOSII操作系统下添加LCD驱动程序的基本方法; 4、使用做好的驱动程序做一些简单的应用实例。 二、研究方法及手段应用 1、将任务分成若干模块,查阅相关论文资料; 2、分模块调试和完成任务。 三、课程设计预期效果 1、完成实验环境搭建; 2、在移植好的uCOSII工程中添加LCD的驱动程序; 3、学习在uCOSII下,LCD应用任务的简单编程实例,实现实验箱的CPU板上的D7、D8灯闪烁的同时,在LCD屏上也进行D7、D8灯的模拟闪烁。 4、在完成要求任务的情况下,添加其他模块。 学生姓名:彭华亮专业年级:自动化10级

目录 前言 ............................................ 错误!未定义书签。第一章课题目标及总体方案.. (3) 第二章系统设计 (3) 2.1系统及工具简介 (3) 2.1.1 EL-ARM-830实验箱 (3) 2.1.2 ADS v1.2集成开发环境 (4) 2.2系统功能实现 (4) 2.2.1 uCOSII内核移植 (4) 2.2.2 LCD驱动程序的编写 (6) 2.2.3 uCOSII操作系统下添加LCD驱动程序 (7) 2.2.4 测试程序的编写 (8) 第三章实验(测试)结果及讨论 (9) 3.1测试步骤 (9) 3.2注意事项 (9) 3.3测试结果 (10) 心得体会 (10) 参考文献 (12) 附录 (13)

09嵌入式网络协议及其应用开发课程设计报告1

课程设计说明书 学生信息 系别计算机工程学院专业计算机科学与技术 班级姓名学号 课程设计信息 课程名称嵌入式软件开发课程设计 课程设计题目基于QT的直流电机设计 课程设计时间学期第 1~16 周 小组情况指导教师 批改情况 成绩评阅教师批改时间2012年5月 6 日2011-2012学年第2 学期

目录 1.课程设计内容 (3) 2.课程设计目的 (3) 3.背景知识 (3) 4.工具/准备工作 (3) 5.设计步骤与方法 (3) 5.1.步骤 1:设计直流电机控制界面 (3) 5.1.1. 步骤1.1:添加控件事件代码 (4) 5.2. 步骤2:编译程序 (5) 5.2.1. 步骤2.1:redhat主机下编译程序 (5) 5.2.2. 步骤2.2:在ARM板下测试直流电机界面–嵌入式下运行 (6) 6.软件测试截图 (7) 7.设计结果及分析 (7) 8.设计结论 (7) 9.问题及心得体会 (7) 10.对本设计过程及方法、手段的改进建议 (8) 11.任务分配 (8) 12.参考文献【1】C++ GUI Qt4编程(第2版) 兰切特 (Jasmin Blanchette)、萨默菲尔德(Mark Summerfield)、闫锋欣、曾泉人子工业出版社2008 (8) 13.课程设计评价(教师) (8)

课程设计报告 1. 课程设计内容 本课程设计的内容是设计一个基于QT的直流电机设计,支持电机正反转以及设置参数以控制转速。 2. 课程设计目的 考察自己对课程的掌握程度,以及自己实际的动手能力,编程能力。 3. 背景知识 1.嵌入式linux下驱动程序的基本编译方法 2.掌握直流电机控制基本原理 3.QT软件的应用 4. 工具/准备工作 硬件: 安装有QT的PC机一台 软件: WindowsXP操作系统 VMware Workstation 7.0 Red Hat QT 4.6.3 5. 设计步骤与方法 5.1.步骤 1:设计直流电机控制界面 利用QT Creator,ui文件来编写一个良好的用户交互界面:

嵌入式系统课程设计选题要求及题目

嵌入式系统课程设计—选题要求及课题 1、嵌入式系统课程设计时长两星期,要求学生分组进行课程设计,每组学生人数为2~3人(可在不超过3人的范围内由指导教师具体规定),报告雷同超过60%者,成绩都记不及格! 2、学生需要在附后的设计题目总表中进行选题,原则上需要在6月17号前完成选题,并开始课程设计工作! 附:嵌入式系统课程设计题目 ARM-Linux 嵌入式系统在农业大棚中的应用(温度、湿度和二氧化碳浓度是影响棚栽农作物生长的3 大要素。为了实现农业大棚中这3 种要素数据的远程实时采集,引入了当前嵌入式应用中较为成熟的ARM9 微处理器和Linux 嵌入式操作系统技术, 采用温度传感器PH100TMPA、湿度传感器HM1500 和二氧化碳浓度传感器NAP221A ,设计一种基于TCP/ IP 协议的嵌入式远程实时数据采集系统方案。从硬件设计和软件实现2 方面对该系统进行具 体设计。) 1.ARM系统在LED显示屏中的应用(利用ARM系统控制彩色LED显示屏) 2.ARM 嵌入式处理器在智能仪器中的应用(设计一种基于ARM 嵌入式处理器系统的智 能仪器的硬件和软件设计方案, 并结合uc/o s2II或者Linux嵌入式实时操作系统, 给出一套完整的任务调度和管理的方法, 最后用实例说明) 3.ARM系统在汽车制动性能测试系统中的应用(采用ARM系统构建一个路试法的汽车制 动性能测试系统) 4.ARM 嵌入式控制器在印染设备监控中的应用(针对拉幅热定型机,设计一种基于485 总 线的分布式监控系统。用ARM 嵌入式控制器实现主、从电机的同步运行和烘房温度的控制;在PC 机上用VB6. 0 设计转速和温度的监控画面;实现ARM、变频器和PC 机之间的数据通信。) 5.基于ARM系统的公交车多功能终端的设计(完成电子收费、报站、GPS定位等功能) 6.基于ARM9的双CAN总线通信系统的设计(设计一种基于ARM9内核微处理器的双路 CAN总线通信系统。完成系统的总体结构、部分硬件的设计,系统嵌入式软件的设计,包括启动引导代码U - boot、嵌入式L inux - 214118操作系统内核、文件系统以及用户应用管理软件四个部分。) 7.基于ARM9 和Linux 的嵌入式打印终端系统(嵌入式平台上的打印终端的外围电路连 接设计、嵌入式Linux 的打印机驱动程序开发和应用程序的开发) 8.基于ARM 的车载GPS 终端软硬件的研究(重点研究基于ARM 的导航系统的软硬件设

嵌入式系统课程设计 跑马灯报告

嵌入式系统 课程设计报告 学部 专业 学号 姓名 指导教师 日期 一、实验内容

设计msp430单片机程序并焊接电路板,利用msp430单片机芯片实现对跑马灯、按键识别及数码显示这三大模块的控制 二、实验目的 1.熟悉电路原理图,了解单片机芯片与各大模块间的控制关系 2.增强看图和动手设计能力,为将来从事这个专业及相关知识奠定基础 3.在焊接的同时,理解源程序是如何实现相应功能的 三、实验设备及器材清单 实验设备:电烙铁、烙铁架、尖嘴钳、斜口钳、镊子、万用表等 器材清单: 模块元器件名称单位(个/块) 电源 78051 AMS11171 电容10V100u3 二极管IN40071 104电容2 晶振32768Hz1 33电容2 8MHz2跑马灯发光二极管8 100欧电阻8 74LS5731 104电容2 键盘按键8 10K电阻9 104电容3 103电容1 HD74HC212数码显示7段数码显示(共阴极)1 24脚插座1 74HC1641 14脚插座1复位电路二极管IN40071 电容10V100u1 按键1 10K电阻1 14脚下载口1电路板1 MSP430F149芯片及插座1 四、硬件电路框图

五、程序清单 跑马灯程序#include #define uchar unsigned char #define uint unsigned int int main( void ) { void delay( ); WDTCTL = WDTPW + WDTHOLD; unsigned char i=0,j=0; P2DIR=0XFF; P2SEL=0X00; while(1) { for(i=0;i<10;i++) { P2OUT=0XFF; delay(50); P2OUT=0X00; delay(50); } for(j=0;j<10;j++) { P2OUT=0X55;

嵌入式操作系统课程设计报告

嵌入式系统设计报告 系(院):计算机科学学院 专业班级:计科11201 姓名:微尘 学号: 201203300 指导教师:王剑 设计时间:2015.6.22 - 2015.7.3 设计地点:4教硬件实验室

目录 一、课程设计的目的 (2) 1.1设计目的 (2) 1.2任务介绍 (2) 二、实验及开发环境 (3) 2.1 实验室环境 (3) 2.2 个人计算机课后开发环境 (3) 三、总体设计 (3) 四、详细设计 (4) 4.1 Windows CE系统编译与安装 (4) 4.2 编程驱动LED和数码管显示正确的信息 (7) 4.3 编程驱动电机运转 (8) 4.4 个人设计小程序 (10) 五、课程设计小结 (17) 5.1 设计小结 (17)

一、课程设计的目的 1.1设计目的 本次课程设计的目的是了解嵌入式系统、嵌入式操作系统,掌握基于嵌入式系统的应用开发基本知识。了解嵌入式操作系统Windows CE的特点,Windows CE的主要模块及各自的功能。掌握嵌入式操作系统Windows CE 的配置、编译、移植方法。了解Visual Studio .NET开发环境,掌握基于Windows CE平台的应用程序设计方法。 1.2任务介绍 以下任务需基于实验室的XSBase270开发平台完成 1.嵌入式操作系统Windows CE平台的搭建 使用Platform Builder编译出自己的Windows CE 5.0操作系统,然后根据实验提供的EBOOT引导程序将编译出的Windows CE 5.0系统安装(刷入)到实验平台。 2.IO接口控制-七段数码管的LED显示控制程序 了解Windows CE下I/O访问机制的原理。了解LED和七段数码管的显示和控制原理。掌握Windows CE下访问硬件I/O寄存器的方法。 3.IO接口控制-点击控制设计 了解Window CE下I/O访问机制和原理。掌握Windows CE下访问硬件I/O寄存器的方法,以及使用Visual Studio .NET对硬件设备编程的一般方法。 4.编写实用小程序并在指定的Windows CE平台上运行调试(选做) 这一部分我选择的是在Windows CE平台上使用Visual Studio 2005基于.NET利用C#语言编写一个简易计算器小程序。从而体验对嵌入式设备编程与普通PC编程的区别。

嵌入式系统课程设计报告书

成绩学生课程实践能力考查 题目:温度按键设定、显示、报警系统设计 课程名称:嵌入式系统开发专业班级: 学生学号: 学生姓名: 考查地点: 考查时长: 4小时 所属院部: 指导教师: 2017 — 2018学年第 2 学期 金陵科技学院教务

2017-2018学年第2学期《嵌入式系统开发》实践能力考核 任课教师签名: 日期: 温度按键设定、显示、报警系统设计 要求: 1、读取DS18B20温度,在液晶上实时显示,并显示上、下限,初始值上限32,下限26。 2、通过按键可以设置环境温度的上限与下限, WK_UP键按下调节上限,再按下调节下限,再按下调节上限…… KEY1按下加1; KEY0按下减1, 根据上限与下限判断当前温度有没有超出范围。 3、当温度超过上限,LED1隔1秒亮一次。超过下限,LED2隔1秒亮一次。(也可自定义报警方式) 4、串口波特率一律用9600bps。 液晶显示的信息: STM32 test name: xxxxxxxxx Maximum is 32C,Minimum is 26 C The temperature is 29 C,now! (xxxxx就是自己的名字拼音) 目录: 第一章.系统要求 1、1设计要求

1、2设计方案 第二章.硬件设计 2、1开发板原理图 2、2 DS18B20模块 2、3按键模块 2、4 LCD显示模块 2、5 LED 模块 第三章.软件设计 3、1程序流程图 3、2程序部分代码 3、2、1主函数、main、c 3、2、2 LED 函数led、c 3、2、3温度代码 s18b20、c 3、2、4键盘代码key、c 第四章、实物效果图 第五章、课程总结 第一章.设计要求及方案 1、1设计要求 1、读取DS18B20温度,在液晶上实时显示,并显示上、下限,初始值上限32,下限26。 2、通过按键可以设置环境温度的上限与下限, WK_UP键按下调节上限,再按下调节下限,再按下调节上限…… KEY1按下加1; KEY0按下减1, 根据上限与下限判断当前温度有没有超出范围。

嵌入式微处理器结构与应用课程设计报告

《嵌入式微处理器结构与应用》 课程设计报告 题目:电子菜单 一、课程设计的目的和主要内容: 目的:《嵌入式微处理器结构与应用》课程设计是软件工程本科专业的专业实践课程,结合在课程中学到的嵌入式系统的开发和调试方法,对学生在嵌入式系统设计和应用开发的基本技能方面进行综合的检验和实践。是学生在学习完《嵌入式微处理器结构与应用》课程之后的一个重要的实践环节。要求学生在教师的指导下,综合运用已学过的嵌入式微处理器相关的各种知识和技能,以小组协作的方式完成一项较为完整、并具有一定难度的课程设计任务。使学生总结本课程的主要知识点,提高学生的实际动手能力,为学生今后进一步学习和从事嵌入式系统相关的研究与开发打下坚实的基础。 内容:基于实时操作系统,学会复杂应用程序的基本开发方法,结合课程实验学到的知识,编写一个能综合应用液晶屏、触摸屏、键盘并结合简单文件系统API函数的界面应用。要求具备基本的三个界面:初始界面、点菜界面、结束界面,基本实现点菜的全过程。 二、基本的设计思路或程序流程图描述: 基于MVC勺设计模式,将程序分成三大独立的部分:模型(逻辑)部分、视图部分、控制部分。这三大部分的关系如下:

程序总流程图:

百度文库-让每个人平等地提升自我 初始化程序, 打开启动画面线程 关闭线程 点菜结束按钮 判断消息 类型 判断操 作类型 判断单 击内容 判断控 件类型 判断该菜单条目 的 状态,进行相应的逻 辑和视图更新 本人负责: 打开线程 界面控件 翻页按钮 加载菜单数据 显示启动动 画 键盘消息 显示点菜结束 画面和总价 程序 菜单条目 进行菜单的上下 滚动 关闭按钮 单击 拉动 重置逻辑数 据,显示最初 的点菜界面 关闭启动画面线程, 显示点菜画面 显示程序结束画 面 进行菜单的翻页 等待系统消息 触摸屏消息 、视图部分:

嵌入式系统课程设计报告材料

嵌入式系统课程设计报告 课程名称:嵌入式系统课程设计 项目名称:基于ARM实现MP3音乐盒 专业:电子科学与技术

一、设计容 基本功能:预存四首歌曲,实现循环播放; 每个按键对应一首歌曲。 拓展功能:通过按键简单演奏音乐,类似钢琴; 实现两个模式的切换,切歌模式和音量加减模式。 二、设计思路 基础功能: 将音频数据存储在SD卡中,使用FATFS文件系统进行数据的读写,通过SPI2总线将数据传到核。核再将数据通过SPI1总线传送到音频解码模块VS1053,输入的数据(即比特流数据)被解码后送到DAC发出声音。 将音乐存储在SD卡,通过文件的地址来判别将要播放哪一首音乐,通过地址的递增和循环来实现音乐的自动循环播放。按键对曲目的控制,可通过键盘扫描函数,判断哪一个键被按下,使键盘扫描函数返回不同的返回值,实现对文件地址的控制。将此返回值设置为全局变量,可实现在音乐播放中曲目的切换。 另外,我们还利用解码模块实现对音量的控制,使用按键控制音量的提高或降低。使用SPI1总线将TFT显示屏连接到核,显示按键功能、当前曲目、当前模式等信息。 由于开发板只有5个按键,按键数量有限,需要对按键实现曲目切换和音量功能的复用。我们小组设置了两种模式,切歌模式和音量模式,并定义左键为模式切换键,实现不同模式的选择和按键的复用。 拓展功能: 基本思路是通过定时器中断来产生一定频率的50%空占比的脉宽调制波,用此脉宽调制波激励扬声器,从而使扬声器发出一定频率的声音。 所以只要将不同按键的中断子程序设置为对定时器进行不同数据的配置,即可实现不同按键与不同扬声器发生频率的对应。 然后使一个按键的按下与松开均进入中断,且分别实现开启(扬声器发声)与关闭(扬声器不发声)定时器的功能,从而使课题的附加功能表现地更自然。 三、硬件配置 基础功能: (1)SD卡:存储音频数据

相关文档
最新文档