毕业设计,基于C51单片机的简易计算器的设计演示课件_第1页
毕业设计,基于C51单片机的简易计算器的设计演示课件_第2页
毕业设计,基于C51单片机的简易计算器的设计演示课件_第3页
毕业设计,基于C51单片机的简易计算器的设计演示课件_第4页
毕业设计,基于C51单片机的简易计算器的设计演示课件_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

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

文档简介

1、毕业答辩报告基于单片机的简易计算器的制作13456789CL02Design by XXX2011-04很高兴各位老师能够在百忙之中听我的毕业答辩!Design by XXX2011-042课题背景单片机已逐渐成为电子产品研制和开发中首选的控制器,它的应用越来越成为人们关注的焦点,计算器在日常生活中是比较常见的电子产品之一。用单片机来实现计算器的基本功能这一课题不仅能与生活实际相结合,又能很好的验证应电专业学生的基础知识和动手能力,其难度适合专科生设计制作。设计要求(1)计算器能显示8位数字,开机运行时,只有数码管最低位显示为“0”,其余位全部不显示;(2)具有44键盘,分别表示09、/ 、和

2、清零键CL,输入的数字从设计的键盘输入;(3)可对两个无符号数进行加、减、乘、除运算,并显示计算结果。(4)结果溢出时发出“嘀”报警声。(5)制作出实物,写出合格的毕业论文。(6)相互协作完成任务。合作共赢吴乐平:主要负责软件的编写设计,同时负责电路的修改。PPT的制作策划。张立宝:硬件的设计各自论文的缮写,合作共赢。任务进程选择适合自己的毕业课题课题申报表,任务书的下达查找资料,策划任务PCB板画板(使用Altium DXP画板),软件设计及编写(KEIL、及C-Free),Proteus软件的仿真、调试。后期细微修改。提交PCB文件进行打样,购买元器件,焊接元件,烧录软件,调试实物。成果汇

3、报PPT制作。毕业论文的编写及修改,答辩。8硬件部分的设计多个方案的对比方案一:在一开始设计的时候,我们采用了P0口( P0口加上10K上拉电阻)作为段码驱动显示,P2口作为位驱动,P1口作为键盘驱动识别,这样,P0口作为段驱动,可以使数码管更亮(通过调节上拉电阻的阻值,单片机其他准IO口内部有30K的上拉电阻,这里采用10K的上拉电阻,可以比其他IO口输出更大的电流)缺点,键盘布局不适合使用操作,PCB布线较多的跳线。方案二:采用P1口段驱动显示,P2口位驱动,在段驱动加上74LS244缓冲器,使显示更稳定,P0口加上10K上拉电阻作为键盘扫描识别。显示依然不够稳定,PCB布线跳线较多,如果

4、开发为两块板,导线需要较多,不够稳定。多个方案的对比方案三:在设计确定方案的过程中,我们设计了好几种方案,也不断地改进中,最终确定使用显示板使用MAX7219驱动两个共阴四位七段数码管显示数字。因为使用MAX7219驱动数码管显示,亮度稳定,不闪烁,具有10MHz连续串行口 、独立的LED段控制 、数字的译码与非译码选择 、150A的低功耗关闭模式、亮度的数字和模拟控制 、高电压中断显示 、共阴极LED显示驱动 等特点,同时,显示接口简单(只有VCC 5V电源输入,可以和单片机同源供电,GND端,LOAD数据装载输入端,CLK时钟输入端,和DIN串行数据输入端。仿真电路图仿真中串口 RS232

5、程序下载左边的原理图为程序烧写模块,使用串口进行程序的下载。适用于STC 51系列单片机,Atmel的89S51平预留有接插件,方便程序下载,下载板需另外制作。单片机周边设计在进行I/O口工作分配的时候,考虑到布线及产品的美观性,以及操作的简易性,P1口为显示驱动,P0口接上拉电阻(103,10K),用于键盘扫描,蜂鸣器由P34口驱动,使用上电自动复位,时钟部分使用12MHz晶振。驱动显示接口显示板供电口复位时钟电路103排阻,P0键盘扫描单片机周边设计P3.0,P3.1专用单片机程序下载,其他I/O口未使用。P2口闲置,备以后扩展使用。J20其中三个引脚接到P1.0,P1.1,P1.2,分别

6、为LOAD(数据装载输入端),CLK(单片机提供给显示驱动芯片MAX7219的时钟信号),DIN(串行数据输入),加上两个电源端口,驱动显示板。驱动显示接口显示板供电口复位时钟电路103排阻,P0键盘扫描键盘扫描键盘扫描由P0口驱动。采用4*4键盘设计,满足设计要求的所有功能。显示板显示板电路原理图,使用MAX7219驱动数码管,它将单片机传送过来的显示信号进行解码,驱动数码管显示。具有亮度稳定,不闪烁,可达10MHz的扫描频率。显示信号传输用线少,适合把主板和显示板分开设计。接口定义为(只有VCC 5V电源输入,可以和单片机同源供电,GND端,LOAD数据装载输入端,CLK时钟输入端,和DI

7、N串行数据输入端)。MAX7219显示驱动IC驱动显示接口显示板供电口显示亮度控制两块7段四位数码管主板原理图设计好的-主板设计好的-显示板显示端口定义/使用时应保证本计算器的输入数值与输出数值均不大于65536 数码管驱动芯片用的MAX7219,运算和键盘扫描用STC89C51#include /调用库函数unsigned char key,temp;#define DIN P1_0 /串行数据输入引脚#define CLK P1_1 /同步时钟#define LOAD P1_2 /数据输入使能延时/-20ms延时子程序-void delay10ms(unsigned char time)u

8、nsigned char a,b,c;for(a=0;atime;a+)for(b=0;b20;b+) for(c=0;c120;c+) ;/用于键盘扫描蜂鸣器定时。键盘扫描子程序数据发送子程序/-数据发送子程序-void send(unsigned char addr,unsigned char dat) unsigned char ADS,i,j; LOAD=0; i=0; while(i16) if(i=1;j-) DIN=ADS&0 x80; ADS=1; CLK=1; CLK=0; i+=8; LOAD=1;/驱动MAX7219,将显示代码传送给MAX7219.数据显示子程序n0=n

9、/10000000; n1=(n/1000000)%10; n2=(n/100000)%10; n3=(n/10000)%10; n4=(n/1000)%10; n5=(n/100)%10; n6=(n/10)%10; n7=n%10;/传输数据的编码/-数据显示子程序-void display(unsigned long int n) unsigned char n0; unsigned char n1; unsigned char n2; unsigned char n3; unsigned char n4; unsigned char n5; unsigned char n6; unsi

10、gned char n7; 主函数(运算主程序)/-主函数- void main(void) unsigned long int first; unsigned long int second; unsigned long int result;/最终运算结果 unsigned char op;/用来存储+、-、*、/操作符键的值 unsigned char flag,flag1; P3_4=0;LOOP: first=0;second=0;result=0;op=0;flag=1;flag1=0; display(0); while(1) KeyScan(); if(key0&flag=1)

11、 if(key=10) key=0; first=first*10+key;key=0; display(first); delay10ms(30); KeyScan(); if(key12&key=16) op=key;key=0; flag=2;主函数(运算主程序) KeyScan(); if(key0&flag=2) if(key=10) key=0; second=second*10+key;key=0; display(second); flag1=1; delay10ms(30); KeyScan(); if(key=12&flag1=1) switch(op) case 13:result=first+second;break; case 14:result=first-second;break; case 15:result=first*second;break; case 16:result=first/second;break; first=0;second=0; display(result);

温馨提示

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

评论

0/150

提交评论