ImageVerifierCode 换一换
格式:DOCX , 页数:40 ,大小:362.42KB ,
资源ID:18398570      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/18398570.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于单片机设计的计算器硬件Word格式.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于单片机设计的计算器硬件Word格式.docx

1、基于这一系统的单片机系统直到现在还在广泛使用。随着工业控制领域要求的提高,开始出现了16位单片机,但因为性价比不理想并未得到很广泛的应用。90年代后随着消费电子产品大发展,单片机技术得到了巨大的提高。随着INTEL i960系列特别是后来的ARM系列的广泛应用,32位单片机迅速取代16位单片机的高端地位,并且进入主流市场。目前,高端的32位单片机主频已经超过300MHz性能直追90年代中期的专用处理器,而普通的型号出厂价格跌落至1美元,最高端的型号也只有10美元。当代单片机系统已经不再只在裸机环境下开发和使用,大量专用的嵌入式操作系统被广泛应用在全系列的单片机上。1.3实验设计要求根据设计要求

2、,设计一个计算器,预计所能达到功能如下(1)该计算器能进行六位数的运算,即运算结果可从0到999999;(2)能进行加减乘除4种运算,精确到小数点后三位;(3)能对错误进行提示,比如被除数等于0,乘法运算结果大于999999等;(4)含有清除单个最低位数据和全部输入数据的功能;(5)能够实现加减乘除四则混合运算,能够实现连续计算,并能判断运算优先级;(6)进行正负数运算;1.4 总体设计思路设计主要采用以下基本模块来实现,控制器模块,输入模块,输出模块和电源模块。通过对控制器进行编程,使其对输入模块的信号进行处理计算,然后通过输出模块反馈给使用者以计算结果。该系统的结构框图如下图所示图1-1

3、系统组成方框图第二章 设计方案论证与选择2.1 控制部分的设计方案论证与选择方案一 采用单片机AT89S52芯片 AT89S52是一个低功耗,高性能CMOS 8位单片机,片内含8k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准 MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89S52可为许多嵌入式控制应用系统提供高性价比的解决方案。AT89S52具有如下特点:40个引脚,8k By

4、tes Flash片内程序存储器,256 bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。方案二 采用单片机AT89C52芯片AT89C52是一个低电压,高性能CMOS 8位单片机,片内含8k bytes的可反复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,功能强大的AT89C52

5、单片机可为您提供许多较复杂系统控制应用场合。AT89C52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,AT89C52可以按照常规方法进行编程,也可以在线编程。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的 Flash存储器可有效地降低开发成本。综上所述,AT89C51不支持ISP,只能采用昂贵的编程器来下程序.AT89S52支持ISP,可采用并口,用下载线,即可下程序,因此用AT89S52作为控制器,不仅功能易于实现,并且有其成本低、技术成熟和功耗小等优点,因此我们采用方案一。2

6、.2 显示电路的设计方案论证与选择 方案一 采用LCD 1602型液晶显示(一) 基本特性a、显示特性 单5V电源电压,低功耗、长寿命、高可靠性 内置192种字符(160个57点阵和32个510点阵字符) 显示方式:SIN、半透、正显 驱动方式:1/16DUTY,1/5BIAS 视角方向:6点 背光方式:底部LED 通讯方式:4位或8位并口可选 标准的接口特性:适配MC51和M6800系列MPU的操作时序。b、物理特性如表2-1所示表2-1 物理特性外形尺寸80*36*14单位可视范围64.6(w)16.0(H)mm显示容量16字符二行点尺寸0.550.75点间距0.08(二)接口定义表 2-

7、2接口定义管脚号符号功能1VSS电源地2VDD电源电压(+5V)3V0LCD驱动电压(可调)4RS寄存器选择输入端,输入MPU选择模块内部寄存器类型信号RS=0当MPU进行写模块操作,指向指令寄存器当MPU进行读操作,指向地址计数器;RS=1,无论MPU是读操作还是写操作,均指向数据寄存器5R/W读写控制输入端,输入MPU选择读/写操作信号:R/W=0 读操作;R/W=1 写操作6E使能信号输入端,入MPU选择读/写操作使能信号;读操作时,高电平有效;写操作时,下降沿有效7DB0数据输入/输出口,MPU与模块之间的数据传送通道4位通讯方式时,不使用DB078DB19DB210DB311DB41

