做团购网站多少钱,展馆的科普网站建设,网站维护费用怎么收,中国互联网域名注册服务机构51单片机应用从零开始#xff08;七#xff09;循环语句#xff08;if语句#xff0c;swtich语句#xff09;-CSDN博客 目录 1. 用for 语句控制蜂鸣器鸣笛次数 2. 用while 语句控制 LED 3. 用 do‐while 语句控制 P0 口 8 位 LED 流水点亮 1. 用for 语句控制蜂鸣器鸣笛… 51单片机应用从零开始七·循环语句if语句swtich语句-CSDN博客 目录 1. 用for 语句控制蜂鸣器鸣笛次数 2. 用while 语句控制 LED 3. 用 do‐while 语句控制 P0 口 8 位 LED 流水点亮 1. 用for 语句控制蜂鸣器鸣笛次数 C语言中的for语句是一种循环语句通常用于执行特定的操作一定数量的次数。
for语句的语法如下
for (initialization; condition; increment/decrement) {statement(s);
}其中initialization用于初始化循环计数器通常是一个赋值语句condition是循环条件当条件为真时循环继续执行当条件为假时循环停止increment/decrement是循环计数器的增量或减量通常是一个自增或自减语句statement(s)是循环体即要重复执行的语句块。
下面是一个计算1到10的累加和的示例
#include stdio.hint main() {int sum 0;int i;for (i 1; i 10; i) {sum i;}printf(1到10的累加和为%d\n, sum);return 0;
}输出结果为
1到10的累加和为55在51单片机中用for 语句控制蜂鸣器鸣笛次数
#includereg51.h //包含单片机寄存器的头文件
sbit soundP3^7; //将 sound 位定义为 P3.7
/****************************************
函数功能延时形成 1600Hz 音频
****************************************/
void delay1600(void)
{ unsigned char n; for(n0;n100;n) ;
}
/****************************************
函数功能延时形成 800Hz 音频
****************************************/
void delay800(void)
{ unsigned char n; for(n0;n200;n) ;
}
/****************************************
函数功能主函数
****************************************/
void main(void)
{ unsigned int i; while(1) { for(i0;i830;i) { sound0; //P3.7 输出低电平delay1600(); sound1; //P3.7 输出高电平delay1600(); } for(i0;i200;i) { sound0; //P3.7 输出低电平delay800(); sound1; //P3.7 输出高电平delay800(); } }
}
2. 用while 语句控制 LED while语句是C语言中的迭代语句用于在满足条件的情况下重复执行一组语句或语句块。while语句的语法如下
while (condition)
{statement(s);
}条件(condition)是一个表达式当它的值为真(true)时循环体中的语句会被执行。而当条件的值为假(false)时循环会停止程序将跳转到while语句之后的第一条语句继续执行。
例如以下代码将不断地打印数字1到10直到计数器变成11时退出循环
#include stdio.hint main()
{int i 1;while (i 10){printf(%d\n, i);i;}return 0;
}在51单片机中用while 语句控制 LED
#includereg51.h //包含单片机寄存器的头文件
/****************************************
函数功能延时约 60ms (3*100*20060000μs)
****************************************/
void delay60ms(void)
{ unsigned char m,n; for(m0;m100;m) for(n0;n200;n) ;
}
/****************************************
函数功能主函数
****************************************/
void main(void)
{ unsigned char i; while(1) //无限循环{ i0; //将 i 初始化为 0 while(i0xff) //当 i 小于 0xff255)时执行循环体{ P0i; //将 i 送 P0 口显示delay60ms(); //延时i; //i 自增 1 } }
}
3. 用 do‐while 语句控制 P0 口 8 位 LED 流水点亮 do-while语句是C语言中的一种循环语句它先执行一次循环体再根据循环条件判断是否继续循环。其基本语法如下
do{// 循环体语句
} while(循环条件);当执行do-while语句时先执行一次循环体语句随后判断循环条件是否成立成立则继续执行循环体语句否则退出循环。 与while语句不同的是do-while语句保证循环体至少会被执行一次即使循环条件一开始就不成立。 do-while语句的应用场景通常是需要至少执行一次循环体的情况比如输入数据校验、菜单选择等。 在51单片机中用 do‐while 语句控制 P0 口 8 位 LED 流水点亮
#includereg51.h //包含单片机寄存器的头文件
/****************************************
函数功能延时约 60ms (3*100*20060000μs)
****************************************/
void delay60ms(void)
{ unsigned char m,n; for(m0;m100;m) for(n0;n200;n) ;
}
/****************************************
函数功能主函数
****************************************/
void main(void)
{ do { P00xfe; //第一个 LED 亮delay60ms(); P00xfd; //第二个 LED 亮delay60ms(); P00xfb; //第三个 LED 亮delay60ms(); P00xf7; //第四个 LED 亮delay60ms(); P00xef; //第五个 LED 亮delay60ms(); P00xdf; //第六个 LED 亮delay60ms(); delay60ms(); P00xbf; //第七个 LED 亮delay60ms(); P00x7f; //第八个 LED 亮delay60ms(); }while(1); //无限循环使 8 位 LED 循环流水点亮
} 更多推荐 时光の尘_千题千解·Java面试宝典,Linux学习,嵌入式学习-CSDN博客