Obsah:

Stolní organizér s LCD: 4 kroky
Stolní organizér s LCD: 4 kroky

Video: Stolní organizér s LCD: 4 kroky

Video: Stolní organizér s LCD: 4 kroky
Video: Part 1 - The Invisible Man Audiobook by H. G. Wells (Chs 01-17) 2024, Listopad
Anonim
Image
Image

** Upravováno **

Pro projekt HKU arduino jsem se rozhodl vytvořit stolní organisor s LCD obrazovkou, která zobrazuje citáty inspirace, které vás vyzvednou při otáčení potenciometru!

Budu pokrývat převážně technické věci arduino, pokud máte něco jako dřevěnou krabici, která skryje váš Arduino a LCD do vašeho osobního organizátora, může mít jakoukoli žádoucí podobu.

Věci, které budeš potřebovat

  • *arduino uno
  • pot meter
  • *samčí prottypovací dráty
  • *LCD modul! Se čtečkou karet SD! (Mám arduino tft LCD)
  • *karta micro SD
  • *dřevo (recykloval jsem staré mini zásuvky a použil nějaké náhradní dřevěné díly, ujistěte se, že můžete alespoň vytvořit malou krabičku, do které skryjete své arduino!

Krok 1: Nastavení potmetru na Arduinu

Nastavení potmetru na Arduinu
Nastavení potmetru na Arduinu

připojte svůj potmetr podle obrázku

aby měřič hrnce začal fungovat

Před nastavením budete muset začít s některými proměnnými v horní části náčrtu:

kód:

const int analogInPin = A0; // Analogový vstupní pin, ke kterému je připojen potenciometr

int sensorValue = 0; // hodnota načtená z pot int intValue = 0; // výstup hodnoty do PWM (analogový výstup)

Na obrázku 2 ukazuji, jak je potmetr mapován v prázdné smyčce

kód:

// přečtěte si analog v hodnotě:

sensorValue = analogRead (analogInPin); // namapujte jej na rozsah analogového výstupu: outputValue = map (sensorValue, 0, 1023, 0, 255); String stuffToPrint = String (outputValue); // změna hodnoty analogového výstupu:

stuffToPrint.toCharArray (výtisk, 9); // statický text myScreen.setTextSize (1);

Serial.print ("senzor ="); Serial.print (sensorValue); Serial.print ("\ t output ="); Serial.println (outputValue);

zpoždění (50);

toto mapuje analogová data z potmetru na rozsah 0 až 255, tento rozsah použijeme k ovládání naší LCD prezentace

Pokud potřebujete pomoc s nastavením potmetru; Použil jsem kód z tohoto užitečného tutoriálu, kolíky jsou úplně stejné a v dalších krocích budou fungovat s nastavením LCD.

www.toptechboy.com/arduino/lesson-11-arduin…

Krok 2: Nastavení displeje LCD

Nastavení LCD
Nastavení LCD

Nastavte kolíky jako v příkladu výše.

Při správném provedení se obrazovka rozsvítí bíle.

Pokud potřebujete další pomoc nebo chcete použít nějaký ukázkový kód k otestování displeje, můžete si prohlédnout oficiální návod k tomuto modulu a jeho příklady kódu zde

v dalším kroku částečně použijeme „kreslení obrázku z karty SD“.

Krok 3: Nastavení prezentace

Nastavení prezentace
Nastavení prezentace

Nyní, když máme nastavený potmetr a LCD, můžeme nastavit „slideshow“pomocí namapovaných hodnot potenciometru

Pomocí rozsahu 0 až 255 můžeme určit určitý rozsah, ve kterém můžeme spustit arduino, aby na LCD zobrazilo nějaký obsah.

První příklad, jak je znázorněno na obrázku:

if (outputValue <51) {// range one if (rangeOne == true) {rangeTwo = true; myScreen.setRotation (90); myScreen.background (0, 0, 0); myScreen.stroke (255, 255, 255); myScreen.text („Dobrý den,“10, 50); myScreen.text ("otočit kolík> na", 10, 60); myScreen.text („získejte povzbuzení.“, 10, 70); rangeOne = false;

Pokud se potmetr změní na rozsah nižší než 51, obrazovka s displejem (v režimu na výšku = rotace 90) nějaký text.

Aby bylo možné zobrazit obrázek, ujistěte se, že je váš PIN CS CS správně definován, nebo se Arduinu nepodaří inicializovat SD (nezapomeňte tedy zkontrolovat své vodiče !!)

Chcete -li zkontrolovat piny LCD, můžete se podívat na oficiálního průvodce „připojení obrazovky“https://www.arduino.cc/en/Guide/TFT

Svůj pin CS CS jsem nyní definoval jako 4, protože jsem si například spletl dráty! - Rád se s vámi podělím o to malé oopsie, protože vám to ušetří spoustu času hledáním chyby „Chyba při inicializaci“na webu. Na které se na některých fórech říká, že opravou je mít určitý model karty SD. Před zakoupením nových karet SD si tedy nejprve zkontrolujte zapojení !!

Krok 4: Příklad úplného kódu

#zahrnout

#include // Hardwarově specifická knihovna #include

#define SD_CS 4 #define CS 10 #define DC 9 #define RESET 8

const int analogInPin = A0; // Analogový vstupní pin, ke kterému je připojen potenciometr

int sensorValue = 0; // hodnota načtená z pot int intValue = 0; // výstup hodnoty do rozsahu boolů PWM (analogový výstup) One = true; rozsah boolTwo = true; rozsah boolThree = true; rozsah boolůFour = true; bool rangeFive = true;

TFT myScreen = TFT (CS, DC, RESET);

PImage obrázek; výtisk konstant [char] [9];

neplatné nastavení () {Serial.begin (9600); myScreen.begin (); // zkuste se dostat na SD kartu Serial.print ("Inicializace SD karty …"); if (! SD.begin (SD_CS)) {Serial.println ("failed!"); vrátit se; } Serial.println („OK!“);

// inicializace a vymazání obrazovky GLCD myScreen.begin (); myScreen.background (255, 255, 255);

} void loop () {// načtení analogu v hodnotě: sensorValue = analogRead (analogInPin); // namapujte jej na rozsah analogového výstupu: outputValue = map (sensorValue, 0, 1023, 0, 255); String stuffToPrint = String (outputValue); // změna hodnoty analogového výstupu:

stuffToPrint.toCharArray (výtisk, 9); // statický text myScreen.setTextSize (1);

Serial.print ("senzor ="); Serial.print (sensorValue); Serial.print ("\ t output ="); Serial.println (outputValue);

zpoždění (50);

if (outputValue to ", 10, 60); myScreen.text (" get povzbuzení. ", 10, 70); rangeOne = false;}} if (outputValue> 52 && outputValue 102 && outputValue 154 && outputValue <205) { / /range four if (rangeFour == true) {rangeThree = true; rangeFive = true; myScreen.setRotation (90); myScreen.background (255, 255, 255); // clear the screen image = myScreen.loadImage ("quote2.bmp "); // napište obrázek na obrazovku myScreen.image (obrázek, 0, 0); myScreen.stroke (255, 255, 255); myScreen.text („ Jsem tak hrdý “, 10, 50); myScreen.text („z vás!“, 10, 60); rangeFour = false;}}

if (outputValue> 206 && outputValue

Doporučuje: