收藏 分销(赏)

安徽中医学院本科生毕业论文(设计).doc

上传人:w****g 文档编号:2147274 上传时间:2024-05-20 格式:DOC 页数:57 大小:1.48MB
下载 相关 举报
安徽中医学院本科生毕业论文(设计).doc_第1页
第1页 / 共57页
安徽中医学院本科生毕业论文(设计).doc_第2页
第2页 / 共57页
安徽中医学院本科生毕业论文(设计).doc_第3页
第3页 / 共57页
安徽中医学院本科生毕业论文(设计).doc_第4页
第4页 / 共57页
安徽中医学院本科生毕业论文(设计).doc_第5页
第5页 / 共57页
点击查看更多>>
资源描述

1、安徽中医学院本科生毕业论文(设计) 作者: 日期:2 个人收集整理 勿做商业用途 安徽中医学院本科生毕业设计基于单片机技术的数字时钟的实现 姓 名: 程晓楠 专 业: 计算机科学与技术 学 号: 07712005 指导老师: 金 力 实习单位: 上海嘉技国际贸易有限公司 安徽中医学院医药信息工程学院 2011年5月3日目 录中文摘要3ABSTRACT4第一章 绪论51.1 单片机的发展历史51。2 本课题设计背景及意义7第二章 相关开发工具和软件介绍82。1 集成开发环境Keil C5182。2 仿真软件Proteus11第三章 系统概述153。1 系统框图153.2 系统硬件概述15第四章

2、系统的实现174.1 系统的硬件实现174.1.1 基本概念174。1.2 51单片机概述184。1。3 DS1302芯片224.1。4 LCD芯片和阵列式键盘234.1。5 电路的详细设计264。2 系统的软件实现294。2.1 字模软件ZIM0221294.2.2 文字显示的实现304。2.3 图片显示的实现304。2.4 键盘功能的实现304。2.5 基于单片机的数字时钟的实现30第五章 调试与运行355。1 环境介绍355.2 系统运行385.3 系统调试38第六章 总结与展望39参考文献40致 谢41附录42中文摘要基于单片机的数字时钟在日常的生产生活中已得到广泛应用,例如交通灯对交

3、通的控制、车站码头显示牌显示时间及车船次信息、电冰箱洗衣机等家用电器的应用,有鉴于此进行了本设计的选题工作。本文介绍数字时钟的系统设计,该系统具有数字时间的显示、文字动画效果的显示及简单图片的显示等功能。系统以STC11f32XE为核心,结合DS1302主要实现时间的数字形式显示。系统的液晶显示器为NOKIA 5110,负责时间图片等的显示。44阵列式键盘实现该键对应数字在显示器上的显示。通过系统显示器,配合简单操作提供友好用户界面。系统软件设计包括单片机编程,用C语言实现。通过向单片机下载软件,最终实现键盘的输入显示,显示器对图片文字等信息的显示,动静态文字的实现,时间的显示等功能。关键字:

4、数字时钟;单片机;编程;字模ABSTRACTThe digital clock based on Single-chip Microcomputer has been used widely in our daily life, such as the traffic control of traffic lights, the displaying time and travelling time information on the display boards of station terminal, the housing machines like refrigerators and

5、 washing machines, etc. That is why I choose this topic to study. This thesis introduces the system design of digital clock and the system can display the digital time, the result of text and animation, and the simple images。 The system uses STC11f32XE as the core and combines with the DS1302 to ach

6、ieve the time display in digital. The liquid crystal display of the system is NOKIA 5110, which is responsible for the display of time and pictures。 The keyboard in 4 * 4 array is used to display the corresponding numbers of the keyboard on the monitor. Through the system monitor, it provides a frie

7、ndly user interface with a simple operation. The system software design includes Single-chip Microcomputer programming, which is performed by C language. 本文为互联网收集,请勿用作商业用途文档为个人收集整理,来源于网络Through downloading software to the Singlechip Microcomputer, we can achieve a lot functions, like displaying the

