Taula de continguts:

Organitzador d'escriptori amb pantalla LCD: 4 passos
Organitzador d'escriptori amb pantalla LCD: 4 passos

Vídeo: Organitzador d'escriptori amb pantalla LCD: 4 passos

Vídeo: Organitzador d'escriptori amb pantalla LCD: 4 passos
Vídeo: Edubook estrena nova pantalla d'inici! 2024, De novembre
Anonim
Image
Image

** S'està editant **

Per al projecte HKU arduino, vaig decidir crear un organitzador d'escriptori amb pantalla LCD que mostri cites d'inspiració per recollir-lo quan gireu el potòmetre.

Vaig a tractar sobretot les coses tècniques d’arduino, sempre que tingueu alguna cosa com una caixa de fusta per amagar el vostre Arduino i la pantalla LCD al vostre oganisor personal que pugui adoptar qualsevol forma desitjable.

Les coses que necessitareu

  • * arduino uno
  • mesurador d’olla
  • * cables de prototipatge masculins
  • * Mòdul LCD! Amb lector de targetes SD! (Tinc LCD tft arduino)
  • * targeta micro SD
  • * fusta (he reciclat vells mini calaixos i he utilitzat algunes peces de recanvi de fusta, assegureu-vos que, com a mínim, pugueu formar una petita caixa per amagar el vostre arduino).

Pas 1: Configuració del potòmetre a Arduino

Configuració del potòmetre a Arduino
Configuració del potòmetre a Arduino

connecteu el mesurador del pot tal com es mostra a la imatge

perquè comenci el mesurador del test

Abans de la configuració, haureu de començar amb algunes variables a la part superior del croquis:

codi:

const int analogInPin = A0; // Pin d'entrada analògic al qual està unit el potenciòmetre

int sensorValue = 0; // valor llegit des del pot int outputValue = 0; // valor de sortida al PWM (sortida analògica)

A la imatge 2 mostro com es mapea el mesurador de potes al bucle buit

codi:

// llegir el valor analògic:

sensorValue = analogRead (analogInPin); // assigneu-lo al rang de sortida analògica: outputValue = map (sensorValue, 0, 1023, 0, 255); String stuffToPrint = Cadena (outputValue); // canvieu el valor de sortida analògica:

stuffToPrint.toCharArray (imprès, 9); // text estàtic myScreen.setTextSize (1);

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

retard (50);

això assigna les dades analògiques del mesurador de potència a un interval de 0 a 255, l'utilitzarem per controlar la presentació de diapositives lcd

Si necessiteu ajuda per configurar el potòmetre; He utilitzat el codi d’aquest útil tutorial, els pins són exactament iguals i funcionaran amb la configuració de la pantalla LCD en els passos següents.

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

Pas 2: Configuració de la pantalla LCD

Configuració de la pantalla LCD
Configuració de la pantalla LCD

Configureu els pins com en l'exemple anterior.

Quan es fa correctament, la pantalla es il·luminarà en blanc.

Si necessiteu ajuda addicional o voleu utilitzar algun exemple de codi per provar la pantalla, podeu veure el tutorial oficial d’aquest mòdul i els exemples de codi aquí

utilitzarem parcialment la "imatge de dibuix de la targeta SD" al següent pas.

Pas 3: Configuració de la presentació de diapositives

Configuració de la presentació de diapositives
Configuració de la presentació de diapositives

Ara que tenim el Potmeter i el LCD configurats, podem configurar una "presentació de diapositives" mitjançant els valors assignats del Potmeter

Utilitzant l’interval de 0 a 255 podem indicar un determinat rang en el qual podem activar l’arduino per mostrar contingut a la pantalla LCD.

Primer exemple com es mostra a la imatge:

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 ("Hola, meravellós", 10, 50); myScreen.text ("gireu el pin> a", 10, 60); myScreen.text ("obtenir ànims", 10, 70); rangeOne = fals;

Si el mesurador de potència passa a un rang inferior a 51, la pantalla amb visualització (en mode retrat = rotació 90) de text.

Per poder mostrar una imatge, assegureu-vos que el vostre pin SD CS estigui definit correctament o que l'arduino no inicialitzi la SD (així que assegureu-vos de comprovar els cables !!)

Si voleu comprovar els pins de la vostra pantalla LCD, podeu consultar la guia oficial sobre "connectar la pantalla"

Ara he definit el meu pin SD CS com a 4 perquè he barrejat els cables, per exemple. - Estic encantat de compartir aquest petit tema, perquè us estalviarà molt de temps cercant a la xarxa l'error "No s'ha pogut inicialitzar". Al que es diu en alguns fòrums, la solució és tenir un determinat model de targeta SD. Així que primer comproveu el cablejat abans de comprar noves targetes SD.

Pas 4: Exemple de codi complet

#incloure

#include // Biblioteca específica de maquinari #include

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

const int analogInPin = A0; // Pin d'entrada analògic al qual està unit el potenciòmetre

int sensorValue = 0; // valor llegit des del pot int outputValue = 0; // sortida de valor al rang bool de PWM (sortida analògica) One = true; gamma boolTwo = cert; bool rangeThree = true; bool rangeFour = true; bool rangeFive = true;

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

PImatge de la imatge; impressió de const char [9];

configuració nul·la () {Serial.begin (9600); myScreen.begin (); // intenteu accedir a la targeta SD Serial.print ("Inicialització de la targeta SD …"); if (! SD.begin (SD_CS)) {Serial.println ("ha fallat!"); tornar; } Serial.println ("D'acord");

// inicialitzar i esborrar la pantalla GLCD myScreen.begin (); myScreen.background (255, 255, 255);

} void loop () {// llegeix el valor analògic: sensorValue = analogRead (analogInPin); // assigneu-lo al rang de sortida analògica: outputValue = map (sensorValue, 0, 1023, 0, 255); String stuffToPrint = Cadena (outputValue); // canvieu el valor de sortida analògica:

stuffToPrint.toCharArray (imprès, 9); // text estàtic myScreen.setTextSize (1);

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

retard (50);

if (outputValue to ", 10, 60); myScreen.text (" encoratjar-se. ", 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 "); // escriu la imatge a la pantalla myScreen.image (imatge, 0, 0); myScreen.stroke (255, 255, 255); myScreen.text (" Estic molt orgullós ", 10, 50); myScreen.text ("de tu!", 10, 60); rangeFour = false;}}

if (outputValue> 206 && outputValue

Recomanat: