gpt4 book ai didi

c - 如何使用Arduino在LCD上闪烁单个字符而没有延迟()方法?

转载 作者:行者123 更新时间:2023-11-30 14:44:13 24 4
gpt4 key购买 nike

所以,我想编写一种方法,可以在不使用delay()方法的情况下在特殊位置的LCD上提供特定值的闪烁。我写了下一个方法:

void blink(int cursorIndex, int val) {
lcd.setCursor(cursorIndex, 0);

if (millis() - blinkTime > 1000) {
blinkTime = millis();
printValOnLCD(val);
} else {
lcd.print(" ");
lcd.print(" ");
}
}

但它在我真正需要的情况下不起作用。当 millis() -blinkTime > 1000 时,它仅闪烁一次,在其他情况下,它显示 __ 。

如何提供每秒闪烁一次的功能?

最佳答案

下面的代码应该让 LCD 每秒闪烁一次。可以通过更改 blinkSpeed_ms 变量来更改闪烁速度。

void blink(int cursorIndex, int val) {
lcd.setCursor(cursorIndex, 0);
blinkSpeed_ms = 1000; //This variable defines the blinking speed

if ((millis() - blinkTime > blinkSpeed_ms) && (millis() - blinkTime < blinkSpeed_ms * 2)) {
printValOnLCD(val);
} else if(millis() - blinkTime > (blinkSpeed_ms * 2)) {
blinkTime = millis()
}else {
lcd.print(" ");
lcd.print(" ");
}
}

关于c - 如何使用Arduino在LCD上闪烁单个字符而没有延迟()方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53602625/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com