8、keyboard input, displaying the information of images and text on the monitor, achieving the dynamic and static text, displaying the time, etc。 Key words:Digital Clock;Singlechip Microcomputer;programming;Matrix基于单片机技术的数字时钟的实现第一章 绪论1。1 单片机的发展历史1946年第一台电子计算机诞生至今,依靠微电子技术和半导体技术的进步,从电子管-晶体管集成电路大规模集成电路,使得

9、计算机体积更小,功能更强。特别是近20多年时间里,计算机技术获得飞速的发展,计算机在工农业,科研,教育,国防和航空航天领域获得了广泛的应用,计算机技术已经是一个国家现代科技水平的重要标志。单片机诞生于20世纪70年代,如Fairchild公司研制的F8单片微型计算机。所谓单片机是利用大规模集成电路技术把中央处理单元(Center Processing Unit,也即常称的CPU)和数据存储器(RAM)、程序存储器(ROM)及其他I/O通信口集成在一块芯片上,构成一个最小的计算机系统,而现代的单片机则加上了中断单元,定时单元及A/D转换等更复杂、更完善的电路,使得单片机的功能越来越强大,应用更广

10、泛.单片机诞生于20世纪70年代末,经历了SCM、MCU、SOC三大阶段。(1)SCM即单片微型计算机(Single Chip Microcomputer)阶段,主要是寻求最佳的单片形态嵌入式系统的最佳体系结构。“创新模式”获得成功,奠定了SCM与通用计算机完全不同的发展道路。在开创嵌入式系统独立发展道路上,Intel公司功不可没。(2)MCU即微控制器(Micro Controller Unit)阶段,主要的技术发展方向是:不断扩展满足嵌入式应用时,对象系统要求的各种外围电路与接口电路,突显其对象的智能化控制能力。它所涉及的领域都与对象系统相关,因此,发展MCU的重任不可避免地落在电气、电子

11、技术厂家。从这一角度来看,Intel逐渐淡出MCU的发展也有其客观因素。在发展MCU方面,最著名的厂家当数Philips公司。Philips公司以其在嵌入式应用方面的巨大优势,将MCS-51从单片微型计算机迅速发展到微控制器。因此,当我们回顾嵌入式系统发展道路时,不要忘记Intel和Philips的历史功绩.(3)单片机是嵌入式系统的独立发展之路,向MCU阶段发展的重要因素,就是寻求应用系统在芯片上的最大化解决;因此,专用单片机的发展自然形成了SOC化趋势。随着微电子技术、IC设计、EDA工具的发展,基于SOC的单片机应用系统设计会有较大的发展。因此,对单片机的理解可以从单片微型计算机、单片微

12、控制器延伸到单片应用系统。20世纪70年代,微电子技术正处于发展阶段,集成电路属于中规模发展时期,各种新材料新工艺尚未成熟,单片机仍处在初级的发展阶段,元件集成规模还比较小,功能比较简单,一般均把CPU、RAM有的还包括了一些简单的I/O口集成到芯片上,Fairchild公司就属于这一类型,它还需配上外围的其他处理电路方才构成完整的计算系统.类似的单片机还有Zilog公司的Z80微处理器。1976年Intel公司推出了MCS-48单片机,这个时期的单片机才是真正的8位单片微型计算机,并推向市场。它以体积小,功能全,价格低赢得了广泛的应用,为单片机的发展奠定了基础,成为单片机发展史上重要的里程碑

13、。在MCS-48的带领下,其后,各大半导体公司相继研制和发展了自己的单片机,如Zilog公司的Z8系列.到了80年代初,单片机已发展到了高性能阶段,如Intel公司的MCS51系列,Motorola公司的6801和6802系列,Rokwell公司的6501及6502系列等等,此外,日本的著名电气公司NEC和HITACHI都相继开发了具有自己特色的专用单片机。80年代,世界各大公司均竞相研制出品种多功能强的单片机,约有几十个系列,300多个品种,此时的单片机均属于真正的单片化,大多集成了CPU、RAM、ROM、数目繁多的I/O接口、多种中断系统,甚至还有一些带A/D转换器的单片机,功能越来越强大

