




已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
河海大学物联网工程学院(常州)课程设计报告题目基于UCOSII的LCD驱动专业学号通信工程学生姓名指导教师完成时间2013622课程设计(报告)任务书(理工科类)、课程设计(报告)题目基于UCOSII的LCD驱动、课程设计(论文)工作内容一、课程设计目标嵌入式系统是一门技术性、应用性、综合性很强的学科,实验课教学是它的一个极为重要的环节。不论理论学习还是实际应用,都离不开实验课教学。嵌入式系统项目设计的目的就是让同学们在理论学习的基础上,通过完成一个以ARM为核心的综合功能的小系统的设计,使学生不但能够将课堂上学到的理论知识与实际应用结合起来,而且能够对编译系统、仿真环境、嵌入式操作系统、GUI软件等方面的知识进一步加深认识,同时在相关仪器设备的使用技能等方面得到较全面的锻炼和提高,为今后能够独立进行某些嵌入式应用系统的开发设计工作打下一定的基础。二、研究方法及手段应用1、将任务分成若干模块,查阅相关论文资料,分模块调试和完成任务;2、学会使用ADS软件,并且能够在UCOSII操作系统下调用程序,在实验箱上模拟出来。3、通过小组合作的方式,将任务进行分工,对相应的模块进行资料查阅和改进。三、课程设计预期效果1、完成实验环境搭建;2、在试验箱上将预期的图形和功能显示出来。目录前言2第一章系统设计3第一节课题目标及总体方案3第二节UCOSII系统简介4第二章实验(测试)结果及讨论4第三章结论6心得体会7参考文献8附录8一、源程序8二、其他2前言随着技术的进步,嵌入式系统设计及应用在近年来对人类生活产生了巨大的影响,并将继续改变人们未来的生活方式。研究嵌入式系统,一个必不可少的基础工作就是实现嵌入式系统在相关处理器平台上的移植。本次课程设计基于目前应用非常广泛的ARM处理器体系结构,对UCOSII嵌入式实时操作系统内核的移植做了分析和研究,并在此基础上实现了简单应用程序的操作。UCOSII是一种可移植的,可植入ROM的,可裁剪的,抢占式的,实时多任务操作系统内核。它被广泛应用于微处理器、微控制器和数字信号处理器。免费公开源代码、结构小巧、具有可剥夺实时内核的实时操作系统,是专门为计算机的嵌入式应用设计的,在具体应用中稳定可靠,并且支持UIPTCP/IP协议栈、UCGUI等,可扩展性强,功能强大。所谓移植,就是使一个实时内核在某个微处理器上运行。UCOSII主要是C语言编写的,但是还需要C语言和汇编语言写出具体处理器相关的代码,因为访问处理器的某些程序和语言必须用汇编语言来进行编写。移植可以分为两个部分,一部分与ARM有关,另一部分与移植原理有关。3第一章系统设计第一节课题目标及总体方案ARM处理器是最常见的嵌入式处理器之一,它以低功耗、低成本和高性能而深受业界的青睐。而且ARM是目前产业中资源最为广泛的嵌入式处理器,基于广大的ARM合作伙伴计划,开发者可以在这个联盟里寻求到各种自己意想不到的帮助。目前在业内广为人知的ARM处理器主要有ARM7系列和ARM9系列,同时为了关注今后嵌入式系统的发展,也有必要了解一下最新的ARM11和ARMCOTEX系列处理器。本次课程设计首先了解UCOSII内核的主要结构,然后将UCOSII移植到三星的S3C44B0XARM7TDMI处理器上,接着编写多任务应用程序画出一个“米老鼠”的图形,随着实验板上的“D7”和“D8”两个指示灯的跳动,LCD图形的眼睛会向左看和向右看,并且在LCD板上显示出相应的字符串。4第二节UCOSII系统简介UC/OSII作为一个嵌入式实时操作系统,作者是JEANJLABROSSE。自1992年以来,因其源代码的完全公开和优越性能,已为众多的爱好者和开发人员所了解并得到了广泛应用。UC/OSII是一个占先式内核,和UC、OS的内核一样,只是提供了更多的功能。执行时间可确定(即函数的调用与服务的时间是可知的,不依赖于应用程序的大小),目前最多支持64个任务(8个为系统保留),总是执行处于就绪态的优先级最高的任务。另外,2007年7月,UC/OSII在一个航空项目中得到了美国联邦航空管理局对用于商用的飞机的、符合RTCADO178B标准的认证。此外UC/OSII还具有可移植性、可固化、可裁剪、可剥夺性、多任务、可确定性、任务栈、系统服务、中断管理、稳定性和可靠性等特点。其优异的性能使得它被很多工程应用人员移植到了不同型号、性能各异的嵌入式控制器(MCU)及嵌入式微处理器(MPU)中。第二章实验(测试)结果及讨论第一节UCOSII的内核移植所谓移植,就是使一个实时内核能在某个微处理器或微控制器上运行。UC/OSII在ARM处理器上的移植,需要完成的工作包括修改三个和体系结构相关的文件。这三个文件是OS_CPU_CC、OS_CPUH、OS_CPU_AS。它们的作用是把C/OSII操作系统紧紧的附着在ARM处理器上,实现软5件与硬件的协同。1OS_CPUH文件中主要包括把编译器类型数据重定义为UC/OSII内核所用的数据类型;编写相应ADS或SDT编译器的开关中断的函数;定义单个堆栈的数据宽度;定义微处理器的堆栈的增长方向。2OS_CPU_CC文件中主要包括10个函数,其中一个是任务堆栈初始化函数,其他九个为操作系统扩展的钩子函数。在OSTASKCREATE和OSTASKCREATEEXT中,通过调用任务堆栈初始化函数OSTASKSTKINIT来初始化任务的堆栈结构,初始完毕后,堆栈看起来就像刚发生过中断并将所有的寄存器内容保存到该任务堆栈中的情形一样。3OS_CPU_AS文件中主要包括5个函数OSSTARTHIGHRDY负责启动最高优先级任务;OSINTCTXSW负责中断中的任务切换;OSCTXSW负责任务切换;OSCPUSAVESR负责保存中断前的寄存器状态;OSCPURESTORESR负责中断完成后,恢复中断前的状态。主体移植过程1设置与处理器及编译器相关的代码OS_CPUH;2用C语言实现与处理器任务相关的函数OS_CPU_CC;3处理器相关部分汇编实现。6第二节测试结果与讨论项目结构及源文件结构组成的基本框架如下7第三章结论心得体会经过一个星期的调试,课设终于有了一个比较理想的结果,我们小组在经历了数次的失败后,最终让程序正常运行了。由于我们之前嵌入式做过几次实验,所以在做课设的一开始就有了明确的思路和规划,做起来也得心应手。我感觉课上学到的很多东西都是有用的,尤其体现在这次的课设上。课设不但丰富了,我们的知识,让我们课上学得能够在实践中运用,同时也锻炼了我们的动手水平,我感觉收获颇丰。8参考文献1王勇,何立民嵌入式系统原理与设计杭州浙江大学大学出版社,20072王田苗嵌入式系统设计与实例开发M北京清华大学出版社,20031103杨宗德UCOSII标准教程北京人民邮电出版社,20074谢自美,电子线路设计、实验、测试,华中理工大学出版社,2003。附录源程序INCLUDE“INCCONFIGH“DEFINESTACKSIZE256OS_STK_DATASTK/任务控制块EXTERNGUI_FONTCHINESE_FONT12/外部定义过的字体EXTERNGUI_FONTCHINESE_FONT16EXTERNGUI_FONTGUI_FONT8X16/调用ASCII码的源文件OS_EVENTSEND_D7LIGHT_SEM/创建两个信号量OS_EVENTSEND_LCD_SEMOS_EVENTKEY_MBOX/分配各任务的堆栈容量/OS_STKSTACK_TASK_1STACKSIZE/起始任务TASK_1OS_STKSTACK_TASK_2STACKSIZE3/GUI绘图任务TASK_2/函数名称TASK_2VOIDPDATA函数说明GUI任务,优先级为6输入参数PDATA输出参数无/VOIDTASK_2VOIDPDATA9INT8UERR,FLAG0SET_COLORGUI_BLUE/设定颜色的上层函数FILL_RECT0,0,319,239/填充矩形函数SET_COLORGUI_WHITEFILL_RECT0,0,319,20/X0X1,Y0Y1FILL_RECT0,0,20,239FILL_RECT0,219,319,239FILL_RECT299,0,319,239DRAW_HLINE30,0,319/绘制水平线APISET_COLORGUI_YELLOWSET_FONTDISP_STRINGCN_START“人脸图案模拟闪烁实验“CN_END,85,8/显示字符串的APISET_COLORGUI_BLACKFILL_CIRCLE120,85,35FILL_CIRCLE200,85,35SET_COLORGUI_YELLOWFILL_CIRCLE160,140,70/填充圆函数SET_COLORGUI_BLUEFILL_CIRCLE130,120,20FILL_CIRCLE190,120,20SET_COLORGUI_MAGENTAFILL_CIRCLE160,145,8SET_COLORGUI_REDFILL_CIRCLE160,165,15SET_COLORGUI_YELLOWFILL_RECT144,149,176,170/填充矩形函数SET_COLORGUI_WHITE/设定背景颜色APISET_FONT/设定字体类型APIDISP_STRING“D7“,65,115DISP_STRING“D8“,240,115FOROSSEMPENDSEND_D7LIGHT_SEM,0,IFFLAG1SET_COLORGUI_BLACK10FILL_CIRCLE130,120,20SET_COLORGUI_REDFILL_CIRCLE190,120,20SET_COLORGUI_WHITEFILL_CIRCLE140,110,8FILL_CIRCLE200,110,8SET_FONTDISP_STRINGCN_START“孙田雨,王波,丁磊“CN_END,85,220/显示字符串的APIFLAG0ELSESET_COLORGUI_REDFILL_CIRCLE130,120,20SET_COLORGUI_BLACKFILL_CIRCLE190,120,20SET_COLORGUI_WHITEFILL_CIRCLE120,110,8FILL_CIRCLE180,110,8SET_FONTDISP_STRINGCN_START“指导老师许海燕“CN_END,85,220/显示字符串的APIFLAG1OSSEMPOSTSEND_LCD_SEM/函数名称TASK_1VOIDPDATA函数说明系统启动后运行的第一个任务,,点亮D7熄灭D8,优先级为5输入参数PDATA输出参数无/VOIDTASK_1VOIDPDATAINT8UERRINT32UI,FLAG011RTC_TICK_INIT/打开时钟节拍,让操作系统跑起来FOROSSEMPENDSEND_LCD_SEM,0,/函数用于等待一个信号量IFFLAG0FORI0I300000IRPCONB0X7CFRPDATB0X7DFFORI0I300000IFLAG1ELSEFORI0I300000IRPCONB0X7CFRPDATB0X7EFFORI0I300000IFLAG0OSSEMPOSTSEND_D7LIGHT_SEM/函数名称MAINVOID函数说明
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 养护作业安全规程培训课件
- 养成良好的卫生行为课件
- 农业器具使用安全知识培训课件
- 别具风味的美食课件
- 别云间-夏完淳课件
- 化工企业安全培训内容课件
- 内镜预约流程课件
- 兴县食品安全培训课件
- 化学清洗安全培训课件
- 兴业海螺安全培训课件
- 2025邮储银行校招笔试真题及答案
- 2025年甘肃省天水市甘谷县选聘大学生村文书55人考试参考题库及答案解析
- 2025年国家公务员考试法律基础知识复习讲义
- 农村产业融合发展示范园项目可行性研究报告
- d证科目一考试完整题库及答案
- 铝灰知识培训课件
- 旧窗户拆除安全合同7篇
- 民族团结一家亲知识竞赛试题及答案
- 学堂在线 运动与健康 章节测试答案
- 无人机作业安全知识培训课件
- 愿友谊地久天长课件
评论
0/150
提交评论