实验一LED二极管闪烁十次再循环再闪烁的编程及仿真.docx_第1页
实验一LED二极管闪烁十次再循环再闪烁的编程及仿真.docx_第2页
实验一LED二极管闪烁十次再循环再闪烁的编程及仿真.docx_第3页
实验一LED二极管闪烁十次再循环再闪烁的编程及仿真.docx_第4页
实验一LED二极管闪烁十次再循环再闪烁的编程及仿真.docx_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

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

文档简介

实验一 单片机实验装置及使 LED二极管闪烁十次再循环再闪烁的编程及仿真一、实验目的 1熟悉keil4和 Proteus可编程控制器实验装置的功能结构及使用。2熟悉用单片机编辑循环程序的方法。3熟悉用keil4和 Proteus编程及仿真。二、实验器材 1、keil4和 Proteus可编程控制器实验装置。2、装有keil4和 Proteus编程软件的PC机。3、89C51单片机一块,8个LED二极管最好是有颜色变化的,1块respack-8的排阻,一块74HC245缓流器。4、虚拟接地、电源、导线若干。三、实验原理1、应用keil4和 Proteus的高度兼容性和完美的仿真功能,以计算机的计算能力来模拟出现实实验的现象,以程序编程后并定义好关口的引脚,通过实验逻辑的变化来达到控制原件的变化。四、实验内容1、先根据你的实验需要来设计实验。2、然后再使用keil4在电脑上把程序编好并输出.HEX格式文件,打开proteus将画好的实验电路图画到软件里,并且把.HEX文件编辑到实验的器件89C51中。 3、仿真实验,观察实验的现象并总结实验结果。五、实验步骤1、根据实验的要求来设计实验。首先应该先在草稿纸上把实验的步骤和方法先提前写好,并把实验电路图画出。2、在keil4中编辑程序并输出.HEX文件,如下编辑:第一种编程方法:要加#include /80C51的头文件/#include #define unit unsigned int #define uchar unsigned char /对int和char定义,以减少实验操作的简便/uchar y;sbit led0=P20;sbit led1=P21;sbit led2=P22;sbit led3=P23;sbit led4=P24;sbit led5=P25;sbit led6=P26;sbit led7=P27; /定义P2上八个管脚的名称,以控制引脚/void delayms (unit); /必须要先定义,后才能引用使文件得以延时/void main()while(1) /必须要是1使循环变成死循环,才能控制实验/ lable0: for(y=10;y0;y-) /控制灯的闪烁次数/ led0=0; delayms(100); led0=1; delayms(100);goto lable1; /达到循环跳出的目的/ lable1: /跳出的地址/for(y=10;y0;y-) led1=0; delayms(100); led1=1; delayms(100);goto lable2; lable2:for(y=10;y0;y-) led2=0; delayms(100); led2=1; delayms(100); goto lable3; lable3:for(y=10;y0;y-) led3=0; delayms(100); led3=1; delayms(100); goto lable4; lable4:for(y=10;y0;y-) led4=0; delayms(100); led4=1; delayms(100); goto lable5; lable5:for(y=10;y0;y-) led5=0; delayms(100); led5=1; delayms(100); goto lable6; lable6:for(y=10;y0;y-) led6=0; delayms(100); led6=1; delayms(100); goto lable7; lable7: for(y=10;y0;y-) led7=0; delayms(100); led7=1; delayms(100); goto lable0;void delayms(unit x) /延时程序/ unit i,z; for(i=x;i0;i-) for(z=113;z0;z-);编译后输出.HEX文件。(这种程序很麻烦,但是很基础!)第二种方法:用时要多加一个#include#include#include#define unit unsigned int#define uchar unsigned charuchar aa;uchar y;uchar ab;void delayms(unit x); /先定义,后使用/void main()aa=0xfe;/使aa的引脚为fe相当于1111 1110使一个灯亮/while(1) lable0: /后面移位后要回到头循环/for(y=0;y0;i-)for(j=130;j0;j-);由上程序输出.HEX文件。接下来把电路图在Proteus画出,并把上式的.HEX文件编辑进89C51里点击开始观察仿真现象。现象 图一 图二 图三结论:由图我们得到了我们的仿真实验现象,LED二极管闪亮循环实现了LE

温馨提示

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

评论

0/150

提交评论