14、,RAM和ROM的容量也越来越大,寻址空间甚至可达64kB,可以说,单片机发展到了一个新的平台。1,21。2 本课题设计背景及意义自20世纪以来,电子技术获得了飞速发展,各种电子产品进入到我们生活的方方面面,促进了社会信息化程度的提高。同时电子产品性能不断提高,产品更新换代不断加快。而随着电子技术的迅猛发展,各种家用电器(包括消费类电子产品等)被大部分家庭需要和使用。为了满足人们的生活需要,提高家电的技术含量,实现家电的智能化、自动化势在必行。与此同时,单片机体积小、重量轻、抗干扰能力强、环境要求不高、价格低廉、可靠性高、灵活性好、开发较为容易,广泛应用于智能生产和工业自动化上,而且现代人类生

15、活中所用的几乎每件电子和机械产品如手机、电话、计算器、家用电器、电子玩具、掌上电脑以及鼠标等电脑配件中都会集成有单片机。单片机类家用电器开发应用潜力巨大。在日常生活中,发条钟常会因为机械故障致使时钟停工,电池钟常会因为电池没电或漏液导致时钟停工,而基于单片机技术的数字时钟则能克服上述两种时钟的缺点.数字时钟是采用电路实现对时、分、秒显示的计时装置,广泛用于家庭、车站、码头、办公室等公共场所。成为人们日常生活中必不可少的用品,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字时钟的精度,远远超过了老式钟表,钟表数字化给人们生产生活带来了极大地方便和质量的提高,并会在我们的生产生活中扮演越

16、来越重要的角色.本设计所实现的基于单片机技术的数字时钟系统具有功耗小、成本低的特点,具有很强的实用性,且系统具有一定的可扩展性。设计数字时钟的最终目的是能把它应用到实际中去。如十字路口交通灯的控制,车站的日期时间显示,实时控制系统以及仪器仪表,家用电器等各个领域。由于它的应用领域广,技术要求各不相同,但总体设计方法和研制步骤相同。相信随着科技的进步技术的发展与制作工艺的改进,单片机应用的广度和深度都会更进一步,基于单片机技术的各类生产生活用品会更加深刻地改变我们的生活。第二章 相关开发工具和软件介绍2。1 集成开发环境Keil C51单片机的程序设计需要在特定的编译器中进行。编译器完成对程序的

17、编译、连接等工作,并最终生成可执行文件。对于单片机程序的开发,一般采用Keil公司的Vison系列的集成开发环境,支持汇编语言以及C51等的程序设计。另一方面,C语言是一种编译型程序设计语言,它兼顾了多种高级语言的特点,并具备汇编语言的功能。目前,使用C语言进行程序设计已经成为单片机软件开发的一个主流.Keil Vison系列是德国Keil Software公司推出的51系列兼容单片机软件开发系统,Keil公司已经被ARM公司收购。Vison4是集成的可视化Windows操作界面,其提供了丰富的库函数和各种编译工具.能够对51系列单片机以及和51系列兼容的绝大部分类型的单片机进行设计.Viso

18、n系列是一个非常优秀的编译器,特点如下:支持汇编语言,C51语言等多种单片机设计语言;可视化的文件管理,界面友好;支持丰富的产品线,除了51及其兼容内核的单片机外,还新增加了对ARM内核产品的支持;具有完善的编译连接工具;具备丰富的仿真调试功能;支持在一个工作区间中进行多项目的程序设计;支持多级代码优化。Vison4集成开发环境是具有标准的Windows界面的应用程序,对于一个打开的项目工程,其界面效果图如下图1所示。图1 Vison4集成开发主界面首先启动Keil软件,使用“FileNew”可在项目窗口的右侧打开一个新的文本编辑窗口,可在窗口中输入C语言源程序.但在项目开发中,并不是仅有一个

19、源程序就行了,还要为这个项目选择CPU,确定编译、汇编、连接的参数,指定调试的方式,有一些项目还会有多个文件组成等,为管理和使用方便,Keil使用工程(Project)这一概念,将这些参数设置和所需的所有文件都加在一个工程中,只能对工程而不能对单一的源程序进行编译(汇编)和连接等操作。点击“FileNew Project”菜单,出现一个对话框,给将要建立的工程起一个名字,(设为test1).点击“保存,出现第二个对话框,如图2所示,选择CPU。回到主界面,此时在工程窗口的文件页中出现了“Target1”,点击“+”号展开,看到下一层的“Source Group1,这时的工程还是一个空工程,需要

