基于LCD的电子时钟实验 HDL课设_lcd电子钟课程设计

2020-02-28 其他范文 下载本文

基于LCD的电子时钟实验 HDL课设由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“lcd电子钟课程设计”。

Ⅰ、课程设计(报告)题目:

基于LCD的电子时钟实验

Ⅱ、课程设计(论文)工作内容

一、课程设计目标

1、培养综合运用知识和独立开展实践创新的能力;

2、培养学生将理论知识与实际应用结合在一起;

3、培养学生的自我学习能力和解决问题的能力;

4、培养学生的协作意识和团队合作能力;

5、培养学生的总结经验的能力。

二、研究方法及手段应用

1、问题解决模块化,将任务分成若干模块,分模块调试和完成任务;

2、查阅网上的相关素材,查阅相关论文资料,进行比较、研究;

3、在独立思考的基础上,请教老师,和同组同学讨论、学习;

4、反复调试、总结经验、排除差错;

5、连接PC和EL-ARM-830实验箱,完成整个实验环境搭建;

6、运用Code Warrior for ARM编译软件编译汇编语言和进行调试;

7、使用H-JTAG下载至硬件进行观察、调试。

三、课程设计预期效果

1、在液晶屏上显示表盘,和时间点和时、分、秒针;

2、在液晶屏上显示时、分、秒、年、月、日;

3、在液晶屏上实现指针的动态图像;

4、可以实现自己设定的初始时间和跨年效果;

目 录

摘要................................................................................................................................3 第一章系统设计............................................................................................................4 第一节课题目标及总体方案..................................................................................5 第二节相关组件说明..............................................................................................5 第三节项目设计模块描述及流程图......................................................................7

1.主函数模块...................................................................................................8 2.时钟表盘的构建模块...................................................................................9 3.表盘下日期的显示模块...........................................................................11 4.任

模块………………………………………………………………………………….12 第二章 结果与讨论..................................................................................................12 1.结果显示.....................................................................................................13 2.讨论.............................................................................................................13 心得体会......................................................................................................................14 参考文献......................................................................................................................16 附 录..........................................................................................................................16

摘要

近年来,随着计算机技术及集成电路技术的发展,嵌入式技术日渐普及,在通讯、网络、工控、医疗、电子等领域发挥着越来越重要的作用。嵌入式系统无疑成为当前最热门最有发展前途的IT应用领域之一。

实时时钟(RTC)器件是一种能提供日历/时钟、数据存储等功能的专用集成电路,常用作各种计算机系统的时钟信号源和参数设置存储电路。RTC具有计时准确、耗电低和体积小等特点,特别适用于在各种嵌入式系统忠记录事件发生的时间和相关信息,尤其是在通信工程、电力自动化、工业控制等自动化程度较高领域的无人职守环境。随着集成电路技术的不断发展,RTC器件的新品也不断推出。这些新品不仅具有准确的RTC,还有大容量的存储器、温度传感器和A/D数据采集通道等,已成为集RTC、数据采集和存储于一体的综合功能器件,特别适用于以微控制器为核心的嵌入式系统。

关键字:嵌入式系统、实时时钟RTC

Abstract

In recent years, as computer technology and integrated circuit technology, the growing popularity of embedded technology in the telecommunications, networking, industrial control, medical, electronics and other fields are playing an increasingly important role.Embedded systems will undoubtedly become the most popular of the most promising areas of IT applications.RTC has a timing accuracy, low power consumption and small size and other characteristics, especially for embedded systems in a variety of loyalty and the time recorded event-related information, especially in communication engineering, electric power automation, industrial control and other areas of higher degree of automation unattended environment.With integrated circuit technology continues to evolve, RTC also has introduced new devices.These new products not only have accurate RTC, there is a large-capacity memory, temperature sensor and A / D data acquisition channel, etc., has become a set of RTC, data collection and storage functions in one integrated device, particularly applicable to micro-controller core embedded systems.Keywords: embedded systems, real-time clock(RTC)

第一章系统设计 第一节课题目标及总体方案

