Étape 3: Les croquis
Entrer l’esquisse ci-jointe dans l’IDE Arduino. J’ai inclus un programme principal qui coopèrent avec les fonctions scrollDisplayRight() et scrollDisplayLeft(). J’ai également inclus un second croquis montrant comment ces fonctions peuvent être utilisées pour effacer l’écran de l’écran LCD pour afficher plus de lignes. Cette approche de défilement de la compensation est, je crois, très élégante et bien utile d’envisager si vous effacez le texte est nécessaire.
Les fonctions scrollLineRight() et scrollLineLeft() peuvent être utilisés dans n’importe quel programme qui utilise un écran LCD de 1602, pour vous permettre de faire défiler une seule ligne tout en laissant les autres « fixe », c.-à-d., impassible. Ceux-ci fournissent une alternative aux fonctions scrollDisplayLeft() et scrollDisplayRight() excellentes incorporé dans la bibliothèque de cristaux liquides, comme les deux fonctions décrites ici ne nécessitent pas de défilement de la totalité de l’écran.
#include / / VEUILLEZ LIRE LA NOTE QUI SUIT AFIN D’ASSURER DES RUNS DE CROQUIS
Ce site supprime le supérieur et l’inférieur à symboles et tout
texte entre les deux. Donc n’oubliez pas et ajoutez #include innovente et
/ / entourer le mot combiné innovente avec inférieur à et supérieur à symboles.
/ / Le site également compresser plusieurs espaces à un même à l’intérieur de guillemets.
Déclarer lcd comme une instance de cristaux liquides
Innovente lcd (8, 13, 9, 4, 5, 6, 7) ;
int i = 0 ;
int j = 0 ;
lineLength int = 16 ;
int numberOfRows = 2 ;
int delayTime1 = 1250 ; Persistance de toute la ligne
int delayTime2 = 500 ; Délai entre les changements
void scrollLineRight (int line, char str1[]) {}
Rédigé par R. Jordan Kreindler juin 2016
lcd.setCursor (0, ligne) ;
LCD.Print(str1) ;
Delay(delayTime1) ; Une pause ligne assez longtemps pour être lu
pour (j = 0; j < = 16; j ++) {}
lcd.setCursor (0, ligne) ;
LCD.Print(str1) ;
lcd.setCursor (0, ligne) ;
pour (i = 0; i < = j; i ++) {}
LCD.Print("") ;
}
LCD.Print(str1) ;
Delay(delayTime2) ;
}
}
void scrollLineLeft (int line, char str1[]) {}
Rédigé par R. Jordan Kreindler juin 2016
lcd.setCursor (0, ligne) ;
LCD.Print(str1) ;
Delay(delayTime1) ; Suspendre la ligne assez longtemps pour lire
lcd.setCursor (0, ligne) ;
LCD.Print("") ;
lcd.setCursor (0, ligne) ;
pour (j = 0; j < = 16; j ++) {}
lcd.setCursor (0, ligne) ;
LCD.Print("") ;
lcd.setCursor (0, ligne) ;
pour (i = j; i < = 15; i ++) {}
LCD.Print(str1[i]) ;
}
Delay(delayTime2) ;
}
}
void setup() {}
LCD.Begin (lineLength, numberOfRows) ;
lcd.setCursor (0, 0) ;
LCD.Print ("cette ligne fixe") ;
Delay(delayTime1) ;
scrollLineRight (1, "cela défile hors") ;
scrollLineRight (1, "Maintenant, cela fait défiler") ;
scrollLineRight (1, "le dernier One Now") ;
scrollLineLeft (1, "cela défile hors") ;
scrollLineLeft (1, "Maintenant, cela fait défiler") ;
scrollLineLeft (1, "le dernier One Now") ;
lcd.setCursor(0,1) ;
LCD.Print ("cette Scrolls") ;
}
void loop() {}
Ce qui suit est un exemple d’utilisation les deux fonctions présentées pour effacer un écran LCD dans ce qui, selon moi, est une manière très élégante.
#include / / S’il vous plaît lire la NOTE qui suit à S’assurer que les croquis RUNS
Ce site supprime le supérieur et l’inférieur à symboles et tout
texte entre les deux. Donc n’oubliez pas et ajoutez #include innovente et
/ / entourer le mot combiné innovente avec inférieur à et supérieur à symboles.
/ / Le site également compresser plusieurs espaces en un seul même à l’intérieur de guillemets.
Déclarer lcd comme une instance de cristaux liquides
Innovente lcd (8, 13, 9, 4, 5, 6, 7) ;
int i = 0 ;
int j = 0 ;
lineLength int = 16 ;
int numberOfRows = 2 ;
int delayTime1 = 1250 ; Persistance de toute la ligne
int delayTime2 = 500 ; Délai entre les changements
void scrollLineRight (int line, char str1[]) {}
Rédigé par R. Jordan Kreindler juin 2016
lcd.setCursor (0, ligne) ;
LCD.Print(str1) ;
Delay(1250) ;
pour (j = 0; j < = 16; j ++) {}
lcd.setCursor (0, ligne) ;
LCD.Print(str1) ;
lcd.setCursor (0, ligne) ;
pour (i = 0; i < = j; i ++) {}
LCD.Print("") ;
}
LCD.Print(str1) ;
Delay(500) ;
}
}
void scrollLineLeft (int line, char str1[]) {}
Rédigé par R. Jordan Kreindler juin 2016
lcd.setCursor (0, ligne) ;
LCD.Print(str1) ;
Delay(2000) ;
lcd.setCursor (0, ligne) ;
LCD.Print("") ;
lcd.setCursor (0, ligne) ;
pour (j = 0; j < = 16; j ++) {}
lcd.setCursor (0, ligne) ;
LCD.Print("") ;
lcd.setCursor (0, ligne) ;
pour (i = j; i < = 15; i ++) {}
LCD.Print(str1[i]) ;
}
Delay(delayTime2) ;
}
}
void setup() {}
LCD.Begin (lineLength, numberOfRows) ;
LCD.Clear() ;
lcd.setCursor (0, 0) ;
LCD.Print ("Cleared écran") ;
lcd.setCursor (0, 1) ;
LCD.Print ("par à l’aide de parchemins") ;
Delay(5000) ;
scrollLineRight (1, "by Using Scrolls") ;
scrollLineLeft (0, « Écran efface ») ;
LCD.Print (« pour afficher deux ») ;
lcd.setCursor (0, 1) ;
LCD.Print ("nouvelles lignes de texte") ;
}
void loop() {}