基于51单片机的开发板_第1页
基于51单片机的开发板_第2页
基于51单片机的开发板_第3页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

江西工业学院课程设计报告书题STC89C52RD单片机实验板的制作系别:与程序设计专姓业:名:学号:指导老师:2016 年 12 月目录第1节引言 3基于89C51单片机系统实验板概述 3stc89C51单片机开发板硬件配置情况 4、stc89C51单片机实验板配套实验 4第2节 系统主要硬件电路设计 5STC89C51单片机简介 5电源转换芯片MAX232 6四位一体共阳LED数显 7LED灯电路 8按键电路 9蜂鸣器 92.78*8点阵 9第3节实验系统软件设计 103.1花样流水灯程序设计: 103.2.简易时钟程序设计: 113.38*8点阵屏显示程序设计 13第4节 结束语 14参考文献 14附录 14课程设计指导教师评语 17基于STC89C52RD单片机系统实验板的制作与程序设计第1节 引言单片微型计算机简称单片机,又称微控制器(MCU),它的出现是计算机发展史STC89C515151价格低廉、学生能动手等特点,成为工科学生硬件设计的基础课。本设计任务和主要内容STC89C52RDLED模块、八路按钮模块、试,至少完成以下三个程序设计及调试任务1.1.1P1口,从左到右依次点亮,每次增加一个,直至全亮;从左到右依次暗灭,每次减少一个,直至全灭;从右向左依次点亮,每次亮一个;从左到右依次点亮,每次亮一个;8个发光二极管闪烁三次;两1.1.2.简易时钟电路:采用动态扫描技术,四位数显实现数字时钟,要求显示时、分,K0调时、K1调分;整点报时。1.1.38*80-9A-Z89C51概述本次课设所使用的单片机最小系统板包括以下器件:电源端子(DC+5V),可以USB,MAX232STC89C51LED98P1LEDSTC51ISPUSBISPI/O51ISPKEILC51软件,用户无需再购买任何仿真32I/O32个I/O口与单片机连接,方便用户开发自己的产品,最大限度的为用户节约学习成本和加快学习速度。STC89C52RDSTC89C52RDMAX2323)8LED4)8个按键5)486)蜂鸣器7)11.0592M晶振STC89C52RD1)51开发板预烧程序2)8*8点阵RS232按键查询按键中断蜂鸣器蜂鸣器音乐花样灯流水灯跑马灯数码管第2节 系统主要硬件电路设计STC89C52RDMCS-51Intel8031、80518751803280C52875280518051MCS-51IntelMCS-51ATMEL51AT89C51/52AT89S51/52STC89C51AT89S51AT89C5189C51,Flash128ISP)图2.1STC89c51单片机图2.1STC89c51单片机单片机的时钟信号用来提供单片机片内各种微操作的时间基准,时钟信号通常用两种电路形式得到:内部振荡和外部振荡。MCS-51XTALlXTAL22-2器一起可构成一个自激振荡器并产生振荡时钟脉冲。2-2C2C130P11.0592MHz。为了初始化单片机内部的某些特殊功能寄存器,必须采用复位的方式,复位后CPURSTRST机就处于循环复位状态。复位后系统将输入/输出(1/0)FFH,堆栈SP07H,SBUF0,RAMRAM2-2R9ClR10K,C10μF.图2.2最小系统结构图MAX232Max232推出的一款兼容RS23222TIA/EIA-232-FTIA/EIA-232-FTIA/EIA-232-F5-VTTL/CMOSTTL/CMOSTIA/EIA-232-FMX232其它串行通信接口:图2.3max232电平转换电路LED8LED8段:A、B、CD、E、F、G、DPDPCOM段数码管又分为共阴和共阳两种。共阴指数码管的公共端接负极,而各段接正极;共阳则正好相反。如果有多个数码管,它们的各段输入一般都分别接在一起,公共端分开。开48COM它的优点是控制方便,显示稳定,但要占用较多的I/O口。动态显示的原理是,各个数码管的段输入相应位接在一起,共同占用8COM端使能信号,并同时给出各数码管的数据。它的优点是占用I/O4128844个数码管。LED