随着嵌入式技术的发展,我们身边充斥着各类各样的嵌入式电子产品。实时时钟(RTC)就是一种在现代电子设备中应用非常普遍,可以帮助人们实时、准确的掌握时间的器件,如手机、PDA及一些智能仪表都提供了时钟显示。我们本次课题的目标就是要基于S3C44BOX芯片设计出一个实时时钟,编写汇编语言可以通过Code Warrior for ARM软件调试,然后下载至实验箱内进行观察。在试验箱中的LCD液晶屏幕上显示出时钟的圆盘和动态的指针,并在时钟下方显示出当前的年份和日期,为了可以使老师更直观的观察到时钟可以跨年、跨月、跨日、二十四制,我们直接将时间设定至2011年12月31日23:59:55,这样,时钟一旦运行就可以经过五秒就可以观察到时间跳至2012年1月1日00:00:00。另外,我们将要实现的系统分为几个模块实现,每个模块间相对独立而又相互联系,在主函数中进行调用。最终在LCD上显示如图1所示的类似的时钟界面。

图1

第二节相关组件说明

一、LCD显示原理 S3C44B0X 中具有内置的LCD 控制器,它能将显示缓存(在SDRAM存储器中)中的LCD图像数据传输到外部的LCD驱动电路上的逻辑功能。它支持单色、4级、16级灰度LCD显示,以及256彩色LCD显示。在显示灰度时,它采用时间抖动算法(time-based dithering algorithm)和帧率控制(Frame Rate Control)方法,在显示彩色时,它采用RGB的格式,即RED、GREEN、BLUE,三色混合调色。通过软件编程,可以实现233或332的RGB调色的格式。对于不同尺寸的LCD显示器,它们会有不同的垂直和水平象素点、不同的数据宽度、不同的接口时间及刷新率,通过对LCD 控制器中的相应寄存器写入不同的值,来配置不同的LCD 显示板。本次课设的显示模式设置为8bit单扫描模式。

二、项目文件说明

本实验使用实验教学系统的CPU板,液晶显示器(LCD),在LCD下方,有一个可调电阻,标号为VR2,它用来调整LCD的对比度及亮度。在LCD的右下方,有一个黄头的按键,它用来开关LCD,它的标号为LCD_ON/OFF。

本次课设的项目文件为lcd.mcp,在UCOSII系统上操作。图2为该项目 在ADS1.2环境下的目录结构组成。图3为打开该文件夹后,项目在ADS1.2环境下呈现出的目录及源文件结构组成框架。

图2

图3

该项目添加了包含LCD驱动程序的文件夹Gui,其中,包括四个文件夹,Font中存放的是字体文件,Glib中存放绘图的中层和上层的函数,上层函 数是直接供用户调用的API,Init中存放GUI初始化的函数,Lcddriver中存放的是LCD的底层驱动函数。以及对LCD控制器的初始化函数。把LCD驱动程序加入的过程,也就是把整个GUI文件夹加入该项目里,同时,还要在ApplicationINC目录下的config.h文件中,加入GUI程序的头文件,#include “....GuiGlibGlib.h”,这是为了在应用中方便调用画图的API函数。如果,要在LCD上显示英文或汉字,还要在ApplicationSRCMain.c

中声明引用的是

extern GUI_FONT CHINESE_FONT12;等外部定义过的字体。这样,编译就能通过,就把LCD的驱动程序以及小型的GUI图形库,加载到了UCOSII操作系统上了。

三、USOSII操作系统简介

μC/OS-II是一种可移植的,可植入ROM的,可裁剪的,抢占式的,实时多任务操作系统内核。

μC/OS-II 是专门为计算机的嵌入式应用设计的,绝大部分代码是用C语言编写的。CPU 硬件相关部分是用汇编语言编写的、总量约200行的汇编语言部分被压缩到最低限度,为的是便于移植到任何一种其它的CPU 上。用户只要有标准的ANSI 的C交叉编译器,有汇编器、连接器等软件工具,就可以将μC/OS-II嵌入到开发的产品中。μC/OS-II 具有执行效率高、占用空间小、实时性能优良和可扩展性强等特点,最小内核可编译至 2KB。μC/OS-II 已经移植到了几乎所有知名的CPU 上。

第三节项目设计模块描述及流程图

1.模块描述:我先进行了整个系统的规划,将整个系统分为四大模块:第一,主函数模块;第二,时钟表盘的构建模块,包括:设置液晶全屏背景色、绘制时钟表盘形状并着色、绘制表盘内12个点的形状并着色以及绘制表盘内指针的形状并着色;第三,表盘下日期的显示模块,包括:定位表盘下时间和日期的坐标和日期显示函数的编写;第四,任务运行模块。

2.流程图:

一、主函数模块

二、时钟表盘的构建模块

