dreamlang123 发表于 2014-5-1 00:04:18

如何实现LCD 换行呢?比如我要输入18个字母 但是一行只能输入16个 如何让后2个字母显示在第二行

maxims 发表于 2014-5-1 09:44:11

纠结啥啊~比如你显示的电压最高是99.999,共5位,那你在显示9.09的时候,直接把字串对齐一下呗。先写一个5位空格,在写一个9.09,就好了吗?

得了白学症 发表于 2015-7-1 20:33:53

学习了。。。

鬼谷王诩 发表于 2015-8-1 21:22:10

你好,我想问一下如果我想利用LCD1602显示一个变化的量怎么办啊,比如说测量电机转速并用LCD1602显示,谢谢{:3_52:}

lovezypj 发表于 2016-1-6 12:24:56

我也正为清屏闪烁问题头疼呢

solosky 发表于 2016-1-6 23:39:47


void loop()
{
char buff = {0};
int val = digitalRead(1);
const char* to_print = val == HIGH ? "HIGH" : "LOW";
sprintf(buff, "%-16s", to_print);
lcd.print(buff);

}


随便写了下,只是编译通过了,没测试,注意别用sprintf格式化浮点,貌似avr-lib不支持。。

Frank_tumsat 发表于 2016-2-29 13:03:45

好贴,mark一下

hesg 发表于 2016-2-29 14:08:10

我在程序中用过“ ”填充,也用过数据等长。

海之涯山之峰 发表于 2016-3-2 15:22:07

vp110 发表于 2012-6-25 13:46 static/image/common/back.gif
何必这么纠结呢。
楼主你把HIGH和LOW弄的一样的长度不就解决了(LOW后面加1空格)。哪还用的着多个变量,多 ...

八仙过海各显神通哈

maxims 发表于 2016-3-2 15:58:32

16*2,就是16个字符*2行,那么你16个字符,属于固定显示的有多少,属于动态显示的有多少,自己规划好就行了啊~
例如:
Vol:100 Play 003
这里的100和003是动态的,但整个字串刚好有16个,那么你输出Vol:1的时候,print("1") or print("1")不就行了吗?固定位数,赋值的时候直接把位数全部占满

et-mac 发表于 2016-8-27 17:50:29

沧海笑1122 发表于 2012-6-24 00:49 static/image/common/back.gif
我对不同长度的变量,使用1602显示的解决办法是,使用lcd.print(" ")来覆盖那个多余的旧字符。
例:变量dr ...

谢谢分享!
这个清屏非常麻烦,用了很多方法都不理想。试试你这个。

et-mac 发表于 2016-8-27 17:54:05

沧海笑1122 发表于 2012-6-24 01:10 static/image/common/back.gif
不客气,也向你学习。

刚刚补充了,从两位数降为单位数时,道理依然。lcd.print(" ")会覆盖那多余出来的 ...

刚试过,很好的方法。

谢谢!
页: 1 [2]
查看完整版本: arduino控制LCD1602的一点儿经验分享