美文网首页Arduino 专题学习
S.O.S莫尔斯码信号源--代码回顾

S.O.S莫尔斯码信号源--代码回顾

作者: 0134_朱雨萌 | 来源:发表于2019-05-23 10:51 被阅读5次

    代码的第一部分与项目(LED闪灯器--硬件回顾)完全一样,这次语句包含三个独立的代码段。

    第一个代码段是输出三个点:

    for  (int x=0; x<3; x++) {                                                  digitalWrite(ledPin, HIGH);                                delay (150);                                                          digitalWrite (ledPin, LOW);                                delay (100);

    }

    可以看到LED开150毫秒之后关闭100毫秒。这些语句是括在一对花括号内的,因此是一段独立的代码段。但是,当程序运行时,可以看到灯闪了3次而不是只闪1次。

    产生这样的结果是因为使用了fpr循环:

    for  (int x=0; x<3; x++) {   

    这个语句使代码段中的代码执行3次。这里需要传递三个参数给for循环,它们是初始化变量,条件和增量。

    首先要初始化一个变量,作为循环开始的计数。在这个例子里,我们设置变量为整型的x,并将它的初始值化为0:

    int x=0;

    然后,设置一个条件来决定在循环中的代码要循环多少次:

    x<3;

    在这里,如果x小于(<)3,代码讲循环,用于比较两个值。程序中可能用到的比较操作符有:

    S.O.S莫尔斯码信号源--代码回顾

    最后的语句是

    x++

    表示把x的值增加1,也可写为x=x+1,这意味着把x+1的值赋给x注意for循环中最后的语句不需要加分号。

    可以用符号+、-、×、÷(加、减、乘、除)做简单的数学计算。例如:

    因此,将for循环初始化x的值设为0,运行代码块中的代码(花括号内),之后,变量递增(在这个例子里x+1)。在代码块的最后检查是否符合条件,条件是x小于3。只要循环的条件满足,循环会不断重复。

    要注意x是一个局部变量,这意味着它只能被它自己所在的代码段所识别。除非在setup()函数之前初始化它,在这种情况下,它是一个全局变量,全局可见。在这里,如果你试图在for循环外使用x,你将得到一个编译器给你的错误提示。

    在每一个for循环之间是一小段延时,使S.O.S字母之间产生一个可见的暂停。最后,在主程序loop重新执行一遍之前,代码等候5秒。

    相关文章

      网友评论

        本文标题:S.O.S莫尔斯码信号源--代码回顾

        本文链接:https://www.haomeiwen.com/subject/owcvzqtx.html