من یه پروژه ساده ساخته بودم با nokia 5110
منو سه صفحه ای داشت و یه کانتر رو توی سه صفحه می شد مقادیرش رو با کلید دوم تغییر داد
میتونید از این کد الهام بگیرید و پیش برید :
کد:
#include <LCD_GFX.h>
#include <NOKIA5110.h>
NOKIA5110 display = NOKIA5110(7, 6, 5, 4, 3);
int mpage = 0;
int flag8 = 0;
int counter=0;
void setup() {
Serial.begin(9600);
display.begin();
display.setContrast(60);
display.display(); // show splashscreen
delay(2000);
display.clearDisplay(); // clears the screen and buffer
pinMode(8, INPUT_PULLUP);
pinMode(9, INPUT_PULLUP);
Serial.println("End of setup");
}
void loop() {
keyAction();
}
void showData(String data) {
display.println(data); //Write a Text
display.setTextSize(1);
display.display();
display.clearDisplay();
display.setCursor(0,15);
display.println("Counter="); //Write a Text
display.setTextSize(1);
display.display();
display.clearDisplay();
display.setCursor(50,15);
display.println(counter); //Write a Text
display.setTextSize(1);
display.display();
display.clearDisplay();
}
void keyAction()
{
if ( digitalRead(8) == LOW ) {
flag8++;
Serial.println(flag8);
delay(200);
}
if ( digitalRead(9) == LOW ) {
counter++;
Serial.println(counter);
delay(200);
}
menuProcess() ;
}
void menuProcess() {
if ( flag8 == 0) {
Serial.println("first");
showData("Main menu");
}
if ( flag8 == 1) {
Serial.println("second");
showData("submenu1");
}
if ( flag8 == 2) {
Serial.println("Third");
showData("submenu2");
}
if ( flag8 == 3) {
flag8 = 0;
}
}