简易计算器课程设计报告

上传人:工**** 文档编号:476750885 上传时间:2023-09-18 格式:DOC 页数:19 大小:433KB
返回 下载 相关 举报
简易计算器课程设计报告_第1页
第1页 / 共19页
简易计算器课程设计报告_第2页
第2页 / 共19页
简易计算器课程设计报告_第3页
第3页 / 共19页
简易计算器课程设计报告_第4页
第4页 / 共19页
简易计算器课程设计报告_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《简易计算器课程设计报告》由会员分享,可在线阅读,更多相关《简易计算器课程设计报告(19页珍藏版)》请在金锄头文库上搜索。

1、单片机与接口技术课程设计报告课题名称简易计算器的设计学院自动控制与机械工程学院专业机械设计制造及其自动化班级姓名学号时间2013.1.7-2013.1.18目录一课程设计的目的和要求31设计目的32设计任务及要求3二设计步骤及思路31、设计的步骤32设计思路3三硬件电路设计41总体设计42单元电路的设计4四软件设计9五调试说明121未启动仿真时,初始状态122开启仿真以后123计算过程演示12六设计体会14七参考文献15八、附录15附录一15附录二15一课程设计的目的和要求1设计目的单片机课程作为独立的教学环节,是自动化及相关专业集中实践性环节系列之一,是学习完单片机与接口技术课程后,并在进行

2、相关课程设计基础上进行的一次综合练习。单片机课程设计过程中,我们通过查阅资料,接口设计、程序设计、安装调试等环节,完成一个基于MCS-51系列单片机,涉及多种资源应用,并具有综合应用功能的小应用课程设计,使我们不但能够将课堂上学到的理论知识与实际应用结合起来,而且能够对电子电路电子元件等方面的知识进一步加深认识,同时在软件编程调试相关仪器设备和相关软件的使用技能等方面得到较全面的锻炼和提高。课程设计以学生认知为主体,充分调动学生的积极性,重视学生自学能力的培养,根据具体课题安排时间确定课题的设计、编程和调试内容,分团队开展课程设计活动,按时完成每部分工作。坚持独立完成,实现课题规定的各项指标,

3、并写出设计报告。要求学生自己查阅资料和充分利用所学知识,根据所要设计系统所要达到的功能,划分软硬件功能、选择器件、编写相关程序,用Proteus 在计算机上绘图并用Keil进行程序编写进行防真,再对整个系统做调试运行,有问题再进一步调试修改,直至达到设计的要求和取得满意的效果,最后编写系统说明书,其内容包括系统的功能介绍,使用范围,主要性能指标,使用方法,注意事项等。2设计任务及要求基于MCS51系列单片机 AT89C51,设计一个简单的电子计算器。1)通过44的矩阵键盘输入数字及运算符;2)可以进行4位十进制数以内的加法运算,如果计算结果超过4位十进制数,则屏幕显示E;3)可以进行加法以外的

4、计算(乘、除、减);4)其他功能。二设计步骤及思路1、设计的步骤(1)制定相应的设计方案;(2)硬件的初步设计;(3)选择设计所用元器件和参数;(4)在Proteus 7.5中设计和连接电路图;(5)软件的初步设计;(6)编写程序实现其功能;(7)在keil_v4中进行调试运行;(8)硬件和软件联合调试。2设计思路根据功能和要求,本系统选用MCS-51系列单片机为主控机。通过扩展必要的外围接口电路,实现对计算器的设计。具体设计如下:(1)由于要设计的是简单的计算器,可以进行四则运算,为了得到较好的显示效果,采用LCD 显示数据和结果。(2)另外键盘包括数字键(09)、符号键(+、-、)、清除键

5、和等号键,故只需要16个按键即可,设计中采用集成的计算键盘。(3)执行过程:开机显示零,等待键入数值,当键入数字,通过LCD显示出来,当键入+、-、*、/运算符,计算器在内部执行数值转换和存储,并等待再次键入数值,当再键入数值后将显示键入的数值,按等号就会在LCD上输出运算结果。(4)错误提示:当除数为0计算得到的结果小于0或大于计算器的表示范围时,计算器会在LCD上显示E。三硬件电路设计 1总体设计本设计选用AT89C52单片机为主控单元。显示部分采用LCD液晶显示,按键部分采用4*4键盘。图1 线路原理框图2单元电路的设计1) AT89C52单片机AT89C52具有以下标准功能:8K字节F

6、lash,256字节RAM,32位I/O口线,3个16位定时器/计数器,一个响应2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89C52可降至0HZ静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。AT89C52单片机为很多嵌入式控制系统提供了一种灵活性高且廉价的方案。故此选用AT89C52单片机图2 AT89C52芯片管脚说明: P0口:P0口为一个8位漏级开路双向I/O口,也即地址/数据总线复用口。作为输出口用时,

7、能驱动8个TTL逻辑门电路。对端口写“1”时,被定义为高阻输入。 在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。在Flash编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。P1口:P1口是一个带内部上拉电阻的8位双向I/O口,P1口的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(I)。P1接收低8位地址,部分端口还有第二功能,如表1所示:表1

