首先祝大家国庆快乐,在这举国欢庆的时刻我来帮大家介绍一下单片机C语言中的编程语言中语句的组成。
前面介绍了单片机C语言编程中表达式和运算符的规范以及规则,但是仅仅有表达式和运算符是远不能满足编程的要求。
通常程序在单片机中执行是逐步按照地址的顺序进行的,这样会产生一个问题就是当用户希望程序是按照某种条件来运行的时候就会变得复杂,接下来要向大家介绍一下单片机C语言中的语句的表达,在编程中经常用的语句表达式主要是条件语句以及循环语句。有了这几种控制语句使得在编程过程中用户可以按照自己的逻辑或者条件或者时序条件来设计程序执行的顺序。
单片机C语言的条件语句
主要包括if语句和switch语句。If语句在单片机c语言中是极为常用的语句,用来判断某些变量(信号)达到预期的值后,再执行满足条件的指令,或者执行不满足条件的指令。If 语句的基本形式有三种:
直接的if语句;
if……else……语句;
if……else if……语句;
下面对这三种语句逐一进行介绍。
1.直接if语句,其表达式为if(表达式)语句
直接的if语句的执行过程如下图所示:
从图中可以看到,如果表达式为真的时候才执行if的语句,否则直接跳过执行if以外的语句。在单片机的中断延时程序中可以看到:
void INT0_ISR() interrupt 0 //外部中断服务程序
{
Delayms(100);//延时程序100ms一般用于去除抖动,自己编写的延时程序
If(INT0)//判断INT0的电平信号,如果是1运行线下面的程序,如果为0则跳出服务程序,也就是判断是不是误动作导致的INT0发生变化。
{
……//用户的程序
}
}
2.if……else……语句,一般表示为:if(表达式)语句1 else 语句2
if……else……语句是当表达式为真或者假的时候,都会执行相应的程序语句,这样的好处是当判断表达式(或者信号)的真假的时候都会有相应的动作与之对应,其执行的流程图如下:
在单片机程序的设计中这样的例子也很多,比如下面的一段程序来自STC15系列单片机库函数的timer 初