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

加入VIP,省得不是一点点
 

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

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

下载须知

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

版权提示 | 免责声明

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

基于单片机的电子计算器设计【毕业论文】.doc

1、 本科 毕业 论文 (设计 ) (二零 届) 基于单片机的电子计算器设计 (c51 语言编程 ) 所在学院 专业班级 电气工程及其自动化 学生姓名 学号 指导教师 职称 完成日期 年 月 摘 要 计算器是人们生活中必不可少的电子产品之一,因此设计一款方便实用,操作简单的计算器具有不小的实际意义。本次 设计是基 于 AT89C51 单 片机的电子计算器设计。需要达到以下几个功能: 能进行二进制、十进制和十六进制转换;能完成 10000 以内加、减、乘、除;精确到小数点后 2 位;具有运算超出表达范围指示。 本次设计选用 AT89C51 为主芯片,通过串行 8 位 LED 数码显示管和 64 位键

2、盘控制芯片 HD7279A 来实现所需要的功能。 HD7279A 是一片具有串行接口并可驱动 8 位共阴式数码管的智能显示驱动芯片。可以完成 LED 显示和键盘接口的全部功能。 本次软件的编程选择 C 语言编程。需要进行的编程主要包括主程序,减法子程序,加法子程序,除 法子程序,乘法子程序,进制转换程序等。需要运用所学的知识进行所需要求的编程。 关键词: AT89C51 单片机 ; HD7279A; LED; 键盘 ; C 语言 Abstract Calculator is essential in peoples lives for one of electronic products. S

3、o designing a convenient and practical, simple calculator is very important. The design is a electronic calculator,and is based on AT89C51 microcontroller. The design need to achieve the following functions: Can carry on the binary system , the decimal system and the hexadecimal system transformatio

4、n; Can complete in 10000 to addition, subtraction, multiplication, division; Accurate to the percentile; Have the operation to surpass the expression scope instruction. The design uses AT89C51-based chip, ang through the serial 8-bit LED digital display and 64-bit keyboard control the HD7279A chip t

5、o achieve the required function. The HD7279A is a smart display driver chip with a serial interface and can be driven with a 8-bit transvaginal digital. The chip can complete the full function of the LED display and keyboard interface. This software programming choice C language. The need for progra

6、mming including the main program, subroutine subtraction, addition subroutine, subroutines division, multiplication subroutine, hex conversion program. The program need to apply the required knowledge to make the necessary programming. Key words: AT89C51 microcontroller; HD7279A; LED; keyboard; C la

7、nguage目 录 1 引言 .1 2 总体设计 .2 3 硬件设计 .3 3.1微处理器系统 .3 3.1.1复位电路 .4 3.1.2时钟电 路 .5 3.2键盘和显示模块 .5 3.2.1键盘电路的设计 .6 3.2.2显示电路的设计 .7 3.3串行模块 .8 4 软件设计 .10 4.1 总体程序流程图 .10 4.1.1主程序 . 11 4.1.2延时子程序 .12 4.2 显示、读键模块的设计 .12 4.2.1 LED显示程序设计 .12 4.2.2键盘子程序设计 .13 4.3 加,减,乘,除子程序 .14 4.3.1加法子程序 .14 4.3.2减法子程序 .14 4.3.

8、3乘法子程序 .15 4.3.4除法子程序 .16 4.4进制转换程序 .16 4.5显示错误 .17 4.5.1 除数为 0时显示错误 .17 4.5.2 输入超过 8位时显示错误 .17 5 制作和调试 .18 6 结论 .19 参考文献 .20 附录 1 实验原理图 .21 附录 2 毕业设计作品说明书 .22 附录 3 按键说明 .23 1 引言 目前社会流行使用的计算器,种类繁多功能各异。计算器可 以应用在不同领域,适用不同需求的人们。有些计算器具有抗震性和抗干扰性,且结构简单,操作方便 1。随着社会的发展,科学的进步,微电子技术的发展也非常迅速,电子产品更新速度也非常快。这些年,单

9、片机以其体积小,价格低廉,面向控制等独特的优势,在各种行业如工业控制,仪器仪表,产品自动化,智能化方面都有广泛应用。而且单片机应用系统的可靠性值得信赖。所以使用单片机的计算器应用也非常广泛。 计算器一般由运算器,控制器,存储器,键盘,显示器,电源等构成 【 2】 。低档计算器的运算器和控制器由数字逻辑电路实现简单的计算。高档的 计算器由微处理器和只读存储器实现各种不同的,复杂的运算程序。计算器各部分部件都有着不同的用途。键盘是计算器的输入部件,一般采用接触式,也有采用传感式的。显示器是计算器的输出部件,一般选用发光二极管或者液晶显示器。关于电能,社会在对电力需求快速增加的同时,对能耗指标的关注

