Arduino代码中HIGH, LOW为什么不写成 1和0呢-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 2149|回复: 3

[未解决] Arduino代码中HIGH, LOW为什么不写成 1和0呢

[复制链接]
发表于 2021-8-20 21:20 | 显示全部楼层 |阅读模式

digitalWrite(13,HIGH);
digitalWrite(13,LOW);
其中
HIGH可以写成1
LOW可以写成0
上传后可以运行,那为什么不直接写数字好了,我看教程例子代码高低电平,HIGH, LOW都是写的英文字母呢

void setup() {
  // put your setup code here, to run once:
pinMode(13,OUTPUT);
}


void loop() {
  // put your main code here, to run repeatedly:
digitalWrite(13,HIGH);
delay(1000);
digitalWrite(13,LOW);
delay(1000);
}


时间可以变量替代

void loop() {
int znatingshijian=1000;
digitalWrite(13,1);//输出高电平
delay(znatingshijian);//延时
digitalWrite(13,0);//输出低电平
delay(znatingshijian);//延时
}


发表于 2021-8-21 00:18 | 显示全部楼层
我覺得那就好比用 #define 來定義常數代名一樣
的意思吧,只是為了程式好解讀/偵錯的一種"習慣"

當然可以在程式中寫 1 或 0 代表 HIGH 跟 LOW,
不僅輸出控制沒問題,就連條件判斷式也不會有問題,
你覺得好就好

對了,如果只是要個固定變數,將 int znatingshijian=1000;
以 #define  znatingshijian 1000 取代就好,這樣連
記憶體/程式碼都不必佔用空間,這也是看個人習慣吧

点评

说的非常有道理。也非常中肯,  发表于 2021-8-22 14:19
发表于 2021-8-21 09:48 | 显示全部楼层
就俩字:无脑。Adn必须无脑到小白都能用
就这,还有小白连C都不会写就来问这问那
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-11-29 02:53 , Processed in 0.071800 second(s), 17 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表