网站大量收购独家精品文档,联系QQ:2885784924

单片机控制LED灯点亮(C语言)分析.ppt

  1. 1、本文档共43页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机控制LED灯点亮(C语言)分析

C-51的数据类型 基本数据类型 类型 符号 关键字 数的表示范围 所占位数 整型 字符型 实型 有 无 (signed) int 16 -32768~32767 (signed) short 16 -32768~32767 (signed) long 32 -2147483648~2147483647 16 unsigned int 0~65535 32 0~4294967295 unsigned long int unsigned short int 16 0~65535 有 float 32 3.4e-38~3.4e38 有 double 64 1.7e-308~1.7e308 有 char 8 -128~127 无 unsigned char 8 0~255 4)While (表达式) {语句(内部也可为空)} 特点:先判断表达式,后执行语句。 原则:若表达式不是0,即为真,那么执行语句。否则跳出while 语句。 While(1) { } while(1)就是while(true),条件判断直接为true,循环永远不会退出 。也称为死循环。 5)delay()函数 是一个延时函数。 两个for语句,构成了循环嵌套。用数数的方式消耗时间产生延迟效果 。具体延迟多久取决于若干因素,以后再讨论。 void delay() { uint x,y; for(x=100;x0;x--) for(y=600;y0;y--) ; } 注意:第二个for循环体是一条空语句。 5)for循环 for (表达式1;表达式2;表达式3) { 语句(内部可为空)} 执行过程: 1.求解一次表达式1. 2.求解表达式2,若其值为真(非0 即为真),则执行for中语句。然后执行第3步。否则结束for 语句,直接跳出,不再执行第3步。 3.求解表达式3. 4.跳到第2步重复执行。 三、流水灯:从D0---D7依次点亮 分析: D0亮 0xfe D1亮 0xfd D2亮 0xfb D3亮 0xf7 D4亮 0xef D5亮 0xdf D6亮 0xbf D7亮 0x7f 软件分析: 1)依次把这8个值赋给P1口,延时一段程序 void main() { uint a; while(1) { P1=0xfe; a=50000;while(a--); P1=0xfd; a=50000;while(a--); P1=0xfb; a=50000;while(a--); P1=0xf7; a=50000;while(a--); P1=0xef; a=50000;while(a--); P1=0xdf; a=50000;while(a--); P1=0xbf; a=50000;while(a--); P1=0x7f; a=50000;while(a--); } } } 2)将0xfe赋给P1口,然后使用移位函数来改变P1口的值,达到流水灯的效果 移位函数: _crol_,_cror_:将char型变量循环向左(右)移动指定位数后返回 。 _crol_,_cror_: c51中的intrins.h库函数 #includereg52.h #include intrins.h #define uint unsigned int #define uchar unsigned char uchar temp; void delay(uint); 程序如下: void main() { uint a; temp=0xfe; while(1) { for(num=0;num8;num++) { P1=temp; a=50000;while(a--); temp=_crol_(temp,1); P1=0xff; a=50000;while(a--); } } } 课后练习 请在keil环境下编写一下程序: 1.点亮最后一个LED 2.点亮1、2、5、6这四个LED 3. 让第三个LED闪烁 4. 设计出流水灯程序,从D7—D0 单片机控制 led灯点亮 主要内容 一、点亮板子上的第一个灯D0 二、点亮板子上的D0、D2、D4、D6灯,与D1

文档评论(0)

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

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

1亿VIP精品文档

相关文档