volatile关键字

for (int i = 0; i < 8; i++)
{
  volatile int val = analogRead(SIG_pin); // 读取模拟信号
  NextColumn(false); //进行一次数据移位,可能用于上拉两次,输入脉冲
  Serial.print(val); // 打印模拟信号
  Serial.print(" , "); // 打印分隔符
}

如果不加volatile的话会导致整个for循环中这个val输出为同一个值

如果加了以后会根据实际值变化

posted @ 2025-04-14 02:17  mcwhirr  阅读(23)  评论(0)    收藏  举报