欢迎来到天天文库
浏览记录
ID:5931927
大小:178.00 KB
页数:31页
时间:2017-12-29
《电气单片机实验讲义》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、模块一LED流水灯(1)第一个LED灯点亮;IO引脚定义:LEDEQUP2.0;与命名一样ORG0000H;程序的开始LJMPMAIN;转入主程序ORG0200H;主程序的开始MAIN:CLRLED;第一个LED灯亮,共阳接法,低电平亮SJMP$END;程序体结束////////////////////////////////////////////////////////////////////////////////////////////////////////#include"reg51.h"//IO引脚定义:sbitLED=P2^0;//主函
2、数,C语言的入口函数:voidmain(void){LED=0;while(1){}//主程序循环,即程序要停止在这里,很多初学者忘记了这点,只输入了上面一行,结果程序跑飞,找不出问题}(2)驱动蜂鸣器;IO引脚定义:SPKEQUP1.5;控制蜂鸣器ORG0000H;程序的开始LJMPMAIN;转入主程序ORG0200H;主程序的开始MAIN:CLRSPK;P1.5引脚控制三极管再由三极管控制蜂鸣器,输出0三极管导通蜂鸣器得电,;输出1三极管截止蜂鸣器失电SJMP$;动态停机指令END;程序体结束****************************
3、**************************************************///头文件:#include"reg51.h"//IO引脚定义:sbitSPK=P1^5;//用SPK来代替P1.5控制蜂鸣器工作//主函数,C语言的入口函数:voidmain(void){SPK=0;while(1){}}(3)继电器启动;IO引脚定义:JDQEQUP1.4;控制继电器ORG0000H;程序的开始LJMPMAIN;转入主程序ORG0200H;主程序的开始MAIN:CLRJDQ;P1.4引脚控制三极管再由三极管控制继电器,;输出0三极管
4、导通继电器得电吸合,输出1三极管截止继电器失电断开SJMP$;动态停机指令END;程序体结束******************************************************************************///头文件:#include"reg51.h"//IO引脚定义:sbitJDQ=P1^4;//用JDQ来代替P1.4控制继电器工作//主函数,C语言的入口函数:voidmain(void){JDQ=0;while(1){}}(4)第一个LED灯闪烁;IO引脚定义:LEDEQUP2.0ORG0000H;程序的
5、开始LJMPMAIN;转入主程序ORG0200H;主程序的开始MAIN:CLRLED;第一个LED灯亮,共阳接法,低电平亮LCALLDELAY;转入延时子程序SETBLED;LED灯灭LCALLDELAY;转入延时子程序LJMPMAIN;回到开头继续DELAY:MOVR5,#255;延时子程序D1:MOVR6,#255DJNZR6,$DJNZR5,D1RETEND;程序体结束******************************************************************************///头文件:#incl
6、ude"reg51.h"//IO引脚定义:sbitled=P2^0;//用led来代替P2.0管脚//函数声明://延时子函数,//参数time控制延时的时间,作用:灯亮和熄灭必须持续一定时间,人眼才能看到voiddelay(unsignedinttime);//主函数,C语言的入口函数:voidmain(void){while(1)//主程序循环{led=1;//第1位LED灯灭delay(20000);//延时,改变参数,改变变化时间led=0;//第1位LED灯亮delay(20000);//延时}}//延时子函数,参数范围0-65536,int
7、为两个字节voiddelay(unsignedinttime)//参数time大小决定延时时间长短{while(time--);//减1循环,减到0退出}(5)LED灯做二进制加计数ORG0000H;程序的开始LJMPMAIN;转入主程序ORG0200H;主程序的开始MAIN:MOVP2,#0;P2口做准备M1:DECP2;P2口连接输出计数,因LED灯是共阳接法,所以是减,实际看到的LED灯是加亮LCALLDELAY;转入延时子程序LJMPM1;循环DELAY:MOVR5,#255;延时子程序D1:MOVR6,#255DJNZR6,$DJNZR5,D
8、1RETEND;程序体结束**********************************
此文档下载收益归作者所有