单片机编程100例.doc

  1. 1、本文档共142页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机编程实例100例大全 单片机编程实例 *实例1:使用P3口流水点亮8位LED #includereg51.h //包含单片机寄存器的头文件 / 函数功能:延时一段时间 void delay(void) { unsigned char i,j; for(i=0;i250;i++) for(j=0;j250;j++) ; } / 函数功能:主函数 void main(void) { while(1) { P3=0xfe; //第一个灯亮 delay(); //调用延时函数 P3=0xfd; //第二个灯亮 delay(); //调用延时函数 P3=0xfb; //第三个灯亮 delay(); //调用延时函数 P3=0xf7; //第四个灯亮 delay(); //调用延时函数 P3=0xef; //第五个灯亮 delay(); //调用延时函数 P3=0xdf; //第六个灯亮 delay(); //调用延时函数 P3=0xbf; //第七个灯亮 delay(); //调用延时函数 P3=0x7f; //第八个灯亮 delay(); //调用延时函数 } / / } *实例2:通过对P3口地址的操作流水点亮8位LED #includereg51.h //包含单片机寄存器的头文件 sfr x=0xb0; //P3口在存储器中的地址是b0H, 通过sfr可定义8051内核单片机 //的所有内部8位特殊功能寄存器,对地址x的操作也就是对P1口的操作 / 函数功能:延时一段时间 / void delay(void) { unsigned char i,j; for(i=0;i250;i++) for(j=0;j250;j++) ; //利用循环等待若干机器周期,从而延时一段时间 } / 函数功能:主函数 / void main(void) { while(1) { x=0xfe; //第一个灯亮 delay(); //调用延时函数 x=0xfd; //第二个灯亮 delay(); //调用延时函数 x=0xfb; //第三个灯亮 delay(); //调用延时函数 x=0xf7; //第四个灯亮 delay(); //调用延时函数 x=0xef; //第五个灯亮 delay(); //调用延时函数 x=0xdf; //第六个灯亮 delay(); //调用延时函数 x=0xbf; //第七个灯亮 delay(); //调用延时函数 x=0x7f; //第八个灯亮 delay(); //调用延时函数 } } *实例3:用不同数据类型控制灯闪烁时间 #includereg51.h //包含单片机寄存器的头文件 / 函数功能:用整形数据延时一段时间 / void int_delay(void) //延时一段较长的时间 { unsigned int m; //定义无符号整形变量,双字节数据,值域为0~65535 for(m=0;m36000;m++) ; //空操作 } / 函数功能:用字符型数据延时一段时间 / void char_delay(void) //延时一段较短的时间 { unsigned char i,j; //定义无符号字符型变量,单字节数据,值域0~255 for(i=0;i200;i++) for(j=0;j180;j++) ; //空操作 } / 函数功能:主函数 / void main(void) { unsigned char i; while(1) { for(i=0;i3;i++) { P1=0xfe; //P1.0口的灯点亮 int_delay(); //延时一段较长的时间 P1=0xff; //熄灭 int_delay(); //延时一段较长的时间 } for(i=0;i3;i++) { P1=0xef; //P1.4口的灯点亮 char_delay(); //延时一段较长的时间 } P1=0xff; //熄灭 char_delay(); //延时一段较长的时间 } } *实例4:用单片机控制第一个灯亮 #includereg51.h //包含51单片机寄存器定义的头文件 void main(void) { P1=0xfe; //P1=1111 1110B,即P1.0输出低电平 } *实例5:用单片机控制一个灯闪烁:认识单片机的工作频率 #includereg51.h //包含单片机寄存器的头文件 / 函数功能:延时一段时间 / void delay(void) //两个void意思分别为无需返回值,没有参数传递 { unsigned int i; //定义无符号整数,最大取值范围65535 for(i=0;i20000;i++) //做20000次空循环 ; //什么也不做,等待一个机器周期 } / 函

文档评论(0)

annylsq + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档