20、手动将编好的源程序加入,点击“Source Group1的鼠标右键,选中“Add file to GroupSource Group1”,见图3,出现一个对话框,要求寻找源文件,为以c为扩展名的文件。 图2 选择CPU界面 图3 添加源程序到工程视图工程建立以后,还要对工程进行进一步的设置.点击Target1,然后使用菜单“ProjectOption for targettarget1”即出现对工程设置的对话框。设置对话框中的Target页面,如图4所示,Xtal是晶振频率值,设为24M。图4 Target页面设置对话框中的OutPut页面有多个选项,其中Creat Hex file用于生成可

21、执行代码文件(可以用编程器写入单片机芯片的HEX格式文件,文件的扩展名为.HEX),因为本设计要写片做硬件实验,必须选中该项,见图5。图5 设置生成。HEX文件2。2 仿真软件ProteusProteus是由英国Labcenter electronics公司开发的EDA工具软件。它从1989年出现到现在已经有二十余年的历史,在全球广泛使用。Proteus安装以后,主要由两个程序组成:Ares和Isis.前者主要用于PCB自动或人工布线及其电路仿真,后者主要采用原理布图的方法绘制电路并进行相应的仿真。除了上述基本应用之外,Proteus革命性的功能在于它的电路仿真是互动的,针对微处理器的应用,可

22、以直接在基于原理图的虚拟原型上编程,并实现软件代码级的调试,还可以直接实时动态地模拟按钮、键盘的输入,LED、液晶显示的输出,同时配合虚拟工具如示波器、逻辑分析仪等进行相应的测量和观测.值得注意的是该软件元件库具有超过27000种元器件,并且可方便地创建新元件,极大地提高了软件的全面性和可扩展性。3Proteus软件的应用范围十分广泛,涉及PCB制版、SPICE电路仿真、单片机仿真等,本文介绍利用Isis进行单片机的仿真,是单片机时钟设计重要的环节。其主界面如下图6所示。图6 Isis主界面下面介绍该软件的基本概念和基本操作:ISIS中坐标系统的基本单位是10nm,主要是为了和ARES保持一致

23、。坐标原点位于工作区的中间,所以既有正坐标值,又有负坐标值。坐标位置指示器位于屏幕的右下角。一旦实时捕捉(Real-Time Snap)功能使能,当鼠标指针指向管脚末端或者导线时,X、Y坐标之一或二者都被加亮显示,加亮显示说明鼠标指针位置已经被捕捉。例如,如果鼠标指针在一条横线附近,它将会被捕捉到Y轴,Y坐标将会被加亮。用鼠标左键点击预览窗口中想要显示的位置,这将使编辑窗口显示以鼠标点击处为中心的内容。在编辑窗口内移动鼠标,按下SHIFT键,用鼠标“撞击”边框,这会使显示平移。我们把这称为ShiftPan。用鼠标指向编辑窗口并按 缩放键(见下文),会以鼠标指针位置为中心重新显示。按F6键可以放

24、大电路图(连续按会不断放大直到最大),按F7键可以缩小电路图(类似的连续按会不断缩小直到最小),这两种情况无论哪种都会使显示以当前鼠标位置为中心重新显示。按F8键可以把一整张图缩放到完全显出来。图的大小可以通过View菜单的Zoom命令或者是上述的功能键控制。无论何时你都可以使用功能键控制缩放,即便是在滚动和拖放对象时。当鼠标指针指向管脚末端或者导线时,鼠标指针将会被捕捉到这些物体,这种功能被称为实时捕捉,该功能可以使你方便的实现导线和管脚的连接。可以通过Tools菜单的Real Time Snap 命令或者是CTRL+S切换该功能。对象选择器(Object Selector)根据由图标决定的

