📜  Arduino常数

📅  最后修改于: 2020-12-27 03:19:02             🧑  作者: Mango

什么是常数?

Arduino中的常量定义为预定义的表达式。它使代码易于阅读。

Arduino中的常量定义为:

逻辑层常数

逻辑电平常量为truefalse

true和false的值分别定义为1和0。根据布尔语言,将任何非零整数确定为true。 true和false常量的类型为小写而不是大写(例如HIGH,LOW等)。

引脚电平常数

数字引脚可以取两个值HIGHLOW

在Arduino中,使用pinMode()函数将引脚配置为INPUT或OUTPUT。使用digitalWrite()函数将该引脚进一步设为高电平或低电平。

该评估板包括两种提供高电平值的电压引脚,以下列出:

  • 5伏
  • 3伏

有些主板仅包含5V引脚,而有些则包含3.3V。

有些板包含5V和3.3V引脚。例如, Arduino UNO R3。

配置为HIGH的引脚设置为5V或3.3V。

引脚配置为5V或3.3V,具体取决于:

  • 电压> 3.0V(在5V引脚上显示)
  • 电压> 2.0V(在3.3V引脚上显示)

配置为LOW的引脚设置为0V。

引脚配置为5V或3.3V,具体取决于:

  • 电压<1.5V(在5V引脚上显示)
  • 电压<1V(在3.3V引脚上显示)

LED_BUILTIN常量

内置LED。特定的引脚号由称为LED_BUILTIN的常量名称定义。

大多数Arduino开发板的LED_BUILTIN连接到引脚号13。

常数关键字

名称const表示常量关键字。它修改了程序中变量的行为。它还将变量设置为“只读”。

该变量将与其他变量保持不变,但是其值无法更改。

这意味着我们不能修改常数。例如,

const int a =2;
//....
a = 7;     // illegal - we cannot write to or modify a constant

相比于#define关键字, const关键字被认为是优越的,因为它遵循变量scope的规则。

例如,

考虑下面的代码:

const float x = 5.68;
float y;
void setup()
{
Serial.begin(9600);
y = x * 2; // we can also use constants in math
Serial.println(y);
}
void loop()
{
// ....

输出: 11.36

注意:对于字符串和数字常量,我们可以使用const或#define。但是我们只能将const用于数组。

#define

Arduino中的#define用于给常量值命名。它不占用芯片上的任何存储空间。

在编译时,编译器会将程序中的预定义值替换为具有定义值的常量。

语法为:

#define nameOFconstant value

哪里,

nameOFconstant:它是要定义的宏或常量的名称

值:它包括分配给常数或宏的值。

例如,

#define LEDpin 12
// It is the correct representation of #define

注意:#define不需要任何分号。因此,我们无需在#define之后指定任何分号。否则,编译器将显示错误。

#define的错误声明可能是:

#define LEDpin = 12
#define LEDpin 12;
// both of the above statements are incorrect