(1)设置液晶全屏背景色

(2)绘制时钟表盘形状并着色

(3)绘制表盘内12个点的形状并着色

(4)绘制表盘内指针的形状并着色(以秒针为例)

三、表盘下日期的显示模块

(1)定位表盘下时间和日期的坐标(仍以秒计时为例)

(2)日期显示函数的编写

四、任务运行模块

第二章 结果与讨论

一、结果显示

1.经过多次的调试和排查,以及总结,使用编译器编译,编译器提示编译文件正确,没有出现任何错误,没有出现任何警告,而且编译出文件容量很小,下载迅速,符合软件设计要求。

2.下面的图片是从实验箱上的LCD屏幕上显示的图像拍下来的,也就是我本次课程设计的成果。从图片显示上可以看出,所有预计实现的功能和界面都实现了。表盘显示在相对中央的地方,整个屏幕以蓝色为基调,表盘底色为黑色,表盘外环为灰色,指针为红、绿、蓝三种颜色,点数为黄色,表盘下方显示当前时间、日期,同时界面很漂亮,色彩对比很鲜明。

图4 跨年前3s

二、讨论 1.典型的嵌入式操作系统有Linux、μC/OS、Windows CE、VxWorks、Palm OS 和QNX等。其中关于μC/OS-II操作系统的特点即相比较其他几个操作系统的优势在前面的<相关组件说明>部分已给出,不再赘述。

2.关于μC/OS-II操作系统的任务调度方面

1)高优先级的任务因为需要某种临界资源,主动请求挂起,让出处理器,此时将调度就绪状态的低优先级任务获得执行,这种调度也称为任务级的上下文切换。

2)高优先级的任务因为时钟节拍到来,在时钟中断的处理程序中,内核发现高优先级任务获得了执行条件(如休眠的时钟到时),则在中断态直接切换到高优先级任务执行。这种调度也称为中断级的上下文切换。

这两种调度方式在uC/OS-II的执行过程中非常普遍,一般来说前者发生在系统服务中,后者发生在时钟中断的服务程序中。

以上两个部分是我在本次课设验收之后新的了解。

心得体会

说实话,到目前为止所做的课设中,这次的嵌入式课设最不尽人意。刚开始毫无头绪,即使在查阅了大量相关资料的基础上。后来,手上有了一份参考程序,打开一看,顿时懵了。当时想如果纯粹靠我自己或者和同学讨论,恐怕很难完成这次课设吧。于是,实验室刚开放,我就立刻去调试程序,通过观察试验箱上显示的结果来理解程序。一个模块一个模块对应的理解下去之后,思路开始清晰起来。每当遇到一行程序不懂或者有疑问时,比如这行程序起什么作用、可不可以删掉或者可不可以换个位置,我都通过程序的相关改动结合实验结果的观察将这些疑问解决掉了。同时,同学的帮助也给了我很多的启发,非常感谢他们。

但不得不承认,关于μC/OS-II操作系统方面理解的很不透彻。验收时,我只是把时钟界面的构建部分理解了,没有过多的加深对操作系统μC/OS-II的学习,所以验收时对于老师的提问也是磕磕绊绊。老师让我充分认识到了自己在这次课设中的不足,谢谢老师。

因而,在编写这份报告前,我又认真地上网搜索了μC/OS-II操作系统的简介,尤其是它的优点和任务调度方面。在写这份报告时,我也许还没能完全弄懂μC/OS-II操作系统,但我相信,只要努力过,总会有收获。

参考文献

1. 吴学智,《基于ARM的嵌入式系统设计与开发》 ……人民邮电出版社,2007 2.金建设,《嵌入式系统基础实验》…………………大连理工大学出版社,2009 3.王晓薇,《嵌入式硬件基础实验与习题解答》…………电子工业出版社,2009

附 录

1.软件清单:

1)Code Warrior for ARM编译软件; 2)AXD Debugger 调试软件; 3)H-JTAG软件;

2.硬件:

PC和EL-ARM-830实验箱; 3.程序略。

《基于LCD的电子时钟实验 HDL课设.docx》
将本文的Word文档下载,方便收藏和打印
推荐度:
基于LCD的电子时钟实验 HDL课设
点击下载文档
相关专题 lcd电子钟课程设计 时钟 电子 LCD lcd电子钟课程设计 时钟 电子 LCD
[其他范文]相关推荐
    [其他范文]热门文章
      下载全文