8、 P1口部分引脚第二功能端口引脚第二功能P1.5MOSI(用于ISP编程)P1.6MISO(用于ISP编程)P1.7SCK (用于ISP编程)P2口:P2口是一个带有内部上拉电阻的8位双向I/O口, P2口的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(I)。在访问外部程序存储器或16位地址的外部数据存储器(例如执行MOVXDPTR指令)时,P2口送出高8位地址数据。在访问8位地址的外部数据寄存器(例如执行MOVXRi指令)时,P2口线上的

9、内容(也即特殊功能寄存器(SFR)区中P2寄存器的内容),在整个访问期间不改变。在Flash编程或校验时,P2亦接收高位地址和其它控制信号。P3口: P3口是一个带有内部上拉电阻的双向8位I/O口, P3口的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对P3口写“1”时,它们被内部的上拉电阻拉高并可作为输入端口。作输入口使用时,被外部信号拉低的P3口将用上拉电阻输出电流(I)。P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能,如表2所示:表2 P3口引脚第二功能端口引脚第二功能P3.0RXD (串行输入口)P3.1TXD (串行输出口)P3.2 (外中断0)P3.3 (

10、外中断1)P3.4T0 (定时/计数器0)P3.5T1 (定时/计数器1)P3.6 (外部数据存储器写选通)P3.7 (外部数据存储器读选通)RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上的高电平时间将使单片机复位。WDT溢出将使该引脚输出高电平,设置SFR AUXR的DISRTO位(地址8EH)可打开或关闭该功能。 DISRTO位缺省为RESET输出高电平打开状态。 ALE/:当访问外部存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。即使不访问外部寄存器,ALE仍以时钟振荡频率的1/6输出固定的正脉冲信号,因此它可对外输出时钟或用于定时目的。值

11、得注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。对Flash存储器编程期间,该引脚还用于输入编程脉冲()。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。该位置复位后,只要一条MOVX和MOVC指令才会激活ALE。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE无效。:程序存储允许()输出是外部程序存储器的读选通信号,当AT89C51由外部程序存储器取指令(或数据)时,每个机器周期两次有效,即输出两个脉冲。当访问外部数据存储器时,没有两次有效的信号。EA/VPP:外部访问允许。欲使CPU仅访问外部程序存储器(地址为0000H-FF

12、FFH),EA端必须保持低电平(接地)。需要注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态。如EA端保持高电平(接VCC端),CPU则执行内部程序存储器中的指令。Flash存储器编程期间,该引脚用于施加+12V编程电压(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入端。XTAL2:反向振荡放大器器的输出端。2)时钟电路时钟是单片机的心脏,单片机各功能部件的运行都是以时钟频率为基准,有条不紊的一拍一拍地工作。因此,时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的稳定性。常用的时钟电路有两种方式:一种是内部时钟方式,另一种为外部时钟方式。本处用的

13、是内部时钟方式。电路如图3。图3 内部时钟电路3)复位电路MCS-51单片机的复位是由外部的复位电路来实现的。上电复位:上电复位电路是种简单的复位电路,只要在RST复位引脚接一个电容到VCC,接一个电阻到地就可以了。上电复位是指在给系统上电时,复位电路通过电容加到RST复位引脚一个短暂的高电平信号,这个复位信号随着VCC对电容的充电过程而回落,所以RST引脚复位的高电平维持时间取决于电容的充电时间。为了保证系统安全可靠的复位,RST引脚的高电平信号必须维持足够长的时间。电路如图4。 图4 复位电路4)LCD显示模块本设计采用LCD液晶显示器来显示输出数据。通过D0-D7引脚向LCD写指令字或写

14、数据以使LCD实现不同的功能或显示相应数据。LCD功能以及控制命令:表3LCD模块控制端LCD基本操作RSR/WE001写命令:用于初始化、清屏、光标定位等011读状态:读忙标志,当忙标志为“1”时,表明LCD正在进行内部操作,此时不能进行其他三类操作;当忙标志位为“0”时,表示LCD内部操作完成,可以对其他三类操作,一般使用查询方式。101写数据:写入要显示的数据111读数据:将显示存储区中的数据反读出来,一般比较少用。图5 LCD显示图5)键盘接口电路计算器所需按键有:数字键:1,2,3,4,5,6,7,8,9,0;功能键:+,-,*,/,=,C(清零)。 共计16个按键,采用4*4矩阵键盘,键盘的行和列之间都有公共端相连,四行和四列的8个公共端分别接P1.0P1.7。采用“扫描法”确定矩阵式键盘上何键被按下。(1)判断是否有键按下单片机控制系统首先把I/O口P1.0P1.3设置成输出口,把P1.4P1.7 设置成输入口,接着把全“0”送到P1.0P1.3,这样就可以在所有行线上得到低电平,然后读取列线上的列值就可以判断是否有键按下。若无键按下,则所读列值必全为“1”;若有键按下,则所读列值必因所按键的行、列线接通而不全为“

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 医学/心理学 > 基础医学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号