8、2DB513DB614DB715A背光灯正极16K背光灯负极LCD 1602液晶有16个引脚,它能显示32个字符,且硬件电路设计简单,显示美观。LCD 1602与单片机的接口电路如图2-1所示图2-1LCD 1602与单片机接口电路方案二 采用汉字图形点阵液晶显示器RT12864M显示方案 RT12864M汉字图形点阵液晶显示模块,可显示汉字及图形。供电电源为3.3V+5V(内置升压电路,无需负压),能采用并行和串行两种通信方式。并有光标显示、画面移位、自定义字符、睡眠模式等功能。其与单片机的接口电路如图2-2所示图2-2 12864与单片机的接口电路综上所叙,LCD 1602液晶的设计简单,

9、且能满足设计要求,故我们选择LCD 1602液晶作为显示部分。2.3 单片机电源部分的设计方案论证与选择方案一 用固定式三端稳压器7805 三端稳压集成电路7805只有三条引脚输出,分别是输入端、接地端和输出端。它的样子象是普通的三极管。用7805组成稳压电源所需的外围元件极少,电路内部还有过流、过热及调整管的保护电路,使用起来可靠、方便,而且价格便宜。常见78系列的输入输出压差为7V,所以正常范围内12V是7805的输入电压上限。当电压再高时,虽然也可以继续稳压,但输出电流能力将受到很大影响。因此这里使用9V电池作为电源。如图2-3,7805系列稳压器输出固定的正电压5V,输入端接电容C1可

10、以进一步滤除纹波,输出端接电容C2能改变负载的瞬态影响,使电路稳定工作C1、C2最好采用漏电流小的钽电容。如果采用电解电容,电容要比图中数值增加10倍。图2-3 固定式三端稳压器方案二 用7805加一些外围器件 虽然7805三端集成稳压管内部有过流、过热和安全区的保护电路,但其输出仍有可能发生过压的危险。因此本电路加了过压保护电路,电路如图2-4所示,该电路由稳压管VD3、电阻R3和晶闸管VS组成。图2-4可扩流过压保护5V稳压电源综上所述,方案一电路简单,而且已符合本次设计的要求,第二种方案所用元件较多,性价比不高,所以选择方案一。2.4键盘设计方案论证与选择方案一 通过PS2协义,用键盘同

11、单片机相接,从而实现单片机与键盘通信现在PC机广泛采用的PS/2接口为miniDIN 6引脚的连接器。其引脚图为1数据线(DATA);2未用;3电源地(GND);4电源(+5 V);5时钟(CLK);6未用。其电路如图2-5所示图2-5键盘与单片机接口图由1-7图可知,使用键盘硬件结构比较简单,但键盘的体积太大。方案二 独立键盘独立键盘为一端接地,另一端接I/O口,并且要接上拉电阻。这种键盘的硬件都很容易实现,但每一个按键就要用一个I/O口,非常的浪费单片机的I/O口资源。方案三 自制编码键盘如图2-6是15个按键的编码键盘所示,这种键盘有编程简单,占用资源少,但其硬件比较复杂,要用很多的二极

12、管,不是很理想。图2-6 自制15个按键的编码键盘电路图方案四 4*5矩阵式键盘其矩阵式键盘电路图如图2-7所示图2-7 4*5矩阵式键盘电路图综上所述,矩阵式键盘的硬件简单,使用的I/O口也不多,而且这种键盘的编程方法已很成熟。所以本次键盘部分采用这种矩阵式键盘。2.5单片机复位电路的设计方案论证与选择复位是单片机的初始化操作,其主要功能是把PC初始化为0000H,使单片机从0000H单元开始执行程序。除了进入系统的正常初始化之外,当由于程序运行出错或操作错误是系统处于死锁状态时,为摆脱困境,也需要按复位键以重新启动。RST引脚是单片机复位信号的输入端,复位信号是高电平有效,其有效时间应持续

