您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 基于51单片机简易计算器课程设计
电气与电子信息工程学院单片机课程设计设计题目:简易电子计算器专业班级:12级电信(1)班学号:201230240111姓名:杨峥指导教师:章磊艾青设计时间:2014/06/03~2014/06/13设计地点:K2—407湖北理工学院本科课程设计报告2课程设计任务书2013~2014学年第2学期学生姓名:杨峥专业班级:电子信息工程技术(专)2012(1)班指导教师:艾青、章磊工作部门:电气学院电信教研室一、课程设计题目:单片机课程设计1.出租车计价器系统设计2.医院住院病人呼叫器的设计3.作息时间控制器4.数字温度计的设计5.火灾报警器的设计6.电子密码锁7.电子计算器8.学生自选二、课程设计内容1.以单片机为核心器件,构造系统;2.熟悉、掌握各种外围接口电路芯片的工作原理和控制方法;3.熟悉、掌握单片机汇编语言的软件设计方法;4.熟悉、掌握印刷电路板的设计方法;5.根据具体设计课题的技术指标和给定条件,能独立而正确地进行方案论证和电路设计,要求概念清楚、方案合理、方法正确、步骤完整;6.学会查阅有关参考资料和手册,并能正确选择有关元器件和参数;7.编写设计说明书,参考毕业设计论文格式撰写设计报告(5000字以上)。三、进度安排湖北理工学院本科课程设计报告31.时间安排序号内容学时安排(天)1方案论证和总统设计22硬件设计33软件设计34撰写和打印设计报告15设计答辩1合计10设计指导答辩地点:自控、DSP室2.执行要求智能电子产品设计制作共8个选题,每组不超过7人,为避免雷同,在设计中每个同学所采用的方案不能一样。四、基本要求(1)进行方案论证并根据要求确定系统设计方案;(2)绘制系统框图和电气原理草图,程序流程图;(3)对相关电路进行电路参数计算和元器件选择;(4)进行软件汇编并调试;(5)利用Proteus和KeiluVision2对系统进行联调;(6)绘制系统原理总图,列出原器件明细表;(7)画出软件框图,列出程序清单;(8)写出使用说明书;(9)对设计进行全面总结,写出课程设计报告。湖北理工学院本科课程设计报告4五、课程设计考核办法与成绩评定根据过程、报告、答辩等确定设计成绩,成绩分优、良、中、及格、不及格五等。评定项目基本内涵分值课程设计考勤考勤20分课程设计报告完成课程设计任务、报告规范性等情况30分实物实物制作情况30分答辩回答问题情况20分90~100分:优;80~89分:良;70~79分:中;60~69分,及格;60分以下:不及格第1章方案的选择与概述1.单片机概述当今时代,是一个新技术层出不穷的时代。在电子领域,尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统正以前所未见的速度被单片机智能控制系统所取代。单片机具有体积小、功能强、成本低、应用面广等优点,可以说,智能控制与自动控制的核心就是单片机。目前,一个学习与应用单片机的高潮正在工厂、学校及企事业单位大规模地兴起。过去习惯于传统电子领域的工程师、技术员正面临着全新的挑战,如不能在较短时间内学会单片机,势必会被时代所遗弃,只有勇敢地面对现实,挑战自我,加强学习,争取在较短的时间内将单片机技术融会贯通,才能跟上时代的步伐。它所给人带来的方便也是不可否定的,它在一块芯片内集成了计算机的各种功能部件,构成一种单片式的微型计算机。20世纪80年代以来,国际上单片机的发展迅速,其湖北理工学院本科课程设计报告5产品之多令人目不暇接,单片机应用不断深入,新技术层出不穷。20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。2.方案的设计1.1方案一根据功能和指标要求,本系统选用MCS-51系列单片机AT89C51为主控机。通过扩展必要的外围接口电路,实现对计算器的设计。计算器电路包括三个部分:显示电路、4*4键扫描电路、单片机微控制电路。用七段数码管作为显示电路,矩阵键盘作为输入电路。模块图如图1.1所示。图1.1方案一模块图AT89C51数码管显示电路输入电路湖北理工学院本科课程设计报告61.2方案二根据计算器的功能要求,选择AT89C51为主控机,通过扩展必要的外围接口电路,实现对计算器的设计。外部主要由4*4矩阵键盘和一个液晶显示屏构成,内部由一块AT89C51单片机构成。计算器电路包括四个部分:选用LCD作为显示部分,矩阵键盘作为输入部分,运算模块,单片机控制部分。模块图如图1.2所示。图1.2方案二模块图1.3整体设计根据简易计算器的功能和指标要求,本设计系统选用MCS-51系列单片机AT89C51为主控机。通过扩展必要的外围接口电路,实现对简易计算器的设计。计算器电路包括三个部分:显示电路、4*4键扫描电路、单片机微控制电路。具体设计如下:(1)由于要设计的是简单的计算器,可以进行四则运算,为了得到较好的显示效果,采用七段数码管显示数据和结果。(2)另外键盘包括数字键(0~9)、符号键(+、-、×、÷)、清除键和等号键,故单片机运算模块显示模块输入模块湖北理工学院本科课程设计报告7只需要16个按键即可。(3)执行过程:开机显示零,等待键入数值,当键入数字,通过LCD显示出来,当键入+、-、*、/运算符,计算器在内部执行数值转换和存储,并等待再次键入数值,当再键入数值后将显示键入的数值,按等号就会在LCD上输出运算结果。(4)错误提示:当计算器执行过程中有错误时,会在LCD上显示相应的提示,如:当输入的数值或计算得到的结果大于计算器的表示范围时,计算器会在LCD上提示溢出;当除数为0时,计算器会在七段数码管上提示错误。线路原理框图如图1.3所示。51系列单片机系统4*4键盘LCD显示晶振电路复位电路图1.3线路原理框图湖北理工学院本科课程设计报告8第2章单元电路的硬件2电路设计原理开始初始化参数初始化LCD显示有键输入?读取键码LCD显示数字键清零键功能键状态清零输入数值数值送显示缓冲YN等待数值输入结果送显示缓冲根据上次功能键和输入的数据计算结果本次功能键?等待数值输入结果送显示缓冲等待数值输入结果送显示缓冲图1.4系统总流程图湖北理工学院本科课程设计报告92.1键盘接口电路计算器输入数字和其他功能按键要用到很多按键,如果采用独立按键的方式,在这种情况下,编程会很简单,但是会占用大量的I/O口资源,因此在很多情况下都不采用这种方式,而是采用矩阵键盘的方案。矩阵键盘采用四条I/O线作为行线,四条I/O线作为列线组成键盘,在行线和列线的每个交叉点上设置一个按键。这样键盘上按键的个数就为4×4个。这种行列式键盘结构能有效地提高单片机系统中I/O口的利用率。矩阵键盘的工作原理:计算器的键盘布局如图2.1所示:一般有16个键组成,在单片机中正好可以用一个P口实现16个按键功能,这种形式在单片机系统中也最常用。图2.1矩阵键盘布局图电路中采用4*4键盘作为输入电路模块的话,电路连线会比较简单,而且这种行列式键盘结构能有效地提高单片机系统中I/O口的利用率。但是在硬件电路设计的过程中,实验室没有提供矩阵键盘,所以我们将4*4的矩阵键盘换成了16个独立按键。采用独立按键的方式的话,会占用大量的I/O口资源,但是在这种情况下,编程会很简单。矩阵键盘内部电路图如图2.2所示(见下页)。2.2显示模块本设计采用LCD1602液晶显示屏来显示输出数据。通过D0-D7引脚向LCD写指令字或写数据以使LCD实现不同的功能或显示相应数据。LCD1602管脚图如图2.3所示。湖北理工学院本科课程设计报告10图2.2矩阵键盘内部电路图图2.3LCD1602管脚图湖北理工学院本科课程设计报告112.3运算模块(单片机控制)MCS-51单片机是在一块芯片中集成了CPU、RAM、ROM、定时器/计数器和多功能I/O等一台计算机所需要的基本功能部件。如果按功能划分,它由如下功能部件组成,即微处理器(CPU)、数据存储器(RAM)、程序存储器(ROM/EPROM)、并行I/O口、串行口、定时器/计数器、中断系统及特殊功能寄存器(SFR)。单片机是靠程序运行的,并且可以修改。通过不同的程序实现不同的功能,尤其是特殊的独特的一些功能,通过使用单片机编写的程序可以实现高智能,高效率,以及高可靠性!因此我们采用单片机AT89C51作为计算器的主要功能部件,可以很快地实现运算功能。图2.4AT89C51管脚图管脚说明:VCC:供电电压。GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P0口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。湖北理工学院本科课程设计报告12P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,如下表所示:口管脚备选功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2/INT0(外部中断0)P3.3/INT1(外部中断1)P3.4T0(记时器0外部输入)P3.5T1(记时器1外部输入)P3.6/WR(外部数据存储器写选通)P3.7/RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出湖北理工学院本科课程设计报告13的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。第3章仿真和调试3.1KEILuVision与porteus仿真软件3.1.2Porteus介绍Proteus软件是英国Labcent
本文标题:基于51单片机简易计算器课程设计
链接地址:https://www.777doc.com/doc-7310853 .html