简易计算器报告

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1皖西学院课程设计系别:机械与电子工程系专业:电子信息科学与技术学生姓名:学号:课程设计题目:简易计算器的设计起迄日期:6月22日~7月4日课程设计地点:指导教师:2目录第一章绪论···················································11.1课程设计的目的················································11.2课程设计的要求················································11.2.1总体设计················································11.2.2硬件设计················································11.2.3软件设计················································21.2.4软、硬件联调············································2第二章系统电路设计············································22.1计算器系统设计框架·············································22.2计算器基本设计思路·············································32.3STC12C5A60S2单片机最小系统板简介·····························32.3.1STC12C5A60S2功能介绍··································32.3.2CH452功能介绍··········································6第三章系统软件设计············································73.1程序设计流程图·················································73.2算数运算·······················································73.3系统主程序·····················································8第四章实验结果分析············································84.1实验使用的仪器·················································84.2测试结果分析···················································8结束语····························································10参考文献··························································10附录·······························································101第一章绪论1.1课程设计的目的课程设计是培养和锻炼学生在学习完本门课后综合应用所学理论知识,解决实际工程设计和应用问题的能力的重要教学环节。它具有动手、动脑和理论联系实际的特点,是培养在校工科大学生理论联系实际、敢于动手、善于动手和独立自主解决设计实践中遇到的各种问题能力的一个重要教学环节。通过课程设计,要求学生熟悉和掌握微机系统的软件、硬件设计的方法、设计步骤,使学生得到微机开发应用方面的初步训练。让学生独立或集体讨论设计题目的总体设计方案、编程、软件硬件调试、编写设计报告等问题,真正做到理论联系实际,提高动手能力和分析问题、解决问题的能力,实现由学习知识到应用知识的初步过渡。通过本次课程设计使学生熟练掌握微机系统与接口扩展电路的设计方法。而本次的课程设计是围绕单片机实现的,是基于STC12C5A60S2单片机的最小系统板搭建的课程设计电路。1.2课程设计的要求设计一计算器,要求至少能完成2位数的加减乘除运算。1.2.1、总体设计本阶段的任务是通过调查研究,查阅资料来初步确定系统结构的总体方案,其中主要涉及到硬件和软件的功能划分。应用系统中硬件和软件具有一定的互换性,即某些功能既可以用硬件实现也可以用软件实现。一般说来,用硬件实现的优点是可以提高系统的工作速度,但会增加电路的复杂性和硬件成本;而用软件代替某些硬件的功能可以使电路简化,便于修改设计,降低硬件成本,但软件工作量增大。总体设计时,必须在硬件和软件之间权衡,分工明确,然后分头开始设计。1.2.2、硬件设计在Proteus环境下,结合课程设计题目,设计硬件原理图,搭建硬件电路。21.2.3、软件设计1、采用模块化程序结构设计软件,可将整个软件分成若干功能模块。2、画出程序流程图。3、根据流程图,编写源程序。1.2.4、软、硬件联调在Proteus环境下,仿真调试程序。第二章系统电路设计2.1计算器系统设计框架由于本次试验中用到的最小系统板中的STC12C5A60S2单片机和CH452A芯片在proteus中没有,所以在proteus仿真中都以at89c51单片机仿真。而硬件电路已经搭好,所以选择合适的C语言程序。351单片机系统:控制中心和运算中心,将键盘输入的数据进行缓存和处理,最后是将运算的结果送到数码管显示。4*4键盘:数值和一些功能键的输入。复位电路:将单片机系统内的数据清除,以免干扰下一次单片机的操作过程。晶振电路:为单片机提供工作的时钟脉冲。2.2计算器基本设计思路(1)可以进行简单的四则运算,计算结果由数码管显示。(2)矩阵键盘的16个按键用作数字键(0-9)、功能键(+、-、*、/)、清除键和等号键。(3)执行程序:开机显示零,等待键入数值,当键入数字,通过数码管显示出来,当键入+、-、*、/运算符,计算器在内部执行数值转换和存储,并等待再次键入数值后将显示键入的数值,按等号就会在数码管上输出运算结果。(4)错误提示:当单片机执行程序中有错误时,会在数码管上显示相应的提示,如:当输入的数值或计算器得到的结果大于计算器的显示范围时,计算器会在数码管上提示溢出;当除数为0时,计算器会在数码管上提示错误,显示255。基于单片机AT89C51的proteus仿真图:42.3STC12C5A60S2单片机的最小系统板的简介1、STC12C5A60S2单片机功能介绍:STC12C5A60S2/AD/PWM系列单片机是宏晶科技生产的单时钟/机器周期(1T)的单片机,是高速/低功耗/超强抗干扰的新一代8051单片机,指令代码完全兼容传统8051,但速度快8-12倍。内部集成MAX810专用复位电路,2路PWM,8路高速10位A/D转换(250K/S),针对电机控制,强干扰场合。1.增强型8051CPU,1T,单时钟/机器周期,指令代码完全兼容传统8051;2.工作电压:STC12C5A60S2系列工作电压:5.5V-3.3V(5V单片机)STC12LE5A60S2系列工作电压:3.6V-2.2V(3V单片机);3.工作频率范围:0-35MHz,相当于普通8051的0~420MHz;4.用户应用程序空间8K/16K/20K/32K/40K/48K/52K/60K/62K字节;5.片上集成1280字节RAM;6.通用I/O口(36/40/44个),复位后为:准双向口/弱上拉(普通8051传统I/O口),可设置成四种模式:准双向口/弱上拉,推挽/强上拉,仅为输入/高阻,开漏,每个I/O口驱动能力均可达到20mA,但整个芯片最大不要超过55Ma;57.ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器,无需专用仿真器可通过串口(P3.0/P3.1)直接下载用户程序,数秒即可完成一片;8.有EEPROM功能(STC12C5A62S2/AD/PWM无内部EEPROM);9.看门狗;10.内部集成MAX810专用复位电路(外部晶体12M以下时,复位脚可直接1K电阻到地);11.外部掉电检测电路:在P4.6口有一个低压门槛比较器,5V单片机为1.32V,误差为+/-5%,3.3V单片机为1.30V,误差为+/-3%;12.时钟源:外部高精度晶体/时钟,内部R/C振荡器(温漂为+/-5%到+/-10%以内)1用户在下载用户程序时,可选择是使用内部R/C振荡器还是外部晶体/时钟,常温下内部R/C振荡器频率为:5.0V单片机为:11MHz~15.5MHz,3.3V单片机为:8MHz~12MHz,精度要求不高时,可选择使用内部时钟,但因为有制造误差和温漂,以实际测试为准;13.共4个16位定时器两个与传统8051兼容的定时器/计数器,16位定时器T0和T1,没有定时器2,但有独立波特率发生器做串行通讯的波特率发生器再加上2路PCA模块可再实现2个16位定时器;14.2个时钟输出口,可由T0的溢出在P3.4/T0输出时钟,可由T1的溢出在P3.5/T1输出时钟;15.外部中断I/O口7路,传统的下降沿中断或低电平触发中断,并新增支持上升沿中断的PCA模块,PowerDown模式可由外部中断唤醒,INT0/P3.2,INT1/P3.3,T0/P3.4,T1/P3.5,RxD/P3.0,CCP0/P1.3(也可通过寄存器设置到P4.2),CCP1/P1.4(也可通过寄存器设置到P4.3);16.PWM(2路)/PCA(可编程计数器阵列,2路):——也可用来当2路D/A使用——也可用来再实现2个定时器——也可用来再实现2个外部中断(上升沿中断/下降沿中断均可分别或同时支持);17.A/D转换,10位精度ADC共8路,转换速度可达250K/S(每秒钟25万次)18.通用全双工异步串行口(UART),由于STC12系列是高速的8051,可再用定时器或PCA软件实现多串口;19.STC12C5A60S2系列有双串口,后缀有S2标志的才有双串口,RxD2/P1.2(可通过6寄存器设置到P4.2),TxD2/P1.3(可通过寄存器设置到P4.3);20.工作温度范围:-40-+85℃(工业级)/0-75℃(商业级)21.封装:PDIP-40,LQFP-44,LQFP-48I/O口不够时,可用2到3根普通I/O口线外接74HC164/165/595(均可级联)来扩展I/O口,还可用A/D做按键扫描来节省I/O口,或用双CPU,三线通信,还多了串口。2、CH452功能介绍:CH452是数码管显示驱动和键盘扫描控制芯片。CH452内置时钟振荡电路,可以动态驱动8位数码管或者64位LED,具有BCD译码、闪烁、移位、段位寻址、光柱译码等功能;同时还可以进行64键的键盘扫描;CH452通过可以级联的4线串行接口或者2线串行接口与单片机等交换数据;并且可以对单片机提供上电复位信号。显示驱动1.内置电流驱动级,段电流不小于15mA,字电流不小于80mA。2.动态显示扫描控制,直接驱动8位数码管、64位发光管LED或者64级光柱。3.可选数码管的段与数据位相对应的不译码方式或者BCD译码方式。4.BCD译码支持一个自定义的BCD码,用于显示一个特殊字符。5.数码管的字数据左移、右移、左循环、右循环。6.各数码管的数字独立闪烁控制,可选快慢两种闪烁速度。7.任意段位寻址,独立控制各个LED或者各数码管的各个段的亮与灭。8.64级光柱译码,通过64个LED组成的光柱显示光柱值。9.扫描极限控制,支持1到8个数码管,只为有效数码管分配扫描时间。10.可以选择字驱动输出极性,便于外部扩展驱动电压和电流。键盘控制1.内置64键键盘控制器,基于8×8矩阵键盘扫描。2.内置按键状态输入的

1 / 19
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功