单片机课程设计-计算器.doc_第1页
单片机课程设计-计算器.doc_第2页
单片机课程设计-计算器.doc_第3页
单片机课程设计-计算器.doc_第4页
单片机课程设计-计算器.doc_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

单片机应用 课程设计报告题 目: 简易计算器的设计 院 (系): 信息科学与技术 专业班级: 通信工程 学生姓名: 学 号: 指导教师: 刘丽 20 12 年 6 月 11 日至20 12 年 6 月 15 日华中科技大学武昌分校 单片机应用 课程设计任务书一、设计(调查报告/论文)题目简易计算器的设计二、设计(调查报告/论文)主要内容通过对计算器的安装调试,需学习掌握完成:(1)单片机系统的整体设计流程。(2)单片机系统的硬件、软件调试方法及相关工具的使用。(3)理解电路原理图与工作过程。(4)各种常见元器件的选择及使用。三、原始资料(1)计算器电路原理图及元器件清单(2)制作套装四、要求的设计(调查/论文)成果用80C51/52单片机小系统编程制作的简易计算器,要求:(1) 要有4位LED显示器。(2) 要有09个数字输入按键,和功能按键分别是 “+”,“-”,“*”,“/”,“=” “CLR”,“RET”。即“加法”,“减法”,“乘法”,“除法”,“等于”,“清除” ,“修改”(3) 显示过程:实验板通电开机后,第一位LED显示器显示“0”,按下相应数字,在按运算键“+ 、- 、*、/ ”后,再按第一组数字,继续按下“=”即可显示整数运算结果。按“清除键”,清除当前LED显示器上的全部数字,按“修改键” ,清除当前LED显示器上右边的一个数字。(4) 能够正确安装和焊接硬件电路板。拿到元器件后,用万用表对电子元器件进行参数测量、检查。焊接时,要焊点饱满、光洁,无虚焊、漏焊、错焊。(5) 熟悉单片机系统的工作原理及调测方法。软硬件安装调测完成后根据系统的工作原理、过程、测试数据及遇到的问题与处理情况、体会等完成课程设计报告,格式符合学校规范标准,字数不少于2000字。五、进程安排第一天:讲解课题,选择课题,分发元器件,焊接、调试硬件;第二天到第四天:编写、调试程序;第五天:系统验收、评分,交课设报告。六、主要参考资料1 陈青.单片机应用课程设计指导书.武汉:华中科技大学武昌分校.2 姜志海.单片机原理及应用.北京:电子工业出版社,2007.3 康华光.电子技术基础模拟部分,北京:高等教育出版社,2003.指导教师(签名): 20 年 月 日课程设计报告撰写内容、格式与成绩评定一、课程设计报告的撰写内容与要求1.课程设计总结报告应包括:前言、基本原理或理论、设计计算书或实验报告、结论、图纸(框图、流程图)、参考资料等;或调查、访谈报告、调查问卷、调查提纲等。2.课程设计总结报告应书写工整,文句通顺、精炼、逻辑性强,图纸和曲线的绘制应符合规范。3.调查型课程设计应根据调查结果撰写调查报告。调查报告内容包括:题目、参加时间、地点、方式、过程、调查对象一般情况、调查内容、发现的问题、调查结果和调查分析及体会等。调查报告要求语言简练、准确;叙述清楚、明白;数据、资料可靠;结论有理、有据。4.图纸应布局合理,比例恰当,线条分明,字体工整,符合国家制图标准。5.课程设计报告字数要求:理工、艺术类不少于2000字,其他专业不少于3000字。二、课程设计成绩评定1.学生的课程设计成绩由平时成绩、业务考核成绩两部分组成,均为百分制记分,其中平时成绩占总成绩的30%,业务考核成绩占70%。业务考核含设计报告(计算说明书、调查提纲、调查问卷等)、绘制的图纸、编制的软件、制作的模型、撰写的论文或问卷统计、调查分析等的完成及质量情况;平时成绩含设计表现、到课率等。2. 教师按学生实际成绩(百分制,含平时成绩和业务考核成绩两部分)登记并录入教务MIS系统,由系统自动转化为“优秀(90100分)、良好(8089分)、中等(7079分)、及格(6069分)和不及格(60分以下)”五等。1目 录1.课程设计的目的22.课程设计题目描述和要求23.课程设计报告内容23.1 课题设计方案及基本原理23.2 软件设计43.3 调试54.总结5参考资料5附录1电路原理图6附录2 硬件实物图7附录3 源程序清单81 课程设计的目的通过对简易计算器的安装调试,需学习掌握:(1) 单片机系统的整体设计流程。(2) 单片机系统的硬件、软件调试方法及相关工具的使用。(3) Protel绘制电路原理图的方法。(4) 各种常见元器件的选择及使用。2 课程设计题目描述和要求题目描述:简易计算器的设计制作要求:用80C51/52单片机小系统编程制作的简易计算器。(1) 要有4位LED显示器。(2) 要有09个数字输入按键,和功能按键分别是 “+”,“-”,“*”,“/”,“=” “CLR”,“RET”。即“加法”,“减法”,“乘法”,“除法”,“等于”,“清除” ,“修改”(3) 显示过程:实验板通电开机后,第一位LED显示器显示“0”,按下相应数字,在按运算键“+ 、- 、*、/ ”后,再按第一组数字,继续按下“=”即可显示整数运算结果。按“清除键”,清除当前LED显示器上的全部数字,按“修改键” ,清除当前LED显示器上右边的一个数字。(4) 能够正确安装和焊接硬件电路板。拿到元器件后,用万用表对电子元器件进行参数测量、检查。焊接时,要焊点饱满、光洁,无虚焊、漏焊、错焊。(5) 熟悉单片机系统的工作原理及调测方法。软硬件安装调测完成后根据系统的工作原理、过程、测试数据及遇到的问题与处理情况、体会等完成课设报告。3 课程设计报告内容3.1 课题设计方案及基本原理 硬件设计方案及原理分析 图3-1 简易计算机核心硬件电路图芯片选择:本电路采用了主控芯片8051,另外采用了两款辅助译码芯片4511和4028,反向驱动芯片2003。数码管点亮原理:4511辅助单片机对数码管进行段选,单片机的p1口的低四位用来控制4511作段选。本实验中段选为高电平有效 。4028四十译码器辅助单片机对数码管进行位选,单片机的p1口的高四位用来控制4028的输入端作位选。实验中采用的数码管是共阴极的,位选低电平表示选中,电路图中有反向驱动芯片接在数码管与4028之间,故4028输出的高电平的引脚即为被点亮的数码管。通过给p1口赋值,位选段选结合起来便可以实现数码管的各种点亮方式。按键检测原理:通过p2口和p0口与按键地相连。通过检测p2,p0口的数值便可以判断出哪个被按下了,将相应的键值存储在缓存区,若是数字则通过数码管显示出来。3.2 软件设计 软件设计流程图如下 开始读取键值判读键值输入次数KeyPos=9判断m=1判断操作符op=1判断等于equ=1YNNNYY加减乘除add=1dec=13mul=14div=115显示N读第一个操作数KeyPos=0,数字清零计算结果判断清零键clr=1复位 标志位数字都为零3.3 调试 硬件焊接没有出现故障。在程序设计时将jishu3的类型定义为unsigned int 型 ,导致计算数值超过4位时便出错,显示紊乱的数据。将数据类型定义为unsigned long int 型后没有出现故障。 Unsigned int 的数值范围为065535,而unsigned long int 的数值范围为04294967295,由此可见在数据类型定义的时候要充分考虑运算范围,这种错误在程序编译时不会报错,但在实际中却会出现计算紊乱。 4 总结 这学期学习了有关单片机的知识,对单片机工作原理有一定的认识,对数码管和按键的的原理比较熟悉,在课堂上学习了汇编语言编程,在电子协会学习了c语言编程。这次的课程设计的电路中是用译码器作为段选的,所以显示程序必须根据电路来设计,先把段选送到P1口的低四位,然后再把位选送到P1口的高四位,通过按键的读和回馈点亮数码管。在程序设计过程中,先考虑怎么通过按键扫描来读取按键值判断是数字(要考虑多位的移位的判断和显示)或者是操作符(要根据此判断前后数字的互异和等号),读取的数字怎么送显示等,还要与电路紧密相结合。键盘的防抖动的延时时间要比较精确,时间长了或短了都会影响键盘的灵敏度。 参考文献1 姜志海.单片机原理及应用.北京:电子工业出版社,2007.2 陈青.单片机应用课程设计指导书.武汉:华中科技大学武昌分校.3 康华光.电子技术基础模拟部分,北京:高等教育出版社,2003. 附录1电路原理图附录2 硬件实物图 附录3 源程序清单#include #define uchar unsigned char#define uint unsigned intbit equ; /等号判断bit clr; /清零标志bit add; /加标志bit dec; /减标志bit mul; /乘标志bit div; /除标志bit op; /算术符号标志bit mov1;bit m;uchar KeyPos;uchar KeyNo; /键值uint result; /计算结果uint PreNum,LatNum;/前操作数,后操作数uchar NumBufe8;uchar Tcode=0,16,32,48,64,80,96,112;void ChangeNum(uchar *p,uchar nCount,uchar mCount) if(nCount0) *(p+ncount)=*(p+ncount-1); ncount-; NumBufe0=mCount; void Display(void) /显示 int t; for(t=0;t=7;t+) P1=Tcodet+NumBufet;Delay(1); void ResultNum(void)/算法 if(op) if(add) result=PreNum+LatNum; if(dec) result=PreNum-LatNum; if(mul) result=PreNum*LatNum; if(div) result=PreNum/LatNum; if(clr) NumBufe8=0;add=dec=mul=div=op=equ=PreNum=LatNum=result=mov1=0; NumBufe7=result/10000000; NumBufe6=result/1000000%10; NumBufe5=result/100000%10; NumBufe4=result/10000%10; NumBufe3=result/1000%10; NumBufe2=result/100%10; NumBufe1=result/10%10; NumBufe0=result%10; op=0;equ=0; void Keyscan(void)/扫描键盘 if(P0!=0xFF) Delay(1); if(P0!=0xFF) switch(P0) case 0xFE:while(P0=0xFE); KeyNo=7; ChangeNum(NumBufe,KeyPos,KeyNo);KeyPos+;break; case 0xFd:while(P0=0xFd); KeyNo=8; ChangeNum(NumBufe,KeyPos,KeyNo);KeyPos+;break; case 0xFB:while(P0=0xFb); KeyNo=9; ChangeNum(NumBufe,KeyPos,KeyNo);KeyPos+;break; case 0xF7:while(P0=0xF7); op=1;add=1;m=1; break; case 0xEF:while(P0=0xef); KeyNo=4; ChangeNum(NumBufe,KeyPos,KeyNo);KeyPos+;break; case 0xDF:while(P0=0xdf); KeyNo=5; ChangeNum(NumBufe,KeyPos,KeyNo);KeyPos+;break; case 0xBF:while(P0=0xbf); KeyNo=6; ChangeNum(NumBufe,KeyPos,KeyNo);KeyPos+;break; case 0x7F:while(P0=0x7f);op=1;dec=1;m=1; break; if(P2!=0xFF) Delay(1); if(P2!=0xFF) switch(P2) case 0xFE:while(P2=0xFE); KeyNo=1; ChangeNum(NumBufe,KeyPos,KeyNo);KeyPos+;break; case 0xFd:while(P2=0xFd); KeyNo=2; ChangeNum(NumBufe,KeyPos,KeyNo);KeyPos+;break; case 0xFB:while(P2=0xFb); KeyNo=3; ChangeNum(NumBufe,KeyPos,KeyNo);KeyPos+;break; case 0xF7:while(P2=0xF7);op=1;mul=1;m=1; break; case 0xEF:while(P2=0xef); KeyNo=0; ChangeNum(NumBufe,KeyPos,KeyNo);KeyPos+;break; case 0xDF:while(P2=0xdf); clr=1; break; case 0xBF:while(P2=0xbf); op=1;div=1;m=1; break; case 0x7F:while(P2=0x7f); equ=1; break; Void Clear(void

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论