25、当前状态显示不同的内容.显示对象的类型包括:设备,终端,管脚,图形符号,标注和图形。在某些状态下,对象选择器有一个Pick切换按钮,点击该按钮可以弹出库元件选取窗体。通过该窗体可以选择元件并置入对象选择器,在今后绘图时使用。选中对象(Tagging an Object)用鼠标指向对象并点击右键可以选中该对象.该操作选中对象并使其高亮显示,然后可以进行编辑。选中对象时该对象上的所有连线同时被选中。要选中一组对象,可以通过依次在每个对象右击选中每个对象的方式。也可以通过右键拖出一个选择框的方式,但只有完全位于选择框内的对象才可以被选中。在空白处点击鼠标右键可以取消所有对象的选择。拖动对象(Drag

26、ging an Object)用鼠标指向选中的对象并用左键拖曳可以拖动该对象。该方式不仅对整个对象有效,而且对对象中单独的labels也有效。调整对象大小(Resizing an Object)子电路(Sub-circuits)、图表、线、框和圆可以调整大小。当你选中这些对象时,对象周围会出现白色小方块叫做“手柄”,可以通过拖动这些“手柄”来调整对象的大小。编辑对象(Editing an Object)许多对象具有图形或文本属性,这些属性可以通过一个对话框进行编辑,这是一中很常见的操作,有多种实现方式.画线(Wire Placement)左击第一个对象连接点。如果你想让ISIS自动定出走线路径

27、,只需左击另一个连接点。另一方面,如果你想自己决定走线路径,只需在想要拐点处点击鼠标左键。一个连接点可以精确的连到一根线.在元件和终端的管脚末端都有连接点.一个圆点从中心出发有四个连接点,可以连四根线。由于一般都希望能连接到现有的线上,ISIS也将线视作连续的连接点。此外,一个连接点意味着3根线汇于一点,ISIS提供了一个圆点,避免由于错漏点而引起的混乱。用该软件设计的电路原理图如下面图7。图7 电路原理图第三章 系统概述3。1 系统框图系统总体结构框图见下图8。图8 系统框图3.2 系统硬件概述系统设计涉及的主要硬件包括STC11F32XE单片机芯片一块、时钟芯片DS1302、NOKIA51

28、10显示屏和一个44矩阵键盘。STC11F32XE单片机芯片实现该设计的核心的运算控制,时钟芯片DS1302实现时间的输出,NOKIA5110显示屏实现时间、文字等的输出显示,44矩阵键盘实现各按键的不同输入实现。详细介绍见第四章第一节的系统硬件实现部分,在此不熬述。系统软件部分主要涉及DS1302时钟芯片编程,NOKIA5110显示屏编程及矩阵键盘编程。DS1302时钟芯片:设置初始时间,从读寄存器中读出时间暂存于单片机内存中,进而送入显示缓冲区。NOKIA5110显示屏:设置(X,Y)坐标,设计时间文字等在显示屏上显示的位置,从单片机内存中读取并送入显示缓冲区.矩阵键盘:计算出各按键的特征

29、编码,然后将16个按键的特征编码按图15按键排列的顺序排成一张特征编码与顺序编码的对应关系表,然后用当前读得的特征编码来查表,当表中有该特征编码时,它所在的位置就是对应的顺序编码.第四章 系统的实现4.1 系统的硬件实现4。1.1 基本概念单片机:单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。单片机和嵌入式区别:单片机是使用MCU就是微控制器领域的,

30、一般程序都是面向控制的,像一些仪器。嵌入式一般都是带操作系统的,像ARM+LINUX一般像手机,平板电脑等。这是说一般会想到的领域。从定义上来说,单片机是一个微型控制芯片,把各个功能部件结合到一块芯片上中,构成一个完整的微型计算机。嵌入式就是嵌入到一些东西里面的计算机系统,它强调的是系统,像带操作系统什么的.晶振(Crystal oscillator):一般叫做晶体振荡器,是一种机电器件,是用电损耗很小的石英晶体经精密切割磨削并镀上电极焊上引线做成.这种晶体有一个很重要的特性,如果给它通电,它就会产生机械振荡,反之,如果给它机械力,它又会产生电,这种特性叫机电效应。他们有一个很重要的特点,其振