13、24个振荡周期(即2个机器周期)以上,若使用频率为11.0592MHz的晶振,则复位信号持续时间应超过4s才能完成复位操作。方案一 自动上电复位电路 通过外部复位电路的RC电路充放电来实现的。方案二 手动按键复位电路按键电平复位是通过使复位端经电阻与VCC电源接通而实现的。为了保证复位信号持续时间超过4s,从而实现复位功能,故选择电容为10F,R2的电阻为10k。其复位电路如下图2-8图2-8 复位电路综上所述,自动复位需去电再通电才能复位,而手动复位电路可以随时复位,尤其是程序跑飞时,只需按下键就可以复位。因此选择手动按键复位电路作为单片机复位电路。2.6 系统组成 经过方案最终论证与比较,

14、最终确定的系统组成框图如图2-9 所示。其中单片机作为主控设备对采集输入信号后并进行处理,最后通过输出设备输出给使用者。该系统的结构框图如图2-9所示图2-9 第三章 重要器件的知识介绍3.1 单片机的知识介绍ATMEL公司生产的AT89S52型单片机是方便程序下载程序且好用,而且能够满足本设计的要求。3.1.1单片机功能特性(1)与MCS-51单片机产品兼容 (2)8K字节在系统可编程Flash存储器(3)1000次擦写周期(4)全静态操作:0Hz33MHz (5)三级加密程序存储器 (6)32个可编程I/O口线 (7)三个16位定时器/计数器 八个中断源 (8)全双工UART串行通道(9)

15、低功耗空闲和掉电模式 (10)掉电后中断可唤醒 (11)看门狗定时器(12)双数据指针3.1.2 单片机各引脚功能说明AT89S52的功能引脚如图3-1所示图3-1 AT89S52的引脚图VCC:供电电压。GND:接地。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口

16、作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或1

17、6位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89S52的一些特殊功能口,如表3-1所示表3-1 AT89S52的一些特殊功能口 管脚备选功能P3.0 RXD(串行输入口)P3.1

18、 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。

19、此时, ALE只有在执行MOVX,MOVC指令时才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次有效。但在访问外部数据存储器时,这两次信号将不出现。/VPP:当保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,将内部锁定为RESET;端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。3.1.3 单片机时钟电路时钟电路产生单片机工作所需要的时钟信号,单片机本身就是一个复杂的同步时序电

20、路,为了保证同步工作方式的实现,电路在唯一的时钟信号控制下严格地按时序进行工作。在MCS-51芯片内部有一个高增益反相放大器,其输入端为芯片引脚X1,输出端为引脚X2,在芯片的外部跨接晶体振荡器和微调电容,形成反馈电路,就构成了一个稳定的自激振荡器。 此时钟电路采用11.0592MHz的石英晶体,时钟电路如下图3-2图3-2 时钟电路3.1.4 LED提示电路 这个LED提示电路是用一个LED接单片机的一个引脚,在其引脚发出一个高电平导通。有三个功能:系统初始化时会闪烁、归零时会闪烁、shift功能键会闪烁。与单片机连接的电路原理图如图3-3所示图3-3 LED提示电路3.21602液晶显示资

21、料控制器内部带有80*8位(80字节)的RAM缓冲区,对应关系如图3-4所示图3-4 RAM 地址映射图设置数据指针如表3-2表3-2 数据指针显示开/关及光标设置如表3-3表3-3 显示及光标设置指令码设置16*2显示,5*7点阵,8为数据接口DCBD=1 开显示;C=1显示光标;B=1光标闪烁D=0关显示;C=0不显示光标;B=0不光标闪烁NSN=1 当读或写一个字符后地址指针加一,切光标加一N=0当读或写一个字符后地址指针减一,切光标减一S=1当读或写一个字符整屏显示左移(N=1)或右移(N=0)S=0 当写一个字符,整屏不移动其它设置如表3-4表3-4 其它设置01H数据指针清零 所有显示清零02H数据指针清零10H光标左移 数据指针加114H光标右移 数据指针减118H屏幕左移 光标跟着左移 数据指针不变1CH屏幕右移 光标跟着左移 数据指针不变第四章 计算器的软件编程4.1主函数根据任务书的要求,让主程序一直保持在一个大循环中(一直保持键盘扫描),对相应的键值进行判断且处理,再接着键盘扫描。具体如程序流程图4-1图4-1 程序流程图4.2 4*5键盘扫描程序根据硬件的介绍,键盘是直接接到I/O口上的,这个键盘需要一个软件的消抖,可对键值按下时产生的脉冲进行相应的延时,键盘扫描程序在附录。其驱动程序流程图4-2如下所示图

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1