Robofun 機器人論壇

標題: 請問各位碼錶如和停止和lcd 顯示問題 [打印本頁]

作者: jarrys2    時間: 2018-6-20 13:19
標題: 請問各位碼錶如和停止和lcd 顯示問題
請問各位碼錶如和停止和lcd 顯示問題

各位好,最近在學arduino 有遇到二個問題,能否請問各位一下

1.start = millis();//開始

Serial.println(start);
他會一直跑秒,請問要如何讓他停止呢?

2.我有買一個lcd1602 顯示器,怎樣讓loop裡的資訊顯示在lcd 1602的第1排呢,因為好像loop裡的字都會印在第2排

void loop()
{
lcd.print("Hello World!");   
lcd.print("Hello World!");   

}
作者: 超新手    時間: 2018-6-20 16:40
本帖最後由 超新手 於 2018-6-21 12:33 編輯

1. millis() 的計時器會一直跑, 不會停
    所以要當計時器, 只能算時間差
    啟動時, 把值記錄在 start 中, 經過的時間就等於
    millis()-start     
    停止?就加個變數, 讓它不再 Serial.print 即可(if)
2. 有設定游標的命令
lcd.setCursor(0, 0);
其中
lcd.setCursor(列, 行);
列 的值 0 ~15, 行的值 0~1
作者: jarrys2    時間: 2018-6-22 00:13
大哥請教下  我發現第5孔我只要插一端杜邦線他就會開始啟動millis() 了(另一端什麼都沒接)

void setup()
{  

pinMode(5,INPUT);  

Serial.begin(9600);//鮑率=9600
digitalWrite(5, LOW);
}

void loop()
{
  
if(digitalRead(5) == HIGH){
start = millis();//開始
Serial.println(start*0.001);

}
}
作者: jarrys2    時間: 2018-6-22 01:01
用了一招可以用,不知道準不準就是了
void loop()
{
  if(digitalRead(5)==HIGH){
i=i+1;
  lcd.setCursor(0, 1);              // 將游標定位,準備顯示文字
  lcd.print(i*0.01);  
  }
  
}
作者: 超新手    時間: 2018-6-22 07:11
1. 加提昇電阻,
pinMode(5,INPUT_PULLUP);  
2. 當然不準。
不過可不可以用,是要看你應用在那?
作者: jarrys2    時間: 2018-6-22 10:36
感恩~收獲良多~




歡迎光臨 Robofun 機器人論壇 (https://www.robofun.net/forum/) Powered by Discuz! X3.2