Rehber Arduino ile LCD'ye basit sistem bilgisi yazdırma

Merhaba. Bu tür bir rehber daha önce OLED ekranlar için yazılmıştı. Fakat düz LCD için görmemiştim. Bu yüzden böyle bir rehber yazıyorum. 7 aydır rehber yazmıyormuşuz :)

Ne işe yarar?
Basitçe, RAM kullanımını (MB ve yüzde) olarak gösterir. Ve CPU kullanımını gösterir.


Gereksinimler:​

  • Bilgisayar ile iletişim kurabilecek herhangi bir Arduino.
  • En az 16x8 bir I2C ya da normal LCD.
Eğer LCD'niz I2C'ye sahip değilse:

  • 1 10K Potansiyometre,
  • 1 220 Ohm direnç,
  • gerekecektir.

Yapım aşaması:​

Arduinoya LCD'nize göre olan dosyayı atın:
C++:
#include <Wire.h>
#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27,16,2); //Çalışmazsa adresi değiştirin. Örnekler: 0x27,0x3F


char *strings[12];   //
char *ptr = NULL;    //
String kol_Str = ""; //

String lnk_1 = "";
String lnk_2 = ""; // 
String lnk_3 = "";

void setup()
{

  lcd.begin();
  lcd.backlight();

  Serial.begin(9600);
}

void loop()
{
  if (Serial.available())
  {
    while (Serial.available() > 0)
    {

      kol_Str = Serial.readString();
      int index = 0;
      char kolyedek[13];
      String kol_Str_yedek;
      kol_Str.toCharArray(kolyedek, 13); 

      ptr = strtok(kolyedek, "-"); 
      while (ptr != NULL)
      {
        strings[index] = ptr;
        index++;
        ptr = strtok(NULL, "-"); 
      }

      lnk_1 = strings[0];
      lnk_2 = strings[1];
      lnk_3 = strings[2];
 
      lcd.clear();

      lcd.setCursor(0, 0);
      lcd.print("RAM: " + lnk_1 + " %" + lnk_2);
      lcd.setCursor(0, 1);
      lcd.print("CPU: %" + lnk_3);
    }
  }
}
C++:
#include <Wire.h>
#include <LiquidCrystal.h>

const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);

char *strings[12];  
char *ptr = NULL;    //
String kol_Str = ""; //

String lnk_1 = "";
String lnk_2 = "";
String lnk_3 = "";

void setup()
{

  lcd.begin(16, 2);

  Serial.begin(9600);
}

void loop()
{
  if (Serial.available())
  {
    while (Serial.available() > 0)
    {
     
      kol_Str = Serial.readString();
      int index = 0;
      char kolyedek[13];
      String kol_Str_yedek;
      kol_Str.toCharArray(kolyedek, 13);

      ptr = strtok(kolyedek, "-");
      while (ptr != NULL)
      {
        strings[index] = ptr; 
        index++;
        ptr = strtok(NULL, "-"); 
      }

      lnk_1 = strings[0];
      lnk_2 = strings[1];
      lnk_3 = strings[2];

      lcd.clear();
      
      lcd.setCursor(0, 0);
      lcd.print("RAM: " + lnk_1 + " %" + lnk_2);
      lcd.setCursor(0, 1);
      lcd.print("CPU: %" + lnk_3);
    }
  }
}


Arduinoya pinlerinizi bağlayın:
1643822032894.png
1643822050401.png


Artık Arduino'yu bilgisayarınıza bağlayabilirsiniz.
Sıra bilgisayardaki yazılım aşamasında. Bunun için 2 farklı dilde kod yazdım. Hangisini isterseniz onu kullanın. Programla bilgisi olan arkadaşların daha da geliştirebileceğine inanıyorum. Benim Node.js versiyonu dışında pek bir bilgim yok. Exe haline getirilebiliyor mu bilemem.

COM PORT'u düzgün seçerseniz çalışacaktır...

 

Geri
Yukarı