




已阅读5页,还剩12页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
河南大学物理与电子学院单片机课程设计论文河南大学物理与电子学院2015级单片机课程设计论文简单计算器制作论 文 作 者:论文 合 作者:所 在 学 院:所 学 专 业:指导教师姓名:论文完成时间: 13目 录前言.11系统组成与功能21.1 系统组成21.1.1 AT89C51单片机21.1.2四位一体七段数码管31.1.3 MY2408-16P语音模块31.2 系统功能52 方案设计52.1方案论述52.2 系统仿真图62.3 实物照片63 程序流程图74 具体程序代码85 结论116 扩展部分设计心得12参考文献12简单计算器(河南大学物理与电子学院,河南 开封,475004)前言近年来,单片机以其体积小、价格廉、面向控制等独特优点,在各种工业控制、仪器表、设备、产品的自动化、智能化方面获得了广泛的应用。与此同时,单片机应用系统的可靠性成为人们越来越关注的重要课题。影响可靠性的因素是多方面的,如构成系统的元器件本身的可靠性、系统本身各部分之间的相互耦合因素等。其中系统的抗干扰性能是系统可靠性的重要指标。单片微型计算机简称单片机。它是在一块芯片上集成中央处理器(CPU)、随机存取存储器(RAM)、只读存储器(ROM)、定时/计数器及I/O接口电路等部件,构成一个完整的微型计算机。它的特点是:高性能,高速度,体积小,价格低廉,稳定可靠,应用广泛。单片机比专用处理器最适合应用于嵌入式系统,因此它得到了最多的应用。本文介绍了单片机的产生发展、功能特点、应用开发等内容。本设计采用80c51芯片,实现了利用单片机进行了一个简单计算器设计。允许对输入数据进行加,减,乘,除,运算及数码管显示如果设计对象是更为复杂的计算器系统,其实际原理与方法与本设计基本相同。本设计是基于51系列单片机来进行的数字计算器系统设计,可以完成计算器的键盘输入,进行加、减、乘、除基本四则运算,并在数码管上显示相应的结果;在本学期的单片机在课程设计中,我们两个人一组共同讨论并设计出了一种采用AT89C51单片机为主要控制电路,软件方面使用C语言编程,并用PROTUES仿真。同时我们两个人在能实现其基本功能的基础上进行了一定程度的功能扩展。1系统组成与功能1.1 系统组成本系统主要有AT89C51单片机、按键键盘、FM8000-B芯片、24C02存储芯片、四位一体七段数码管等元件组成。1.1.1 AT89C51单片机引脚图如图1-1所示。图1-1 AT89C51引脚图AT89S51具有如下特点:40个引脚,8k Bytes Flash片内程序存储器,256 bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。此外,AT89C51设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。1.1.2 四位一体七段数码管 本设计用到四位一体的七段数码管1个,其原理与单个的数码管显示原理是一样的。四位一体的数码管共12个引脚。A-dp八个引脚对应八根数据线,控图14 数码管内部结构及引脚图制显示的字形。DIG1-DIG2四个引脚为公共端,控制当前显示字形的位别,为扫描法显示提供了方便,有效减少了数码管占用的单片机引脚数。下面便是一个共阴的四位数码管的内部结构图。引脚排列依然是从左下角的第一只管脚开始,以逆时针方向依次为1-12脚,数码管内部结构及引脚参见图41 。 1.1.2 MY2480-16P 语音模块采用MY2480-24TS MP3主控芯片,支持MP3、WAV格式双解码。模块最大支持16M Byte FLASH;也可外接U盘或USB数据线连接电脑更换FLASH音频文件。该模块内置3W功放,可以直接驱动3W的喇叭,使用更方便。模块管脚定义管脚号管脚名称功能描述备注1BUSY播放时输出高电平,暂停或停止为低2DM连接 U 盘或者 USB 连接电脑下载声音3DP4GND系统地5DACR右声道音频信号输出可外接单双声道功放6DACL左声道音频信号输出7RXUART 异步串口数据输入3.3V TTL 信号8TXUART 异步串口数据输出95V电源正极电源范围 DC3.4-5.4V10SPK1外接无源喇叭两线直接接在无源喇叭两端11SPK2外接无源喇叭12IO5接按键或者单片机控制13IO4接按键或者单片机控制可通过3电阻选择不同触发功能,14IO3接按键或者单片机控制5IO 单片机组合可选择29首曲目播放,下文有说明!15IO2接按键或者单片机控制16IO1接按键或者单片机控制1.2 系统功能 本设计的主要功能是用单片机来控制4*4矩阵键盘的输入,然后用单片机进行运算,同时四位一体七段数码管上显示当前输入数据和计算得出的结果。 扩展后的系统增加了语音播放功能,即通过电路中的4*4矩阵按键操作并播放当前输入数值和输入完成后计算结果数值,且数码管同步显示。2.方案设计2.1 方案论述根据功能和指标要求,本系统选用MCS-51系列单片机AT89C51为主控机。通过扩展必要的外围接口电路,实现对计算器的设计。计算器电路包括三个部分:显示电路、4*4键扫描电路、单片机微控制电路。用七段数码管作为显示电路,矩阵键盘作为输入电路。模块图如图1.1所示。图2.1方案一模块图2.2 系统仿真图2.3 实物照片3 程序流程图4 主要程序源代码#include void keyscan() uchar temp;P3=0xfe;if(P3!=0xfe)delay(5);if(P3!=0xfe)temp=P3&0xf0;switch(temp)case 0xe0:num=0;dig=1;P1=0x78;break;/1case 0xd0:num=1;dig=2;P1=0xb8;break;/2case 0xb0:num=2;dig=3;P1=0xd8;break;/3case 0x70:num=3;P1=0x80;break;/ /while(P3!=0xfe);flag=1;P3=0xfd;if(P3!=0xfd)delay(5);if(P3!=0xfd)temp=P3&0xf0;switch(temp)case 0xe0:num=4;dig=4;P1=0xe8;break; /4case 0xd0:num=5;dig=5;P1=0xf0;break; /5case 0xb0:num=6;dig=6;P1=0x60;break; /6case 0x70:num=7;P1=0x70;break; /*while(P3!=0xfd);flag=1;P3=0xfb;if(P3!=0xfb)delay(10);if(P3!=0xfb)temp=P3&0xf0;switch(temp)case 0xe0:num=8;dig=7;P1=0xe0;break;/7case 0xd0:num=9;dig=8;P1=0x10;break;/8case 0xb0:num=10;dig=9;P1=0x90;break;/9case 0x70:num=11;P1=0xb0;break;/-while(P3!=0xfb);flag=1; P3=0xf7;if(P3!=0xf7)delay(10);if(P3!=0xf7)temp=P3&0xf0;switch(temp)case 0xe0:num=12;break;/ccase 0xd0:num=13;P1=0x88;dig=0;break;/0case 0xb0:num=14;P1=0x08;break;/=case 0x70:num=15;P1=0x30;break; /+while(P3!=0xf7);flag=1; void deal() /四则运算 依次运算输出unsigned long result=0;switch(fuhao)case 15:result=lvalue+rvalue;break;case 11:result=lvalue-rvalue;break;case 7:result=lvalue*rvalue;break;case 3:if(rvalue=0) return;result=lvalue/rvalue;break;case 12:lasttoken=0;break;if(result=100000000)result=0;lvalue=result;display(lvalue); /输出rvalue=0;return;void main()Timer0Init();display(0);while(1)keyscan();if(flag=1)flag=0;if(num=3|num=7|num=11|num=14|num=15|num=12)operator();elsedigits(dig);5 结论课程设计是培养我们综合运用所学知识,发现、提出、分析和解决实际问题,锻炼实践能力的重要环节,是对我们实际工作能力的具体训练和考察过程。随着科学技术发展的日新日异,单片机已经成为当今计算机应用中空前活跃的领域,在生活中可以说得是无处不在。因此作为计算机专业的学生来说掌握单片机的开发技术是十分重要的。我们的题目是基于单片机设计简易计算器,对于我们这些实践中的新手来说,这是一次考验。这次课程设计我们学到很多很多的东西,学会了怎么在遇到问题时去解决问题。不仅巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识,掌握了一种系统的研究方法,可以进行一些简单的编程。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从而提高自己的实际动手能力和独立思考的能力。同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。本次课程设计由于所设计的知识涉及很广,许多设计中的硬件工作方式以及功能的实现方法都是我以往并不知道的,这迫使我去查阅许多相关资料文献,学习相关知识,这些不但使我学习了许多新的知识,而且锻炼了我独立学习新知识的能力。我们的设计是以小组为单位,如果一个小组不能很好的配合工作学习是不能把设计做好的,这些都锻炼了我们的互相配合、互相帮助的团队协作能力。这次课程设计通过我们小组的努力终于顺利完成了,在设计中遇到了很多问题,最后在老师的指导和同学的帮助下,最终迎刃而解,在此我们表示感谢!6 扩展部分设计心得本制作组主要扩展了语音播放功能。扩展部分主要使用MY2480-16P语音播放模块,此模块的主要优点是不用专门的语音烧录模块,可以用USB数据线直接下载语音。另外本小组还准备扩展了红外控制模块,由红外遥控器控制数据的输入和计算。但扩展过程中仍然遇到很多问题。由
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年电商全链路代运营及加密货币交易服务框架协议
- 2025年风能发电项目合作协议书
- 2025年跨境电商支付结算服务与融资一体化合作协议
- 2025年建筑工程类二级消防工程师消防安全技术综合能力-消防安全案例分析参考题库含答案解析(5套试卷)
- 2025年建筑工程类一级消防工程师-消防安全技术综合能力参考题库含答案解析(5套试卷)
- 2025年跨区域国际贸易纠纷调解与仲裁服务合同
- 2025年环保建材研发与推广战略合作协议
- 2025年公立医院医疗纠纷保险理赔服务协议范本
- 2025年企业员工全面健康管理与职业病预防定制服务合同
- 2025年高端玻璃器皿模具研发与生产线优化升级合作协议
- GB/T 6344-2008软质泡沫聚合材料拉伸强度和断裂伸长率的测定
- GB/T 3836.4-2021爆炸性环境第4部分:由本质安全型“i”保护的设备
- GB/T 20801.6-2020压力管道规范工业管道第6部分:安全防护
- GA/T 1163-2014人类DNA荧光标记STR分型结果的分析及应用
- 蒸汽发生器设计、制造技术要求
- 全套课件-水利工程管理信息技术
- 施工员钢筋工程知识培训(培训)课件
- 《阿房宫赋》全篇覆盖理解性默写
- 学校体育学(第三版)ppt全套教学课件
- 住建部《建筑业10项新技术(2017版)》解读培训课件
- NCStudioGen6A编程手册
评论
0/150
提交评论