




已阅读5页,还剩23页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
辽 宁 工 业 大 学 课 程 设 计 说 明 书 (论文)辽 宁 工 业 大 学单片机原理及接口技术课程设计(论文)题目: 仿真计算器的设计 院(系): 电气工程学院 专业班级: 自动化104 学 号: 100302106 学生姓名: 黄恩宾 指导教师: 起止时间:2013.7.3-2013.7.12 本科生课程设计(论文)摘 要随着科学的不断进步,我们的生活已经离不开电子产品了,可以说这次时代是电子的时代,市场是电子的市场。大到航天科技板块,小到家庭用的洗衣机,电话煲等等都是电子技术的衍生物。现在的嵌入式系统已经进入的一个新的阶段。全自动洗衣机之所以能够完成独自洗衣任务,汽车防盗系统能够真正发挥功能都是应为加入了单片机还有编写了程序,使得他们能够给我们的生活带来这么多的方便。可以说单片机系统改变的大家的生活,使得我们的生活变得丰富多彩。计算器我相信大家都用过,它给大家带来了计算的方便和计算的快捷。是人们的日常生活中是比较常见的电子产品之一。可是它还在发展之中,以后必将出现功能更加强大的计算器。本文基于对单片机AT89C51的理解和运用,结合8279 做一个简易的计算器,实现基本功能加减乘除。利用显示电路和键盘电路,做一个简单的计算器。采用十进制,A键为加法,B键为减法,C键为乘法,D键为除法,E为等于,F键为清除,计算值在4位LED显示屏上显示。关键词:单片机;计算机;十进制;LED目 录第1章 绪论11.1 概述11.2 系统完成的主要功能1第2章 方案设计22.1 控制原理图22.2 系统模块图2第3章 硬件设计33.1 CPU的选择33.1.1 单片机的概述33.1.2 复位电路设计43.1.3 时钟电路设计53.1.4 CPU最小系统图53.2 键盘显示芯片827963.2.1 8279的主要特点63.2.2 8279引脚说明73.2.3 8279控制字83.3 输入电路103.4 显示模块113.5 蜂鸣器设计12第4章 软件设计134.1 输入模块流程图134.2 显示函数流程图144.3 总体程序流程图15第5章 课程设计总结16参考文献17附录118附录224V第1章 绪论1.1 概述近几年单片机技术的发展很快,其中电子产品的更新速度迅猛。计算器是日常生活中比较的常见的电子产品之一。如何才能使计算器技术更加的成熟,充分利用已有的软件和硬件条件,设计出更出色的计算器本设计是以AT89S52单片机为核心的计算器模拟系统设计,输入采用44矩阵键盘,可以进行加、减、乘、除9位带符号数字运算。在信息时代的今天我们身边到处都可以看到各种电子产品,电子产品功能和作用也越来越强大,出现的什么智能电饭煲,全自动洗衣机等等,他们为什么能够发挥这些功能呢?是因为人们采用了单片机,单片机利用其自身优势,给人类带来了巨大的快捷和方便,整个社会中可以说人们对单片机的利用是源源不断的,各行都在使用它,他被用在了智能仪表上,在工业控制中也能找到它,单片机在家用电器,计算器网络及通信领域中,医药设备,大型电器模块和汽车中都发挥着重要作用。单片机可以说改变了整个社会彻底改变了人们的生活。对于单片机开发和编译人们一直都在努力挖掘。我这里运用单片机结合自己所学,做一个简易计算器,实现加减乘除功能,利用c语言作为软件部分进行。此次论文的价值和核心在于倡导自己把所学知识运用到现实生活,为现实生活服务,把自己的知识转化为实物哪怕是很简单的物件,很简单的功能,但真真切切的让自己感受到创造的快乐,为自己今后的工作做好铺垫,往后通过更多的学习,更多的尝试,把知识的作用真正发挥出来,改变大家的生活。1.2 系统完成的主要功能 现实生活中人们熟知的计算器,其功能主要如下:(1)键盘输入;(2)数值显示;(3)加、减、乘、除四则运算;(4)对错误的控制及提示。 针对上述功能,计算器软件程序要完成以下模块的设计:(1)键盘输入检测模块;(2)LED显示模块;(3)算术运算模块;(4)蜂鸣器提示模块。第2章 方案设计2.1 控制原理图本设计主要采用AT89C52单片机和键盘显示芯片8279,CUP存入和读出内存数据。控制原理图如图2.1所示 CPU AT89C528279内存控制输入存入读取数据 图2.1 控制原理图2.2 系统模块图AT89C528279数码管显示按键蜂鸣器图2.2系统模块图第3章 硬件设计3.1 CPU的选择3.1.1 单片机的概述单片微型计算机简称单片机,又称微控制器,嵌入式微控制器等,属于第四代电子计算机。它把中央处理器、存储器、输入/输出接口电路以及定时器计数器集成在一块芯片上,从而具有体积小、功耗低、价格低廉、抗干扰能力强且可靠性高等特点,因此,适合应用于工业过程控制、智能仪器仪表和测控系统的前端装置。因此,在本课题设计的电液比例阀控制系统中,采用单片机来实现,选用AT89S52单片机。AT89S52单片机的引脚说明: 图3.1 AT89S52单片机的引脚VSS : 接地端。VCC: 电源端。正常操作及对FLASH ROM编程和验证时接+5V电源。P0口:是双向8位三态 I/O口。在访问外部存储器时,可分时用作低8位地址线和8位数据线;在FLASH ROM编程时,它输入指令字节,而在验证程序时,则输出指令。P0口能驱动8个LSTTL门电路。P1口: 是一个具有内部上拉电阻的8 位双向I/O 口。在对FLASH ROM编程和程序验证时,它接受低8位地址。能驱动4 个LSTTL 门电路。P2口:P2口是一个具有内部上拉电阻的8 位双向I/O口。在访问外部存储器时,它送出高8位地址。在对FLASH ROM编程和程序验证时,它接收高8位地址和其他控制信号。能驱动4 个LSTTL 门电路。P3口:P3口是一个具有内部上拉电阻的8 位双向I/O 口,能驱动4 个LSTTL 门电路。RST: 复位信号输入端,高电平有效。当振荡器工作时,出现两个机器周期以上的高电平,就可以使单片机复位。ALE/PROG:地址锁存允许信号。PSEN:外部程序存储器选通信号。EA/VPP:访问内、外部程序存储器控制信号。接高电平时,CPU访问并执行内部程序存储器的指令,但当程序计数器值超过0FFFH时,将自动转去执行外部程序存储器中的程序。接低电平时,CPU只访问并执行外部程序存储器中的指令。XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。XTAL2:振荡器反相放大器的输出端。3.1.2 复位电路设计复位电路和时钟电路是维持单片机最小系统运行的基本模块。复位是单片机的初始化操作。单片机系统在上电启动运行时,都需要先复位,其作用是使CPU和系统中其他部件都处于一个确定的初始状态,并从这个状态开始工作。因此,复位是一个很重要的操作方式。但单片机本身不能自动复位的,必须配合相应的外部复位电路才能实现的,如图3.2所示。当AT89S52通电,时钟电路开始工作,在单片机的RST引脚加上大于24个时钟周期以上的正脉冲,系统即初始复位。初始化后,程序计数器PC指向0000H,P0P3输出口全部为高电平,堆栈指针写入07H,其他专用寄存器被清0。RST由高电平降为低电平后,系统从0000H地址开始执行程序。图3.2 复位电路3.1.3 时钟电路设计单片机的各个功能部件的运行都是以时钟控制信号为基准,有条不紊的一拍一拍的工作。因此,时钟频率直接影响到单片机的速度。片内电路与片外器件就构成一个时钟产生电路,CPU的所有操作均在时钟脉冲同步下进行。片内振荡器的振荡频率非常接近晶振频率,一般多在1.2MHz24MHz之间选取。C1、C2是反馈电容,其值在20pF100pF之间选取,典型值为20pF。本电路选用的电容为20pF,晶振频率为12MHz。常用的时钟电路设计有两种方式,一种是内部时钟方式,另一种是外部时钟方式,如图3.3。图3.3 晶振电路3.1.4 CPU最小系统图CPU最小系统图由AT89C52单片机、数据扩展芯片、时钟电路和复位电路构成,如图3.4所示。AT89C52单片机最小系统复位电路的极性电容C1的大小直接影响单片机的复位时间,AT89C52单片机最小系统容值越大需要的复位时间越短。AT89C52单片机最小系统晶振的振荡频率直接影响单片机的处理速度,频率越大处理速度越快。图3.4 单片机最小系统图3.2 键盘显示芯片82793.2.1 8279的主要特点 INTEL8279是一种可编程键盘/显示器接口芯片,它含有键盘输入和显示器输出两种功能。键盘输入时,它提供自动扫描,能与键盘或传感器组成的矩阵相连,接收输入信息。它能自动消除开关抖动并能对多键同时按下提供保护。显示输出时,它有一个168位显示RAM,其内容通过自动扫描,可由8或16位LED数码管显示。(1)可同时进行键盘扫描及文字显示; (2)键盘扫描模式(Scanned Keyboard Mode); (3)传感器扫描模式(Scanned Sensor Mode); (4)激发输入模式(Strobe Input Entry Mode); (5)8乘8键盘FIFO(先进先出); (6)具有接点消除抖动,2键锁定及N键依此读出模式; (7)双排8位数或双排16位数的显示器; (8)右边进入或左边进入。16位字节显示存储器3.2.2 8279引脚说明 图3.5 8279的引脚(1)DB0DB7:双向数据总线。在CPU与8279间做数据与命令传送。 (2)CLK:8279的系统时钟,100KHz为最佳选择。 (3)RESET:复位输入线。输入HI时可复位8279。 (4)CS:芯片选择信号线。当这个输入引脚为低电平时,可将命令写入8279或读取8279的数据。 (5)A0:缓冲器地址选择线。A0=0时,读写一般数据;A0=1时,读取状态标志位或写入命令。 (6)RD:读取控制线。RD=0时,8279输送数据到外部总线。 (7)WR:写入控制线。WR=0时,8279从外部总线接收数据。 (8)IRQ:中断请求。平常IRQ为LO,在键盘模式下,每次读取FIFO/SENSOR RAM的数据时,IRQ变为HI,读取后转为LO;在传感器模式下,只要传感器一有变化,就会使IRQ变为HI,读取后转为LO。 (9)SL0SL3:扫描按键开关或传感器矩阵及显示器,可以是编码模式(16对1)或解码模式(4对1)。 (10)RL0RL7:键盘/传感器的返回线。无按键被按时,返回线为HI;有按键被按时,该按键的返回线为LO。在激发输入模式时,为8位的数据输入。 (11)SHIFT:在键盘扫描模式时,引脚的输入状态会与其它按键的状态一同储存(在BIT6),内部有上拉电阻,未按时为HI,按时为LO。 (12)CNTL/STB:在键盘扫描模式时,引脚的输入状态会与SHIFT以及其它按键的状态同一储存,内部有上拉电阻,未按时为HI,按时为LO。在激发输入模式时,作为返回线8位数据的使能引脚。 (13)OUTA0OUTA3:动态扫描显示的输出口(高4位)。 (14)OUTB0OUTB3:动态扫描显示的输出口(低4位)。 (15)BD:消隐输出线。3.2.3 8279控制字8279共有8条命令字,其格式与功能如下:(1) 键盘/显示方式设置命令:命令字格式与功能说明如表3.1: 表3.1命令字格式与功能D7D6D5D4D3D2D1D0000DDKKKD7、D6、D5为000,为方式设置命令特征位。D4、D3为显示方式设定位,共有以下四种显示方式,见下表3.2:表3.2 8279显示方式D4D3显示方式008字符显示,左边输入0116字符显示,左边输入108字符显示,右边输入1116字符显示,右边输入D2、D1、D0为键盘/显示工作方式设定位,共有以下7种工作方式见下表3.3:表3.3 8279键盘/显示工作方式D2D1D0工作方式000编码扫描键盘,双键锁定输出001译码扫描键盘,双键锁定输出010编码扫描键盘,N键依次读出011译码扫描键盘,N键依次读出100编码扫描传感器矩阵101译码扫描传感器矩阵110选通输入,编码显示扫描111选通输入,译码显示扫描(2)时钟编程命令:时钟编程命令字格式及功能说明如下表3.4: 表3.4 时钟编程命令字格式D7D6D5D4D3D2D1D0001PPPPPD7、D6、D5为001,是时钟编程命令特征位。D4、D3、D2、D1、D0用于设定对CLK输入端输入的外部时钟信号进行分频的分频系数N。若外部时钟频率为2MHz,PPPPP被设置为10100(N=20),即可产生8279内部要求的100KHz基本时钟信号。(3)读FIFO/传感器RAM命令:读FIFO/传感器RAM命令字格式及功能说明如下表3.5: 表3.5 读FIFO/传感器RAM命令字D7D6D5D4D3D2D1D0010AIAAAD7、D6、D5为010,是读FIFO/传感器RAM命令特征位。D4(AI)为自动递增设定位。当该位为0时,每次读完传感器RAM的数据后地址不变;当该位为1时,每次读完传感器RAM的数据后地址自动加1,下一个数据便从下一个地址读出,不必重新设置读FIFO/传感器RAM命令。D2、D1、D0为FIFO/传感器RAM地址。(4)读显示RAM命令:读显示RAM命令字格式及功能说明如下表3.6: 表3.6 读显示RAM命令字格式及功能D7D6D5D4D3D2D1D0011AIAAAAD7、D6、D5为011,是读显示RAM命令特征位。D4(AI)为自动递增设定位。该位为1时,每次读数后地址自动加1。D3、D2、D1、D0为显示RAM的存储单元地址。(5)写显示RAM命令:该命令字格式及功能说明如下表3.7: 表3.7 写显示RAM命令D7D6D5D4D3D2D1D0100AIAAAAD7、D6、D5为100,是写显示RAM命令特征位。D4(AI)为自动递增设定位。该位为1时,每次写入数据后地址自动加1。D3、D2、D1、D0为待写入显示RAM的存储单元地址。(6)显示禁止写入/消隐命令:显示禁止写入/消隐命令字格式及功能说明如下表3.8: 表3.8 显示禁止写入/消隐命令D7D6D5D4D3D2D1D0101IWAIWBBLABLBD7、D6、D5为101,是显示禁止写入/消隐命令特征位。D3、D2为A、B组显示RAM写入屏蔽位。当D3=1时,A组的显示RAM禁止写入,从CPU写入显示RAM数据时,不会影响A的显示,这种情况通常用于双4位显示器。当D2=1时,可屏蔽B组显示器。D1、D0为A、B组的消隐设置位。D1(或D0)为1,则对应的A(或B)组显示输出熄灭,该位为0,则显示恢复。3.3 输入电路键盘输入预置用于计算,按键较多。若是采用独立按键,需频繁按键,为软件设计增加负担,且操作界面不友好;若是采用矩阵式按键,可以方便地输入一个数值,使操作界面更具有人性化,且节约了宝贵的I/O口资源。通用计算机使用的键盘就是编码键盘。在智能仪器中,使用并行接口芯片8279或串行接口HD7279均可以组成编码键盘,同时还可以兼顾数码管的显示驱动,其相关的接口电路和接口软件均可在芯片资料中得到。当系统功能比较复杂,按键数量很多时,采用编码键盘可以简化软件设计。图 3.5 键盘电路本实验提供了一个44的小键盘,如果有键按下,则相应行的值应为低,如果无键按下,由于上拉的作用,行码为高.这样就可以通过输出的列码和读取的行码来判断按下的是什么键。在判断有键按下后,要有一定的延时,防止键盘抖动。3.4 显示模块采用LED数码管的动态显示,其特点是:其亮度比静态显示的亮度要差一些;但其电路比较简单,适合于显示位数较多的情况。如图3.6所示。图 3.6 4位数码管的动态显示本实验仪提供了4段码数码管LED显示电路,只要按地址输出相应数据,就可以实现对显示器的控制。显示共有4位,采用动态方式显示。4段数码管是由8155的PB0、PB1经74LS164“串转并”后输出得到。4位位码由8155的PA0口输出,经uA2003反向驱动后,选择相应显示位。3.5 蜂鸣器设计蜂鸣器与家用电器上面的喇叭在用法上也有相似的地方,通常工作电流比较大,电路上的TTL电平基本上驱动不了蜂鸣器,需要增加一个电流放大的电路才可以,这一点与家用电器中的功放有相似之处。由上所述,一个管脚很难驱动蜂鸣器发出声音,所以增加了一个三极管来增加通过蜂鸣器的电流,如图2.7原理图。图3.10 蜂鸣器电路图第4章 软件设计4.1 输入模块流程图图3.2输入输出模板流程图流程图用到的控制字控制字00H: 键盘/显示方式设置命令,8字符显示,左边输入,编码扫描键盘,双键锁定输出控制字0D1H: 清除命令,将显示RAM全部清0控制字40H: 读写FIFO/传感器RAM命令控制字0C2H: 清除命令, 清空FIFO RAM4.2 显示函数流程图 图3.3 显示函数流程图控制字0D1H: 清除命令,将显示RAM全部清0控制字40H: 读写FIFO/传感器RAM命令4.3 总体程序流程图图3.4总体程序流程图第5章 课程设计总结本课设设计是以单片机AT89C52为核心的简易计算器设计,要通过芯片AT89C51实现计算器程序运行来完成加、减、乘和除的简单计算功能。本设计运算模块由AT89C52实现,数据输入模块由4*4矩阵键盘电路实现,输出数据模块由LED显示电路实现,再外加一个时钟电路和一个复位电路完成整个简易计算器的设计。完成了键盘输入;数值显示;加、减、乘、除四则运算;控制及提示功能。通过8279完成对键盘,显示器的输入输出接收和控制,通过蜂鸣器完成对按键的提示。本设计主要由以下几部分组成:AT89C52单片机系统(运算模块)、键盘电路、显示电路、时钟电路和复位电路构成参考文献1 梅丽凤等编著.单片机原理及接口技术.清华大学出版社,2009.72 赵晶主编.Prote199高级应用.人民邮电出版社, 2000 3 于海生编著.微型计算机控制技术.清华大学出版社 2003.44 苏家健 曹柏荣 汪志锋编著 .单片机原理及应用技术 2004.115林志琦.单片机原理接口及应用.北京:北京水利水电出版社,2007.6张友德.赵金英.涂时亮.单片微型计算机原理.应用与实验(第四版)M.上海:复旦大学出版社,2003.7周荷琴.吾秀清主编.微机原理与接口技术. 合肥:中国科学技术出版社 20078李恩林.陈斌生主编.微机接口技术300例.北京:机械工业出版社 2003 9贾金铃主编.微型计算机原理及应用理论,实验.课程设计.重庆:重庆大学出版社 200610 徐爱钧.智能化测量控制仪表原理与设计(第二版).北京航天航空大学出版社,2004.9 11 孙育才等MCS-51系列单片微型计算机及其应用(第4版)东南大学出版社,2004,312 李萍 等智能仪器实验指导书大连交通大学,2007.913彭传良.电子计算器键盘与单片机的接口技术及其应用J. 气象水文海洋仪器 ,1999(02):40-44.14万冬.王玥玥.电子设计实战训练之六:简单计算器J.电子制作,2008(11):28-31.15张庆锋.计算器LCD显示屏与单片机的简单接口J.电子技术应用,1996(02):23-25.附录1主程序图:Z8279 EQU 212HD8279 EQU 210HLEDMOD EQU 00000000B ;左边输入,八位显示,外部译码八位显示DATA SEGMENTDATA1 DB 0,0,0,0,0 ;第一个数据(作为被减数)DATA2 DB 0,0,0,0,0 ;第二个数据(作为减数)DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,ES:DATASTART: PUSH CS POP DS PUSH CS POP ES MOV DX,Z8279 MOV AL,LEDMOD OUT DX,AL MOV DX,Z8279 ;清FIFO RAM寄存器 MOV AL,0D1H OUT DX,AL KAISHI: MOV SI,OFFSET DATA1 MOV BX,10 Q1: MOV BYTE PTRSI+BX-1,0;数据区清零 DEC BX JNZ Q1 CALL SHURU ;读取第一个字符 MOV SI,AL ;存入第一个字符 MOV BX,1 CALL DISPL CALL SHURU ;输入第二个字符 CMP AL,0 JB T1 MOV BL,BYTE PTRSI MOV BYTE PTRSI,AL MOV BYTE PTRSI+1,BL MOV BX,2 CALL DISPL SHURU ; MOV SI,OFFSET DATA2 MOV BYTE PTRSI,AL ;输入第三个字符 MOV BX,1 CALL DISPL CALL SHURU CMP AL,= JZ T99 ;计算跳转 MOV BL,BYTE PTRSI ;输入第四个字符 MOV BYTE PTRSI,AL MOV BYTE PTRSI+1,BL MOV BX,2 CALL DISPL CALL SHURU T99: JMP JISUAN WAIIT: NOP IN AL,DX MOV BL,AL AND AL,80H CMP AL,80H JE WAIIT ;FIFO正在清除期间则跳转等待 MOV AL,BL AND AL,0FH CMP AL,00H JE WAIIT ;无键按下则等待 MOV AL,40H ;写 读FIFO RAM命令字 OUT DX,AL MOV DX,D8279 ;读入FIFO RAM内容 IN AL,DX NOP CMP AL,11 JNZ T101 MOV DX,Z8279 MOV AL,0D1H OUT DX,AL ;置空FIFO寄存器WAIIT1: IN AL,DX MOV BL,AL AND AL,80H CMP AL,80H JE WAIIT1 JMP KAISHIT101: LEA BX,LEE XLAT RETSHURU ENDPDISPL PROC ;显示子功能 PUSH BX MOV DX,Z8279 MOV AL,0D1H OUT DX,AL ;置空FIFO寄存器 WAIIT4: IN AL,DX MOV BL,AL AND AL,80H CMP AL,80H JE WAIIT4 POP BX MOV AL,40H OUT DX,AL MOV DX,D8279 MOV AL,SI+4 CMP AL,E JNZ DSI8 MOV AL,79H OUT DX,AL JMP DSI9 DSI8: MOV AL,SI+BX-1 CMP AL,0 JA DSI0 DEC BX JNZ DSI8 MOV AL,3FH ;显示0 OUT DX,AL RET DISPL ENDP JISUAN: MOV SI,OFFSET D
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年新能源技术创新商业模式创新策略研究报告
- 有机知识竞赛试题及答案
- 务干部竞赛试题及答案
- 化学竞赛试题及答案解析
- 工程水保方案报告(3篇)
- 城市地下空间综合开发利用项目2025年环境影响因素评估报告
- 安全生产责任培训制内容课件
- 老年人大学安全培训计划课件
- 工程室外施工方案(3篇)
- 五、使用电子邮件教学设计-2025-2026学年初中信息技术(信息科技)七年级上册沪科版
- 气瓶检验人员考试题题库及答案
- 胰腺超声标准切面
- 上饶市市级机关选调真题2024
- 妇幼信息安全课件
- 高一学生手册考试试题及答案
- 妊娠滋养细胞肿瘤护理查房
- 廉政参观活动方案
- 律师事务所客户数据安全管理制度
- 孕妇学校健康教育课件
- 中国大麻酚油(CBD油)行业发展监测及投资战略研究报告
- 医务人员艾滋病知识培训
评论
0/150
提交评论