版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上单片机应用课程设计报告 设计题目8位四则运算计算器姓 名胡成、柏壮壮、王庆安、杜威、孙润学 号Z、ZZ、Z、Z年 级2014级专 业自动化指导教师张道信、张德祥考核成绩电气工程与自动化学院2017 年 6 月 28 日专心-专注-专业8位四则运算计数器摘要随着时代的发展,单片机在生活中应用越来越广泛。而生活中,用到计算的场合十分之多,有时候计算较复杂时,人工计算远远不及计算器的快速性、准确性。因此计算器的出现大大便捷了人类生活。本文介绍用STC89C52RC单片机来设计简单四则运算计算器。关键词:STC89C52RC、硬件电路、软件程序8 Bit Arithmetic
2、s CalculatingAbstractWith the development of the era, MCU becomes more and more general in life. And calculation applies to many occasions in life, sometimes calculate by self can not be comparable to calculating in complex occasions, especially in the aspect of rapidity and accuracy. So, the appear
3、ance of calculating has convenient peoples lives. This writings introduces how to design simple arithmetics calculating with STC89C52RC MCU. Keywords: MCU、Hardware circuit、Software program 目录第1章 单片机的基本概述1.1 基本概述单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能集成到一
4、块硅片上构成的一个小而完善的微型计算机系统。经过40多年的发展,单片机以其成本低、体积小、可靠性高、系统结构简单、性能价格比高的特点,在工业测控、仪器仪表、航天航空、武器准备、家用电器等领域中得到了广泛应用。本次课设所采用的STC89C52单片机是STC公司生产的一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash存储器。STC89C52使用经典的MCS-51内核,但做了很多的改进使得芯片具有传统51单片机不具备的功能。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。 具有以下标准功能
5、: 8k字节Flash,512字节RAM, 32 位I/O 口线,看门狗定时器,内置4KB EEPROM,MAX810复位电路,3个16 位定时器/计数器,4个外部中断,一个7向量4级中断结构(兼容传统51的5向量2级中断结构),全双工串行口。另外 STC89X52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。最高运作频率35MHz,6T/12T可选。第2章 单片机应用课程设计的目的和意义2.1 设计的目的和
6、意义为了进一步巩固学习的理论知识,增强我们对所学知识的实际应用能力和运用所学的知识解决实际问题的能力,开始为期5至14天的单片机课程设计。单片机课程设计中,通过查阅资料,接口设计,程序设计,安装调试等环节,完成一个简单8位计算器的设计编程应用。使我们不但能够将理论与实践结合,且能够进一步认识电子电路、电子元器件、PCB板。同时提高自己软件编程,出错调试等技巧。通过实训使我们在巩固所学知识的基础之上具有初步的单片机系统设计与应用能力。第3章 系统的硬件电路设计3.1 系统的整体设计框架图3.1 系统总体设计框架3.2 系统的硬件设计模块3.2.1 晶振电路 本系统采取11.0592MHz晶振为振
7、荡源,为单片机提供时钟信号,如图3.2所示。图3.2 晶振电路3.2.2 复位电路系统复位电路如图3.3所示图3.3 复位电路3.2.3 矩阵键盘电路共计16个按键,采用4*4矩阵键盘,键盘的行和列之间都有公共端相连,四行和四列的8个公共端分别接P3.0P3.7,这样扫描P3口就可以完成对矩阵键盘的扫描,通过对16个按键进行编码,从而得到键盘按键地址,对比P3口的扫描结果和各按键的地址,我们就可以得到是哪个键按下。如图3.4所示。图3.4 矩阵键盘电路3.2.4 蜂鸣器电路蜂鸣器电路就是在计算结果出现错误(溢出)时或输入数据出现错误时,发出声音警报,提示使用者错误出现。在编写程序时,报警电路实
8、现的功能是:当计算正常时使P2.3口输出高电平时,蜂鸣器不会响应。当计算出现错误(例如0作为被除数时)此时给P2.3输出低电平,使蜂鸣器响应,达到报警功能。如图3.5所示。图3.5 蜂鸣器电路3.2.5 LCD显示电路本设计采用LCD液晶显示器来显示输出数据通过D0-D7引脚向LCD写指令字或写数据以使LCD实现不同的功能或显示相应数据。如图3.6所示。图3.6 LCD显示电路第4章 系统的软件设计4.1 矩阵键盘扫描程序扫描键盘看是否有键输入,先消除抖动,然后确认是否真的有按键按下,最后确认哪个键被按下得出键值。流程图如图4.1所示。图4.1 键盘扫描流程图这里采用行扫描的方法来完成对键盘的
9、扫描。行扫描就是逐行扫描键盘,看是哪一行有键按下,再通过返回的键码来确定究竟是哪个按键按下。如对第一行扫描就令P3.0为低,P3口其余为高,这样若第一行有键按下,则P3口的值就会由0xfe变为其他值,再由这个值来确定是哪个键按下。部分程序如下(此处为扫描第一行键盘):void keyscan() uchar temp; P3=0xfe; temp=P3; temp=temp&0xf0; while(temp!=0xf0) delay(5); temp=P3; temp=temp&0xf0; while(temp!=0xf0) temp=P3; switch(temp) case
10、 0xee:num=0; break; case 0xde:num=1; break; case 0xbe:num=2; break; case 0x7e:num=3; break; while(temp!=0xf0) temp=P3; temp=temp&0xf0; 4.2 LCD程序LCD显示流程图如图4.2所示:图4.2 LCD显示流程图部分程序:初始化程序:void write_com(uchar com) RS=0; RW=0; E=1; P0=com; delay(5); E=0;void write_dat(uchar dat) RS=1; RW=0; E=1; P0=d
11、at; delay(5); E=0;void init() delay(15); write_com(0x38); delay(6); write_com(0x38); delay(6); write_com(0x38); write_com(0x38); write_com(0x0c); write_com(0x06); write_com(0x01);显示程序(以执行减法为例): if(fuhao=2) write_com(0x80+0x4f); write_com(0x04); if(a>=b) c=a-b;if(c>) bg=0; delay(100); bg=1; wri
12、te_dat(0x52); write_dat(0x4f); write_dat(0x52); write_dat(0x52); write_dat(0x45); while(c!=0&&c<=&&c>=-) write_dat(0x30+c%10); c=c/10; else if(a<b) c=b-a; if(c<) bg=0; delay(100); bg=1; write_dat(0x52); write_dat(0x4f); write_dat(0x52); write_dat(0x52); write_dat(0x45); while(c!=0&&c<=&&c>=-) write_dat(0x30+c%10); c=c/10; write_dat(0x2d); write_dat(0x3d); a=0;b=0;flag=0;fuhao=0;第5章 功能分析5.1 功能分析加:结果8位内加法运算,结果超出8位蜂鸣器报警,LCD显示ERROR。减:结果8位内减法运算,结果可为负(负数显示带负号),超出8位蜂鸣器报警,LCD显示ERROR乘:结果8位内乘法运算,结果超出8位蜂鸣器报警,LCD显示ERROR。除:结果带四位小数除法运算,0为除数或
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 全员安全培训的意义
- 空调销售实战话术
- 滴道区安全检查报告讲解
- 安全专人专责制度讲解
- 银保监会面试高分攻略
- 光纤介绍教学课件
- 安全生产书籍设计讲解
- 轮机员英语面试指南
- 2025-2026学年天津市河东区多校联考九年级(上)期中化学试卷(含答案)
- 光伏项目交通安全培训课件
- 浙江省温州市瑞安市2024-2025学年四年级上册期末考试数学试卷(解析版)
- 儿童急性呼吸道感染病原学诊断与临床管理专家共识2026
- 缺铁性贫血并发症的预防与护理
- 2026年度安全生产工作计划参考模板
- 公路计量支付培训
- 2025年沈阳华晨专用车有限公司公开招聘参考笔试题库及答案解析
- 2025年河北石家庄市招聘工会社会工作人员25名笔试历年题库带答案解析
- 2026马年元旦放假通知及安全教育主题班会课件
- 亚洲投资银行课件
- (一诊)达州市2026届高三第一次诊断性测试历史试题(含答案)
- 《汽车网络与新媒体营销》期末考试复习题库(附答案)
评论
0/150
提交评论