10、也日益提升 2。所以计算器电源设计也是值得关注的。为了避免人们工作完成后忘记关掉计算器而浪费电能,计算器都采用 CMOS 工艺制作的大规模集成电路,然后在其内部装有定时不操作自动断电电路。这样即使使用者忘记关掉计算器也不用担心浪费电能,延长电池 使用寿命的同时,也节约了电能。在单片机计算器中基本的测量分为许多模块,每个模块都包含一些特定的测量计算 【 3】 。 本次设计选用 AT89C51 为主芯片,通过串行 8 位 LED 数码显示管和 64 位键盘控制芯片 HD7279A 来实现所需要的功能 【 4】 。本次软件的编程选择 C 语言编程。需要进行的编程主要包括主程序,减法子程序,加法子程序

11、,除法子程序,乘法子程序,进制转换程序等。 系统还设了功能键 ON/C,开始显示 0,按了键后就进入计算状态。 2 总体设计 此次设计的电路采用 AT89C51 单片机为主要控制电路,利用键盘完成 电路的实际操作,编程语言采用 C 语言编写。 主要设计以 AT89C51 为主芯片,通过串行 8 位 LED 数码显示管和 64 位键盘控制芯片 HD7279A 来实现所需要的功能。 硬件的组成主要有三大模块:微处理器系统、键盘和显示模块。单片机系统结构框图如图 2-1 所示: 图 2-1 单片机系统结构图 软件方面选用 C 语言编程,为了实现加,减,乘,除以及二进制、十进制和十六进制转换,需要进行

12、的编程主要包括主程序,减法子程序,加法子程序,除法子程序,乘法子程序,进制转换程序等。 最后通过按键进行操作,实现设计要求。 电源模块 串行模块 51 单片机 驱动模块 LED显示 3 硬件设计 3.1 微处理器系统 本系统的微处理器采用的是 AT89C51 芯片。 AT89C51 是一种带 4K字节闪存可编程可擦除 只读存储器 的低电压 , 高性能 CMOS 8 位微处理器。单片机的可擦除只读存储器可反复擦除 1000 次 【 5】 。 这种 器件 是 采用 ATMEL 高密度非易失存储器制造技术制造 的 , 并且 与工业标准的 MCS-51 指令集和输出管脚相兼容。由于将多功能 8 位 C

13、PU和闪烁存储器组合在单个芯片中, 因此 ATMEL的 AT89C51是一种高效微控制器。 AT89C51 芯片如图 3-1 所示: E A / V P31X119X218R E S E T9I N T 012I N T 113T014T115P 1. 01P 1. 12P 1. 23P 1. 34P 1. 45P 1. 56P 1. 67P 1. 78P 0. 039P 0. 138P 0. 237P 0. 336P 0. 435P 0. 534P 0. 633P 0. 732P 2. 021P 2. 122P 2. 223P 2. 324P 2. 425P 2. 526P 2. 627P

14、2. 728RD17WR16P S E N29A L E / P30T X D11R X D10V C C40V S S20U389 C 5 1V C CX T A L 1X T A L 2P 10P 11P 12P 13P 14P 15P 16P 17R E S E TR X DT X D/ I N T 0/ I N T 1T0T1WRRDA8A9A 10A 11A 12A 13A 14A 15D0D1D2D3D4D5D6D7图 3-1 AT89C51 芯片 主要性能参数: 与 MCS-51 兼容 4K 字节可编程闪烁存储器 寿命: 1000写 /擦循环 数据保留时间: 10年 全静态工作:

15、 0Hz-24MHz 三级程序存储器锁定 1288 位内部 RAM 32 可编程 I/O 线 两个 16位定时器 /计数器 5 个中断源 可编程串行通道 低功耗的闲置和掉电模式 片内振荡器和时钟电路 部分管脚说明: VCC:供电电压。 GND:接地。 RST:复位输入。当振荡器复位器件时,要保持 RST 脚两个机器周期的高电平时间。 XTAL1: 反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出 【 6】 。 3.1.1 复位电路 在单片机系统中,除单片机本身需要复位外,外部扩展的 IO接口电路等也是需要复位的。因此需要一个系统的同步复位信号,也就是单片机复位后

16、, CPU开始工作,外部的电路要复位好,以保证 CPU有效的对外部电路进行初始化编程。 本次所用的复位电路采用上电按钮复位方式。其工作原理如下:通电时,电容两端相当于短路, RST引脚为高电平, RC电路充电,当 RST端电压慢慢下降,当降到低电平时,单片机开始工作。 单片机复位电 路 如图 3-2所示: 图 3-2 单片机复位电路 当电源开始上电的那一瞬间,电容相当于短路, RESET 端输入高电平,AT89C51 复位。当 AT89C51 需要复位的时候,可以手动按下复位键,此时电容通过电阻放电,当放电完毕时, RESET 端为高电平, AT89C51 进入复位状态,放手后电容又开始充电,

