欢迎来到天天文库
浏览记录
ID:35315777
大小:497.50 KB
页数:133页
时间:2019-03-23
《新概念51单片机C语言教程实例代码》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、-133-新概念51单片机C语言教程----入门、提高、开发、拓展全攻略例2.2.1编写程序,点亮第一个发光二极管#include//52系列单片机头文件sbitled1=P1^0;//声明单片机P1口的第一位voidmain()//主函数{led1=0;/*点亮第一个发光二极管*/}例2.2.2编写程序,点亮P1口的若干二极管#include//52系列单片机头文件voidmain()//主函数{P1=0xaa;//while(1);}例2.5.1利用for语句延时特性,编写第一个发光二极管以间隔1S亮灭闪动的程序#include2、>//52系列单片机头文件#defineuintunsignedint//宏定义sbitled1=P1^0;//声明单片机P1口的第一位uinti,j;voidmain()//主函数{while(1)//大循环{led1=0;/*点亮第一个发光二极管*/for(i=1;i>0;i--)//延时for(j=110;j>0;j--);led1=1;/*关闭第一个发光二极管*/for(i=1000;i>0;i--)//延时for(j=110;j>0;j--);}}2021-7-24-133-例2.6.1编写程序使第一个发光二极管以间隔500ms亮灭闪动。#include/3、/52系列单片机头文件#defineuintunsignedint//宏定义sbitled1=P1^0;//声明单片机P1口的第一位voiddelay1s();//声明子函数voidmain()//主函数{while(1)//大循环{led1=0;/*点亮第一个发光二极管*/delay1s();//调用延时子函数led1=1;/*关闭第一个发光二极管*/delay1s();//调用延时子函数}}voiddelay1s()//子函数体{uinti,j;for(i=500;i>0;i--)for(j=110;j>0;j--);}例2.7.1编写程序使第一个二极管以亮200ms、灭800m4、s的方式闪动。#include//52系列单片机头文件#defineuintunsignedint//宏定义sbitled1=P1^0;//声明单片机P1口的第一位voiddelayms(uint);//声明子函数voidmain()//主函数{while(1)//大循环{led1=0;/*点亮第一个发光二极管*/delayms(200);//延时200毫秒led1=1;/*关闭第一个发光二极管*/delayms(800);//延时800毫秒}}voiddelayms(uintxms){uinti,j;for(i=xms;i>0;i--)//i=xms即延时约xms5、毫秒for(j=110;j>0;j--);}2021-7-24-133-例2.8.3利用C51自带库_crol_(),以间隔500ms,实现流水灯程序#include//52系列单片机头文件#include#defineuintunsignedint//宏定义#defineucharunsignedcharvoiddelayms(uint);//声明子函数ucharaa;voidmain()//主函数{aa=0xfe;//赋初值11111110while(1)//大循环{P1=aa;delayms(500);//延时500毫秒aa=_crol_6、(aa,1);//将aa循环左移1位后再赋给aa}}voiddelayms(uintxms){uinti,j;for(i=xms;i>0;i--)//i=xms即延时约xms毫秒for(j=110;j>0;j--);}2021-7-24-133-例3.2.1编写程序使第一个数码管显示8#include//52系列单片机头文件sbitdula=P2^6;//申明U1锁存器的锁存端sbitwela=P2^7;//申明U2锁存器的锁存端voidmain(){wela=1;//打开U2锁存器P0=0xFE;//送入位选信号wela=0;//关闭U2锁存器dula=1;//打7、开U1锁存器P0=0x7F;//送入段选信号dula=0;//关闭U2锁存器while(1);//程序停止到这里}例3.2.2让实验板上6个数码管同时点亮,依次显示0到F,时间间隔为0.5ms,循环下去。(part2.1_2.cP61)#include//52系列单片机头文件#defineucharunsignedchar#defineuintunsignedintsbitdula=P2^6;//申明U1锁存器的锁存端sbitwela=P
2、>//52系列单片机头文件#defineuintunsignedint//宏定义sbitled1=P1^0;//声明单片机P1口的第一位uinti,j;voidmain()//主函数{while(1)//大循环{led1=0;/*点亮第一个发光二极管*/for(i=1;i>0;i--)//延时for(j=110;j>0;j--);led1=1;/*关闭第一个发光二极管*/for(i=1000;i>0;i--)//延时for(j=110;j>0;j--);}}2021-7-24-133-例2.6.1编写程序使第一个发光二极管以间隔500ms亮灭闪动。#include/
3、/52系列单片机头文件#defineuintunsignedint//宏定义sbitled1=P1^0;//声明单片机P1口的第一位voiddelay1s();//声明子函数voidmain()//主函数{while(1)//大循环{led1=0;/*点亮第一个发光二极管*/delay1s();//调用延时子函数led1=1;/*关闭第一个发光二极管*/delay1s();//调用延时子函数}}voiddelay1s()//子函数体{uinti,j;for(i=500;i>0;i--)for(j=110;j>0;j--);}例2.7.1编写程序使第一个二极管以亮200ms、灭800m
4、s的方式闪动。#include//52系列单片机头文件#defineuintunsignedint//宏定义sbitled1=P1^0;//声明单片机P1口的第一位voiddelayms(uint);//声明子函数voidmain()//主函数{while(1)//大循环{led1=0;/*点亮第一个发光二极管*/delayms(200);//延时200毫秒led1=1;/*关闭第一个发光二极管*/delayms(800);//延时800毫秒}}voiddelayms(uintxms){uinti,j;for(i=xms;i>0;i--)//i=xms即延时约xms
5、毫秒for(j=110;j>0;j--);}2021-7-24-133-例2.8.3利用C51自带库_crol_(),以间隔500ms,实现流水灯程序#include//52系列单片机头文件#include#defineuintunsignedint//宏定义#defineucharunsignedcharvoiddelayms(uint);//声明子函数ucharaa;voidmain()//主函数{aa=0xfe;//赋初值11111110while(1)//大循环{P1=aa;delayms(500);//延时500毫秒aa=_crol_
6、(aa,1);//将aa循环左移1位后再赋给aa}}voiddelayms(uintxms){uinti,j;for(i=xms;i>0;i--)//i=xms即延时约xms毫秒for(j=110;j>0;j--);}2021-7-24-133-例3.2.1编写程序使第一个数码管显示8#include//52系列单片机头文件sbitdula=P2^6;//申明U1锁存器的锁存端sbitwela=P2^7;//申明U2锁存器的锁存端voidmain(){wela=1;//打开U2锁存器P0=0xFE;//送入位选信号wela=0;//关闭U2锁存器dula=1;//打
7、开U1锁存器P0=0x7F;//送入段选信号dula=0;//关闭U2锁存器while(1);//程序停止到这里}例3.2.2让实验板上6个数码管同时点亮,依次显示0到F,时间间隔为0.5ms,循环下去。(part2.1_2.cP61)#include//52系列单片机头文件#defineucharunsignedchar#defineuintunsignedintsbitdula=P2^6;//申明U1锁存器的锁存端sbitwela=P
此文档下载收益归作者所有