图2.4四位一体共阳数显电路一般发光二极管的工作电流是十几毫安至几十毫安,正向压降为1.3V-2.5V。有一些低电流的发光二极管的工作电流可以降至2MA,而亮度与正常发光二极相同,当然价格会高一些。所有发光二极管在电路中一般都要串一个电阻用来限流。发光二极管的电流不同,亮度也不同,并且寿命也会受到影响,这个电流通常就是由接入的电阻来调整。51开发板的发光二极管串联了一个1kΩ的电阻后接在5V的电压上。LED灯电P1LEDI/0低电平驱动,只要单片机在相应引脚给出低电平,LED就会发光。按键电路I/OI/O20ms蜂鸣器蜂鸣器俗称喇叭,是广泛应用于各种电子产品的一种元器件,它用于提示、报警音乐等许多应用场合蜂鸣器与家用电器上面的喇叭在用法上也有相似的地方通常工作电流比较大,电路上的TTL 电平基本上驱动不了蜂鸣器,需要增加一个电流放大的电路才可以,这一点与家用电器中的功放有相似之处。蜂鸣器使用很方便,电流通过时蜂鸣器就发出响声,只要将蜂鸣器与单片机相连的I/O 口置为低电平,就可以驱动蜂鸣器发声.2.78*8点阵LEDLED点阵显示屏广泛应用与汽车报站器,广告屏等。8×8LED点阵是最基本的点阵显示模块,理解8×8LED点阵的工作原理就可以基本掌握LED点阵显示技术。8×8点阵共需要64个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上,当对应的某一10LEDSPCE061A图2.58*8点阵电路3节实验系统软件设计3.1花样流水灯程序设计:P1右依次点亮,每次亮一个;8,K23.1流水灯实验程序#include "reg51.h"// 包含头文件#defineuchar unsignedcharvoiddelay02s(void)// 0.2s{unsignedchar i,j,k;for( i=2;i>0;i-- )for(j=200;j>0;j-- )for(k=250;k>0;k-- }voidmain (void){uchar i,j;while(1) // 死循环{j=0x01; // j初始化为0x01,左移初始{P1=~ j; //对变量j 中的值按位取反后,从P1口输delay02s(); //延时0.2sj=j }j=0x80; // 设置右移初始值j为for(i=0;i {P1=~ j;delay02s(j=j>>1; // 1}}}3.2.简易时钟程序设计:四位数显实现数字时钟,要求显示时、分,K0调时、K1调分;整点报时#include<reg52.h>#defineuintunsignedint#defineucharunsignedcharucharcodetable[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};sbitd1=P1^0;//d1sbitd2=P1^7;//d1sbitkey1=P3^2;//sbitkey2=P3^3;sbitkey3=P3^4;sbitkey4=P3^5;sbitLED1=P2^3;sbitLED2=P2^2;sbitLED3=P2^1;sbitLED4=P2^0;uchartemp,aa,miaos,miaog,qian,bai,shi,ge,fen,sh,bb,mh;voiddisplay(ucharqian,ucharbai,ucharshi,charge);voiddelay(uintz)//uintz1010{uintx,y;for(x=z;x>0;x--)//这个循环是毫秒数for(y=110;y>0;y--);//1voidint();voidmain(){int();//初始化子程序 mh=1; while(1) {if(key1==0){delay(200);//延时200ms避开抖动时期fen++;fen=0;if(key2==0)if(fen!=0)while(key1==0);//等待按键释放if(fen==59)} }{delay(200);{fen--;{while(key2==0);}if(fen==0){}fen=59;if(key3==0){}sh++;delay(200);if(sh==23)while(key3==0);{sh=0;}}if(sh!=0)if(key4==0)delay(200);{sh--;if(sh==0)sh=23;}{{while(key4==0);}}if(aa==20){miaos=bb/10%6;

bb++;miaog=bb%10;

mh=~mh;

aa=0;}if(bb==60) {fen++;bb=0; }if(fen==60)fen=0;

ge=fen%10; shi=fen/10%6;{ sh++; fen=0;}bai=sh%10; qian=sh/10;if(bai==10) bai=0; if(qian==2){if(bai==4)qian=0;bai=0; } }if(sh==24){ sh=0; }display(qian,bai,shi,ge); }voiddisplay(ucharqian,ucharbai,ucharshi,ucharge){LED1=1;P0=table[qian]; LED1=0; delay(1); LED1=1;3.38*8点阵屏显示程序设计:#include "reg51.h"voiddelay(unsignedint voidmain(){unsignedchar codeled[]={0x00,0xc3,0xff,0xff,0x7e,0x3c,0x18,0x00};unsigned charunsigned inti;while(1){w=0x01;for(i=0;i<8;i++){P1=w;P0=~led[

温馨提示

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

评论

0/150

提交评论