31、荡频率与他们的形状,材料,切割方向等密切相关。由于石英晶体化学性能非常稳定,热膨胀系数非常小,其振荡频率也非常稳定,由于控制几何尺寸可以做到很精密,因此,其谐振频率也很准确。根据石英晶体的机电效应,我们可以把它等效为一个电磁振荡回路,即谐振回路。他们的机电效应是机电-机-电的不断转换,由电感和电容组成的谐振回路是电场-磁场的不断转换.在电路中的应用实际上是把它当作一个高Q值的电磁谐振回路。由于石英晶体的损耗非常小,即Q值非常高,做振荡器用时,可以产生非常稳定的振荡,作滤波器用,可以获得非常稳定和陡削的带通或带阻曲线。4本文为互联网收集,请勿用作商业用途文档为个人收集整理,来源于网络总线(Bus

32、):是计算机各种功能部件之间传送信息的公共通信干线,它是由导线组成的传输线束,按照计算机所传输的信息种类,计算机的总线可以划分为数据总线、地址总线和控制总线,分别用来传输数据、数据地址和控制信号.总线是一种内部结构,它是CPU、内存、输入、输出设备传递信息的公用通道,主机的各个部件通过总线相连接,外部设备通过相应的接口电路再与总线相连接,从而形成了计算机硬件系统。在计算机系统中,各个部件之间传送信息的公共通路叫总线,微型计算机是以总线结构来连接各个功能部件的。文档为个人收集整理,来源于网络个人收集整理,勿做商业用途仿真、仿真机:仿真是单片机开发过程中非常重要的一个环节,一般产品开发过程中都要进

33、行仿真,仿真的主要目的是进行软件调试。当然借助仿真机,也能进行一些硬件排错。一块单片机应用电路板包括单片机部份及为达到使用目的而设计的应用电路,仿真就是利用仿真机来代替应用电路板(称目标机)的单片机部份,对应用电路部份进行测试、调试。4.1.2 51单片机概述51单片机是对目前所有兼容Intel 8031指令系统的单片机的统称。该系列单片机的始祖是Intel的8031单片机,后来随着Flash ROM技术的发展,8031单片机取得了长足的进展,成为目前应用最广泛的8位单片机之一,其代表型号是ATMEL公司的AT89系列,它广泛应用于工业测控系统之中。STC公司的单片机主要是基于8051内核,是

34、新一代增强型单片机,指令代码完全兼容传统8051,速度快8-12倍,双串口,有全球唯一ID号,加密性好,抗干扰强。目前很多公司都有51系列的兼容机型推出。51单片机是基础入门的一个单片机,还是应用最广泛的一种.下面图9为89C51芯片。图9 89C51芯片51单片机有8位CPU,4K程序存储器(ROM);256B的数据存储器(RAM);32条I/O口线,111条指令,大部分为单字节指令;21个专用寄存器;2个可编程定时/计数器;5个中断源,2个优先级;一个全双工串行通信口;外部数据存储器寻址空间为64kB;外部程序存储器寻址空间为64kB;逻辑操作位寻址功能;双列直插40管脚;单一+5V电源供

35、电;CPU:由运算和控制逻辑组成,同时还包括中断系统和部分外部特殊功能寄存器;RAM:用以存放可以读写的数据,如运算的中间结果、最终结果以及欲显示的数据;ROM:用以存放程序、一些原始数据和表格;I/O口:四个8位并行I/O口,既可用作输入,也可用作输出;T/C:两个定时/记数器,既可以工作在定时模式,也可以工作在记数模式;五个中断源的中断控制系统;一个全双工UART(通用异步接收发送器)的串行I/O口,用于实现单片机之间或单片机与微机之间的串行通信;片内振荡器和时钟产生电路,石英晶体和微调电容需要外接.最高振荡频率为12M。1,2STC11F32XE单片机内部结构框图如下面图10,包含中央处

