安徽中医学院本科生毕业论文设计.docx
- 文档编号:9242516
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:49
- 大小:1.21MB
安徽中医学院本科生毕业论文设计.docx
《安徽中医学院本科生毕业论文设计.docx》由会员分享,可在线阅读,更多相关《安徽中医学院本科生毕业论文设计.docx(49页珍藏版)》请在冰豆网上搜索。
安徽中医学院本科生毕业论文设计
安徽中医学院本科生毕业论文(设计)
————————————————————————————————作者:
————————————————————————————————日期:
安徽中医学院本科生毕业设计
基于单片机技术的数字时钟的实现
姓名:
程晓楠
专业:
计算机科学与技术
学号:
07712005
指导老师:
金力
实习单位:
上海嘉技国际贸易有限公司
安徽中医学院医药信息工程学院
2011年5月3日
中文摘要
基于单片机的数字时钟在日常的生产生活中已得到广泛应用,例如交通灯对交通的控制、车站码头显示牌显示时间及车船次信息、电冰箱洗衣机等家用电器的应用,有鉴于此进行了本设计的选题工作。
本文介绍数字时钟的系统设计,该系统具有数字时间的显示、文字动画效果的显示及简单图片的显示等功能。
系统以STC11f32XE为核心,结合DS1302主要实现时间的数字形式显示。
系统的液晶显示器为NOKIA5110,负责时间图片等的显示。
4*4阵列式键盘实现该键对应数字在显示器上的显示。
通过系统显示器,配合简单操作提供友好用户界面。
系统软件设计包括单片机编程,用C语言实现。
通过向单片机下载软件,最终实现键盘的输入显示,显示器对图片文字等信息的显示,动静态文字的实现,时间的显示等功能。
关键字:
数字时钟;单片机;编程;字模
ABSTRACT
ThedigitalclockbasedonSingle-chipMicrocomputerhasbeenusedwidelyinourdailylife,suchasthetrafficcontroloftrafficlights,thedisplayingtimeandtravellingtimeinformationonthedisplayboardsofstationterminal,thehousingmachineslikerefrigeratorsandwashingmachines,etc.ThatiswhyIchoosethistopictostudy.
Thisthesisintroducesthesystemdesignofdigitalclockandthesystemcandisplaythedigitaltime,theresultoftextandanimation,andthesimpleimages。
ThesystemusesSTC11f32XEasthecoreandcombineswiththeDS1302toachievethetimedisplayindigital.TheliquidcrystaldisplayofthesystemisNOKIA5110,whichisresponsibleforthedisplayoftimeandpictures。
Thekeyboardin4*4arrayisusedtodisplaythecorrespondingnumbersofthekeyboardonthemonitor.Throughthesystemmonitor,itprovidesafriendlyuserinterfacewithasimpleoperation.ThesystemsoftwaredesignincludesSingle-chipMicrocomputerprogramming,whichisperformedbyClanguage.本文为互联网收集,请勿用作商业用途文档为个人收集整理,来源于网络
ThroughdownloadingsoftwaretotheSingle—chipMicrocomputer,wecanachievealotfunctions,likedisplayingthekeyboardinput,displayingtheinformationofimagesandtextonthemonitor,achievingthedynamicandstatictext,displayingthetime,etc。
Keywords:
DigitalClock;Single—chipMicrocomputer;programming;Matrix
基于单片机技术的数字时钟的实现
第一章绪论
1。
1单片机的发展历史
1946年第一台电子计算机诞生至今,依靠微电子技术和半导体技术的进步,从电子管-—晶体管——集成电路——大规模集成电路,使得计算机体积更小,功能更强。
特别是近20多年时间里,计算机技术获得飞速的发展,计算机在工农业,科研,教育,国防和航空航天领域获得了广泛的应用,计算机技术已经是一个国家现代科技水平的重要标志。
单片机诞生于20世纪70年代,如Fairchild公司研制的F8单片微型计算机。
所谓单片机是利用大规模集成电路技术把中央处理单元(CenterProcessingUnit,也即常称的CPU)和数据存储器(RAM)、程序存储器(ROM)及其他I/O通信口集成在一块芯片上,构成一个最小的计算机系统,而现代的单片机则加上了中断单元,定时单元及A/D转换等更复杂、更完善的电路,使得单片机的功能越来越强大,应用更广泛.
单片机诞生于20世纪70年代末,经历了SCM、MCU、SOC三大阶段。
(1)SCM即单片微型计算机(SingleChipMicrocomputer)阶段,主要是寻求最佳的单片形态嵌入式系统的最佳体系结构。
“创新模式”获得成功,奠定了SCM与通用计算机完全不同的发展道路。
在开创嵌入式系统独立发展道路上,Intel公司功不可没。
(2)MCU即微控制器(MicroControllerUnit)阶段,主要的技术发展方向是:
不断扩展满足嵌入式应用时,对象系统要求的各种外围电路与接口电路,突显其对象的智能化控制能力。
它所涉及的领域都与对象系统相关,因此,发展MCU的重任不可避免地落在电气、电子技术厂家。
从这一角度来看,Intel逐渐淡出MCU的发展也有其客观因素。
在发展MCU方面,最著名的厂家当数Philips公司。
Philips公司以其在嵌入式应用方面的巨大优势,将MCS-51从单片微型计算机迅速发展到微控制器。
因此,当我们回顾嵌入式系统发展道路时,不要忘记Intel和Philips的历史功绩.
(3)单片机是嵌入式系统的独立发展之路,向MCU阶段发展的重要因素,就是寻求应用系统在芯片上的最大化解决;因此,专用单片机的发展自然形成了SOC化趋势。
随着微电子技术、IC设计、EDA工具的发展,基于SOC的单片机应用系统设计会有较大的发展。
因此,对单片机的理解可以从单片微型计算机、单片微控制器延伸到单片应用系统。
20世纪70年代,微电子技术正处于发展阶段,集成电路属于中规模发展时期,各种新材料新工艺尚未成熟,单片机仍处在初级的发展阶段,元件集成规模还比较小,功能比较简单,一般均把CPU、RAM有的还包括了一些简单的I/O口集成到芯片上,Fairchild公司就属于这一类型,它还需配上外围的其他处理电路方才构成完整的计算系统.类似的单片机还有Zilog公司的Z80微处理器。
1976年Intel公司推出了MCS-48单片机,这个时期的单片机才是真正的8位单片微型计算机,并推向市场。
它以体积小,功能全,价格低赢得了广泛的应用,为单片机的发展奠定了基础,成为单片机发展史上重要的里程碑。
在MCS-48的带领下,其后,各大半导体公司相继研制和发展了自己的单片机,如Zilog公司的Z8系列.到了80年代初,单片机已发展到了高性能阶段,如Intel公司的MCS—51系列,Motorola公司的6801和6802系列,Rokwell公司的6501及6502系列等等,此外,日本的著名电气公司NEC和HITACHI都相继开发了具有自己特色的专用单片机。
80年代,世界各大公司均竞相研制出品种多功能强的单片机,约有几十个系列,300多个品种,此时的单片机均属于真正的单片化,大多集成了CPU、RAM、ROM、数目繁多的I/O接口、多种中断系统,甚至还有一些带A/D转换器的单片机,功能越来越强大,RAM和ROM的容量也越来越大,寻址空间甚至可达64kB,可以说,单片机发展到了一个新的平台。
[1,2]
1。
2本课题设计背景及意义
自20世纪以来,电子技术获得了飞速发展,各种电子产品进入到我们生活的方方面面,促进了社会信息化程度的提高。
同时电子产品性能不断提高,产品更新换代不断加快。
而随着电子技术的迅猛发展,各种家用电器(包括消费类电子产品等)被大部分家庭需要和使用。
为了满足人们的生活需要,提高家电的技术含量,实现家电的智能化、自动化势在必行。
与此同时,单片机体积小、重量轻、抗干扰能力强、环境要求不高、价格低廉、可靠性高、灵活性好、开发较为容易,广泛应用于智能生产和工业自动化上,而且现代人类生活中所用的几乎每件电子和机械产品如手机、电话、计算器、家用电器、电子玩具、掌上电脑以及鼠标等电脑配件中都会集成有单片机。
单片机类家用电器开发应用潜力巨大。
在日常生活中,发条钟常会因为机械故障致使时钟停工,电池钟常会因为电池没电或漏液导致时钟停工,而基于单片机技术的数字时钟则能克服上述两种时钟的缺点.数字时钟是采用电路实现对时、分、秒显示的计时装置,广泛用于家庭、车站、码头、办公室等公共场所。
成为人们日常生活中必不可少的用品,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字时钟的精度,远远超过了老式钟表,钟表数字化给人们生产生活带来了极大地方便和质量的提高,并会在我们的生产生活中扮演越来越重要的角色.
本设计所实现的基于单片机技术的数字时钟系统具有功耗小、成本低的特点,具有很强的实用性,且系统具有一定的可扩展性。
设计数字时钟的最终目的是能把它应用到实际中去。
如十字路口交通灯的控制,车站的日期时间显示,实时控制系统以及仪器仪表,家用电器等各个领域。
由于它的应用领域广,技术要求各不相同,但总体设计方法和研制步骤相同。
相信随着科技的进步技术的发展与制作工艺的改进,单片机应用的广度和深度都会更进一步,基于单片机技术的各类生产生活用品会更加深刻地改变我们的生活。
第二章相关开发工具和软件介绍
2。
1集成开发环境KeilC51
单片机的程序设计需要在特定的编译器中进行。
编译器完成对程序的编译、连接等工作,并最终生成可执行文件。
对于单片机程序的开发,一般采用Keil公司的μVison系列的集成开发环境,支持汇编语言以及C51等的程序设计。
另一方面,C语言是一种编译型程序设计语言,它兼顾了多种高级语言的特点,并具备汇编语言的功能。
目前,使用C语言进行程序设计已经成为单片机软件开发的一个主流.
KeilμVison系列是德国KeilSoftware公司推出的51系列兼容单片机软件开发系统,Keil公司已经被ARM公司收购。
μVison4是集成的可视化Windows操作界面,其提供了丰富的库函数和各种编译工具.能够对51系列单片机以及和51系列兼容的绝大部分类型的单片机进行设计.μVison系列是一个非常优秀的编译器,特点如下:
支持汇编语言,C51语言等多种单片机设计语言;可视化的文件管理,界面友好;支持丰富的产品线,除了51及其兼容内核的单片机外,还新增加了对ARM内核产品的支持;具有完善的编译连接工具;具备丰富的仿真调试功能;支持在一个工作区间中进行多项目的程序设计;支持多级代码优化。
μVison4集成开发环境是具有标准的Windows界面的应用程序,对于一个打开的项目工程,其界面效果图如下图1所示。
图1μVison4集成开发主界面
首先启动Keil软件,使用“File—〉New”可在项目窗口的右侧打开一个新的文本编辑窗口,可在窗口中输入C语言源程序.但在项目开发中,并不是仅有一个源程序就行了,还要为这个项目选择CPU,确定编译、汇编、连接的参数,指定调试的方式,有一些项目还会有多个文件组成等,为管理和使用方便,Keil使用工程(Project)这一概念,将这些参数设置和所需的所有文件都加在一个工程中,只能对工程而不能对单一的源程序进行编译(汇编)和连接等操作。
点击“File—〉NewProject”菜单,出现一个对话框,给将要建立的工程起一个名字,(设为test1).点击“保存",出现第二个对话框,如图2所示,选择CPU。
回到主界面,此时在工程窗口的文件页中出现了“Target1”,点击“+”号展开,看到下一层的“SourceGroup1",这时的工程还是一个空工程,需要手动将编好的源程序加入,点击“SourceGroup1"的鼠标右键,选中“AddfiletoGroup‘SourceGroup1'”,见图3,出现一个对话框,要求寻找源文件,为以c为扩展名的文件。
图2选择CPU界面图3添加源程序到工程视图
工程建立以后,还要对工程进行进一步的设置.
点击Target1,然后使用菜单“Project—〉Optionfortarget‘target1’”即出现对工程设置的对话框。
设置对话框中的Target页面,如图4所示,Xtal是晶振频率值,设为24M。
图4Target页面
设置对话框中的OutPut页面有多个选项,其中CreatHexfile用于生成可执行代码文件(可以用编程器写入单片机芯片的HEX格式文件,文件的扩展名为.HEX),因为本设计要写片做硬件实验,必须选中该项,见图5。
图5设置生成。
HEX文件
2。
2仿真软件Proteus
Proteus是由英国Labcenterelectronics公司开发的EDA工具软件。
它从1989年出现到现在已经有二十余年的历史,在全球广泛使用。
Proteus安装以后,主要由两个程序组成:
Ares和Isis.前者主要用于PCB自动或人工布线及其电路仿真,后者主要采用原理布图的方法绘制电路并进行相应的仿真。
除了上述基本应用之外,Proteus革命性的功能在于它的电路仿真是互动的,针对微处理器的应用,可以直接在基于原理图的虚拟原型上编程,并实现软件代码级的调试,还可以直接实时动态地模拟按钮、键盘的输入,LED、液晶显示的输出,同时配合虚拟工具如示波器、逻辑分析仪等进行相应的测量和观测.值得注意的是该软件元件库具有超过27000种元器件,并且可方便地创建新元件,极大地提高了软件的全面性和可扩展性。
[3]
Proteus软件的应用范围十分广泛,涉及PCB制版、SPICE电路仿真、单片机仿真等,本文介绍利用Isis进行单片机的仿真,是单片机时钟设计重要的环节。
其主界面如下图6所示。
图6Isis主界面
下面介绍该软件的基本概念和基本操作:
ISIS中坐标系统的基本单位是10nm,主要是为了和ARES保持一致。
坐标原点位于工作区的中间,所以既有正坐标值,又有负坐标值。
坐标位置指示器位于屏幕的右下角。
一旦实时捕捉(Real-TimeSnap)功能使能,当鼠标指针指向管脚末端或者导线时,X、Y坐标之一或二者都被加亮显示,加亮显示说明鼠标指针位置已经被捕捉。
例如,如果鼠标指针在一条横线附近,它将会被捕捉到Y轴,Y坐标将会被加亮。
·用鼠标左键点击预览窗口中想要显示的位置,这将使编辑窗口显示以鼠标点击处为中心的内容。
·在编辑窗口内移动鼠标,按下SHIFT键,用鼠标“撞击”边框,这会使显示平移。
我们把这称为Shift—Pan。
·用鼠标指向编辑窗口并按缩放键(见下文),会以鼠标指针位置为中心重新显示。
·按F6键可以放大电路图(连续按会不断放大直到最大),按F7键可以缩小电路图(类似的连续按会不断缩小直到最小),这两种情况无论哪种都会使显示以当前鼠标位置为中心重新显示。
按F8键可以把一整张图缩放到完全显出来。
图的大小可以通过View菜单的Zoom命令或者是上述的功能键控制。
无论何时你都可以使用功能键控制缩放,即便是在滚动和拖放对象时。
·当鼠标指针指向管脚末端或者导线时,鼠标指针将会被捕捉到这些物体,这种功能被称为实时捕捉,该功能可以使你方便的实现导线和管脚的连接。
可以通过Tools菜单的RealTimeSnap命令或者是CTRL+S切换该功能。
·对象选择器(ObjectSelector)根据由图标决定的当前状态显示不同的内容.显示对象的类型包括:
设备,终端,管脚,图形符号,标注和图形。
在某些状态下,对象选择器有一个Pick切换按钮,点击该按钮可以弹出库元件选取窗体。
通过该窗体可以选择元件并置入对象选择器,在今后绘图时使用。
·选中对象(TagginganObject)用鼠标指向对象并点击右键可以选中该对象.该操作选中对象并使其高亮显示,然后可以进行编辑。
选中对象时该对象上的所有连线同时被选中。
要选中一组对象,可以通过依次在每个对象右击选中每个对象的方式。
也可以通过右键拖出一个选择框的方式,但只有完全位于选择框内的对象才可以被选中。
在空白处点击鼠标右键可以取消所有对象的选择。
·拖动对象(DragginganObject)用鼠标指向选中的对象并用左键拖曳可以拖动该对象。
该方式不仅对整个对象有效,而且对对象中单独的labels也有效。
·调整对象大小(ResizinganObject)子电路(Sub-circuits)、图表、线、框和圆可以调整大小。
当你选中这些对象时,对象周围会出现白色小方块叫做“手柄”,可以通过拖动这些“手柄”来调整对象的大小。
·编辑对象(EditinganObject)许多对象具有图形或文本属性,这些属性可以通过一个对话框进行编辑,这是一中很常见的操作,有多种实现方式.
·画线(WirePlacement)左击第一个对象连接点。
如果你想让ISIS自动定出走线路径,只需左击另一个连接点。
另一方面,如果你想自己决定走线路径,只需在想要拐点处点击鼠标左键。
一个连接点可以精确的连到一根线.在元件和终端的管脚末端都有连接点.一个圆点从中心出发有四个连接点,可以连四根线。
由于一般都希望能连接到现有的线上,ISIS也将线视作连续的连接点。
此外,一个连接点意味着3根线汇于一点,ISIS提供了一个圆点,避免由于错漏点而引起的混乱。
用该软件设计的电路原理图如下面图7。
图7电路原理图
第三章系统概述
3。
1系统框图
系统总体结构框图见下图8。
图8系统框图
3.2系统硬件概述
系统设计涉及的主要硬件包括STC11F32XE单片机芯片一块、时钟芯片DS1302、NOKIA5110显示屏和一个4*4矩阵键盘。
STC11F32XE单片机芯片实现该设计的核心的运算控制,时钟芯片DS1302实现时间的输出,NOKIA5110显示屏实现时间、文字等的输出显示,4*4矩阵键盘实现各按键的不同输入实现。
详细介绍见第四章第一节的系统硬件实现部分,在此不熬述。
系统软件部分主要涉及DS1302时钟芯片编程,NOKIA5110显示屏编程及矩阵键盘编程。
DS1302时钟芯片:
设置初始时间,从读寄存器中读出时间暂存于单片机内存中,进而送入显示缓冲区。
NOKIA5110显示屏:
设置(X,Y)坐标,设计时间文字等在显示屏上显示的位置,从单片机内存中读取并送入显示缓冲区.
矩阵键盘:
计算出各按键的特征编码,然后将16个按键的特征编码按图15按键排列的顺序排成一张特征编码与顺序编码的对应关系表,然后用当前读得的特征编码来查表,当表中有该特征编码时,它所在的位置就是对应的顺序编码.
第四章系统的实现
4.1系统的硬件实现
4。
1.1基本概念
单片机:
单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。
单片机和嵌入式区别:
单片机是使用MCU就是微控制器领域的,一般程序都是面向控制的,像一些仪器。
嵌入式一般都是带操作系统的,像ARM+LINUX一般像手机,平板电脑等。
这是说一般会想到的领域。
从定义上来说,单片机是一个微型控制芯片,把各个功能部件结合到一块芯片上中,构成一个完整的微型计算机。
嵌入式就是嵌入到一些东西里面的计算机系统,它强调的是系统,像带操作系统什么的.
晶振(Crystaloscillator):
一般叫做晶体振荡器,是一种机电器件,是用电损耗很小的石英晶体经精密切割磨削并镀上电极焊上引线做成.这种晶体有一个很重要的特性,如果给它通电,它就会产生机械振荡,反之,如果给它机械力,它又会产生电,这种特性叫机电效应。
他们有一个很重要的特点,其振荡频率与他们的形状,材料,切割方向等密切相关。
由于石英晶体化学性能非常稳定,热膨胀系数非常小,其振荡频率也非常稳定,由于控制几何尺寸可以做到很精密,因此,其谐振频率也很准确。
根据石英晶体的机电效应,我们可以把它等效为一个电磁振荡回路,即谐振回路。
他们的机电效应是机—电-机-电的不断转换,由电感和电容组成的谐振回路是电场-磁场的不断转换.在电路中的应用实际上是把它当作一个高Q值的电磁谐振回路。
由于石英晶体的损耗非常小,即Q值非常高,做振荡器用时,可以产生非常稳定的振荡,作滤波器用,可以获得非常稳定和陡削的带通或带阻曲线。
[4]本文为互联网收集,请勿用作商业用途文档为个人收集整理,来源于网络
总线(Bus):
是计算机各种功能部件之间传送信息的公共通信干线,它是由导线组成的传输线束,按照计算机所传输的信息种类,计算机的总线可以划分为数据总线、地址总线和控制总线,分别用来传输数据、数据地址和控制信号.总线是一种内部结构,它是CPU、内存、输入、输出设备传递信息的公用通道,主机的各个部件通过总线相连接,外部设备通过相应的接口电路再与总线相连接,从而形成了计算机硬件系统。
在计算机系统中,各个部件之间传送信息的公共通路叫总线,微型计算机是以总线结构来连接各个功能部件的。
文档为个人收集整理,来源于网络个人收集整理,勿做商业用途
仿真、仿真机:
仿真是单片机开发过程中非常重要的一个环节,一般产品开发过程中都要进行仿真,仿真的主要目的是进行软件调试。
当然借助仿真机,也能进行一些硬件排错。
一块单片机应用电路板包括单片机部份及为达到使用目的而设计的应用电路,仿真就是利用仿真机来代替应用电路板(称目标机)的单片机部份,对应用电路部份进行测试、调试。
4.1.251单片机概述
51单片机是对目前所有兼容Intel8031指令系统的单片机的统称。
该系列单片机的始祖是Intel的8031单片机,后来随着FlashROM技术的发展,8031单片机取得了长足的进展,成为目前应用最广泛的8位单片机之一,其代表型号是ATMEL公司的AT89系列,它广泛应用于工业测控系统之中。
STC公司的单片机主要是基于8051内核,是新一代增强型单片机,指令代码完全兼容传统8051,速度快8-12倍,双串口,有全球唯一ID号,加密性好,抗干扰强。
目前很多公司都有51系列的兼容机型推出。
51单片机是基础入门的一个单片机,还是应用最广泛的一种.下面
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 安徽 中医学院 本科生 毕业论文 设计