17、 RESET 端的电位开始下降, CPU 就脱离复位状态。 3.1.2 时钟电路 时钟电路是用于产生单片机工作所需要的时钟信号。 AT89C51 单片机内部自带时钟电路,所以我们只需要在片外通过 XTAL1 和 XTAL2 引脚接入晶体振荡 器和电容就可以构成一个稳定的自激振荡器。 XTAL1 和 XTAL2 是时钟引脚,外接晶体时与片内的反相放大器构成一个振荡器,提供单片机的时钟控制信号(时钟引脚也可外接晶体振荡器)。它分别为反相放大器的输入端和输出端。 在这个电路中,电容 C2 和电容 C3 的容量大小的确定与晶振频率和工作电压有关系。考虑到电容的大小会影响到起振的快速性和振荡器的稳定性,

18、并且影响精度,因此设置 C2 和 C3 电容的大小为 30PF。 单片机外围时钟电路原理图如图 3-3 所示 : 图 3-3 单片机外围时钟电路 3.2 键盘和显示模块 本次设计使用的显示 模块采用 HD7279A 智能显示驱动芯片。 HD7279A 驱动芯片是一片具有串行接口的,可同时驱动 8 位共阴式数码管或 64 只独立 LED 的智能显示驱动芯片,它同时也可以连接多达 64 个键的键盘矩阵,只需要一片HD7279A 驱动芯片就可以完成 LED 显示和键盘接口的全部功能。 HD7279A 驱动芯片内部含有译码器,可直接接受 BCD 码或 16 进制码,且同时具有 2 种译码方式,此外,还

19、具有多种控制指令,如消隐、闪烁、左移、右移、段寻址等。 HD7279A 的特点如下:串行接口,无需外围元件可直接驱动 LED; 64 键键盘控制器,内含去 抖动电路;有 DIP 和 SOIC 两种封装形式可以供我们选用;它还具有段寻址指令,方便控制独立 LED 等等优点。 键盘显示电路如图 3-4 所示 : e1d2dp3c4g5w16b7w28abfcgdeD P Yabfcgdeabfcgdeabfcgdew39f10a11w412D S 1L N 3 46 1e1d2dp3c4g5w16b7w28abfcgdeD P Yabfcgdeabfcgdeabfcgdew39f10a11w412

20、D S 2L N 3 46 1DP DPSA SASB SBSC SCSD SDSE SESF SFSG SGDIG0DIG1DIG2DIG3DIG4DIG5DIG6DIG7键盘显示模块V D D1/ R E S E T28V D D2RC27NC3C L K O26V S S4D I G 725NC5D I G 624/ C S6D I G 523C L K7D I G 422D A T A8D I G 321/ K E Y9D I G 220SG10D I G 119SF11D I G 018SE12DP17SD13SA16SC14SB15U4/ I N T 1P 11P 10A 14D

21、I G 0D I G 1D I G 2D I G 3D I G 4D I G 5D I G 6D I G 7R6R7R8R 10R 12R19R20R21R14R15R 16R 17R 18SGSFSESDSCV C CV C CV C CG N DR3C9V C CC 1110 4C 1210 4C 1310 4C 1410 4C 1510 4V C CS 5 6 S 5 7 S 5 8 S 5 9 S 6 0 S 6 1 S 6 2 S 6 3R 3010 KS 4 8 S 4 9 S 5 0 S 5 1 S 5 2 S 5 3 S 5 4 S 5 5R 3010 KS 4 0 S 4 1

22、 S 4 2 S 4 3 S 4 4 S 4 5 S 4 6 S 4 7R 3010 KS 3 2 S 3 3 S 3 4 S 3 5 S 3 6 S 3 7 S 3 8 S 3 9R 3010 KS 1 6 S 1 7 S 1 8 S 1 9 S 2 0 S 2 1 S 2 2 S 2 3R 3010 KS 2 4 S 2 5 S 2 6 S 2 7 S 2 8 S 2 9 S 3 0 S 3 1R 3010 KS8 S9 S 1 0 S 1 1 S 1 2 S 1 3 S 1 4 S 1 5R 3010 KS0 S1 S2 S3 S4 S5 S6 S7R 3010 KR 3010 KR 3010 KR 3010 KR 3010 KR 3010 KR 3010 KR 3010 KR 3010 K图 3-4键盘显示电路 3.2.1 键盘电路的设计 键盘被用来向 CPU 输入运行参数和控制系统的运行状态。每个按键都有它的行值和列值,行值和列值的组合就是识别这个按键的编码。矩阵的行线和列线分别通过二并行接口和 CPU 通信。按键的一端(列线)通过电阻接 VCC,而接地是

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。