36、理器(CPU)、程序存储器(Flash)、数据存储器(SRAM)、定时/计数器、UART串口、I/O接口等。图10 STC11F32XE单片机内部结构框图STC11F32XE单片机工作电压(V)为5.53.7,Flash程序存储器为32K,SRAM为1280字节,有定时器T0T1,12个UART串口,有独立波特率发生器,EEPROM为29K,中断优先级为2.芯片见图11.Gnd(20脚):接地VCC(40脚):主电源+5VP0.0-P0。7(39脚-32脚):是P0口8位双向口线。P0口是漏极开路的双向I/O口,当使用片外存储器(ROM及RAM)时,作地址和数据总线分时复用.在程序校验期间,输

37、出指令字节。P1.0-P1。7(1脚-8脚):是P1口8位双向口线。P1口是准双向I/O口,具有内部上拉电阻。P2.0-P2。7(21脚-28脚):是P2口8位双向口线。P2口也是准双向I/O口,具有内部上拉电阻.当使用片外存储器(ROM及RAM)时,输出高8位地址。P3.0P3。7(10脚17脚):是P3口8位双向口线.P口也是准双向I/O口,具有内部上拉电阻。P3还提供各种替代功能。XTAL1(19脚):接外部晶体一端,在片内它是振荡电路反相放大器的输入端。XTAL2(18脚):接外部晶体的另一端。在片内它是一个振荡电路反相放大器的输出端。RST(9脚):单片机刚接上电源时,其内部各寄存器

38、处于随机状态,在该脚输入24个时钟周期宽度以上的高电平将使单片机复位。ALE/P4。5(30脚):在访问片外程序存储器时,此端输出负脉冲作为存储器读选通信号。NA/P4。4(29脚):可作为I/O接口使用,有4种工作方式。NA/P4。6(31脚):可作为I/O接口使用,有4种工作方式。图11 STC11F32XE芯片4.1。3 DS1302芯片过去多用并行接口的时钟芯片,如MC146818,DS12887等,它们已能完全满足单片机系统对实时时钟的要求,但是这些芯片与单片机接口复杂、占用地址/数据总线接线多、芯片体积大占用空间多。近年来串行接口的各种芯片在单片机系统中应用愈来愈多,串行接口的实时

39、时钟芯片也出现了不少,DS1302是一个综合性能较好且价格便宜的串行接口实时时钟芯片。DS1302原理框图见图12所示。DS1302包含一个实时时钟/日历和31字节的静态RAM,它和单片机通信经由一个简单的串行接口。实时时钟/日历提供秒、分、时、日、周、月、年信息,月末日期自动调整,包括闰年的修正。时钟可工作在24小时格式或12小时(AM/PM)格式,单片机与DS1302接口使用同步串行通信,仅需三根线连接:(1)/RST(复位),(2)I/O(串行数据),(3)SCLK(串行时钟)。数据传送从单片机到实时时钟/RAM或实时时钟/RAM到单片机,可以每次1字节或每次31字节.它可以工作在很低的

40、耗电状态以保存时钟信息和数据,功耗小于1微瓦。图12 DS1302原理图4。1.4 LCD芯片和阵列式键盘NOKIA5110液晶屏LPH7366可以显示15个汉字,30个字符,性价比高,接口简单,速度快。图13为该屏原理图。图13 NOKIA5110液晶屏原理图LPH7366是84x48的点阵LCD,可以显示4 行汉字,采用串行接口与主处理器进行通信,接口信号线数量大幅度减少,包括电源和地在内的信号线仅有9条。支持多种串行通信协议,传输速率高达4Mbps(即1M/s),可全速写入显示数据,无等待时间。可通过导电胶连接模块与印制版,而不用连接电缆,用模块上的金属钩可将模块固定到印制板上,因而非常

41、便于安装和更换。LCD控制器驱动器芯片已绑定到LCD晶片上,模块的体积很小。采用低电压供电,正常显示时的工作电流在200A以下,且具有掉电模式。LPH7366的这些特点非常适合于电池供电的便携式通信设备和测试设备中。矩阵键盘又称为行列式键盘,4*4矩阵键盘使用4条I/O线作为行线,4条I/O线作为列线组成的键盘。在行线和列线的每一个交叉点上,设置一个按键。这样键盘中按键的个数是44个.这种行列式键盘结构能够有效地提高单片机系统中I/O口的利用率.图14为矩阵键盘电路图,行线接P1。4-P1。7,列线接P1.0P1.3。图14 矩阵键盘电路图按键排列如图15。图15 按键排列图4.1。5 电路的

42、详细设计LCD单元的设计,见图16.图16 LCD单元设计图时钟单元的设计,见图17.图17 时钟单元设计图主控单元的设计,见图18。图18 主控单元设计图矩阵键盘单元的设计,见图19。图19 矩阵键盘单元设计图最终在ISIS中仿真的电路图见下面图20。5-13图20 在ISIS中仿真电路图4。2 系统的软件实现4。2.1 字模软件ZIM0221本设计采用ZIM0221进行字模的生成和提取,其主界面见图21.图21 ZIM0221主界面点击“新建图像”,提取字模应设为1616大小,在文字区输入要取字模的文字,按“Ctrl+Enter”键,在新建区域显示该字,再点击“取模方式”中的“C 51”,

43、即生成该字的字模。若给图片取字模,点击“打开图像图标,后续操作同取字模.4.2。2 文字显示的实现汉字的显示采用图形的方式,事先从微机中提取要显示的汉字的点阵码(用字模提取软件),每个汉字占32B,分上下两半,根据在LCD上开始显示的行列号及每行的列数可找出显示RAM对应的地址,设立光标,送上要显示的汉字的第一字节,光标位置加1,送第二个字节,换行按列对齐,送第三个字节直到32B显示完就可以在LCD上得到一个完整汉字。依此循环进行,直至所有汉字全部显示在LCD上.4。2。3 图片显示的实现图片显示的原理和汉字一样,只不过它的高和宽不再是个定值,而是一个变量,把高先分成8的倍数,然后一行一行扫描

44、,不足的补零。4。2.4 键盘功能的实现先从P1口的高四位输出低电平,低四位输出高电平,从P1口的低四位读取键盘状态.再从P1口的低四位输出低电平,高四位输出高电平,从P1口的高四位读取键盘状态。将两次读取结果组合口起来就可以得到当前按键的特征编码。使用上述方法我们得到16个键的特征编码。4。2.5 基于单片机的数字时钟的实现DS1302时钟芯片内含一个实时时钟/日历和31字节静态RAM,通过简单的串行接口与单片机进行通信,实时时钟/日历电路提供秒分时日年月的信息,与单片机之间仅需用到三个口线:RES复位、I/O数据线、SCLK。管脚接线:X1 X2 32.768KHz 晶振管脚GND 地RS

45、T 复位脚I/O数据输入/输出引脚SLCK 串行时钟Vcc1,Vcc2 电源供电管脚内部寄存器:CH:时钟停止位寄存器2的第7位12/24小时标志CH=0 振荡器工作允许bit=1,12小时模式CH=1 振荡器停止bit7=0,24小时模式WP:写保护位寄存器的第5位:AM/PM定义WP 寄存器数据能够写入AP=0 下午模式WP 寄存器数据不能写入AP=1 上午模式TCS:涓流充电选择 DS:二极管选择位TCS=1010 使能涓流充电 DS=01 选择一个二极管TCS=其它 禁止涓流充电 DS=10 选择两个二极管DS=00或11,即使TCS=1010,充电功能也被禁止实现时钟功能的几个主要环

46、节包括:实时时钟写入一字节、实时时钟读取一字节、往DS1302写入数据、读取DS1302某地址的数据、往DS1302写入时钟数据(多字节方式)、读取DS1302时钟数据、往DS1302寄存器数写入数据(多字节方式)先写地址后写数据(寄存器多字节方式)、读取DS1302寄存器数据先写地址后读命令/数据(寄存器多字节方式)、设置初始时间先写地址,后读命令/数据(寄存器多字节方式),读取DS1302当前时间。核心代码见下:设置时间在LCD上的显示位置:LCD_set_XY(0,0);for(i=0x00;i4;i+)ti=ti+0x30;LCD_write_char(ti);LCD_write_char(/);for(i=0x04;i6;i+)ti=ti+0x30;L

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 学术论文 > 毕业论文/毕业设计

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服