Inhoudsopgave:
- Stap 1: De potmeter instellen op Arduino
- Stap 2: Het LCD-scherm instellen
- Stap 3: De diavoorstelling instellen
- Stap 4: Voorbeeld van volledige code
Video: Desktop-organizer met LCD: 4 stappen
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:18
**Wordt bewerkt**
Voor het HKU arduino-project heb ik besloten om een desktop-organizer te maken met een LCD-scherm dat inspiratiecitaten weergeeft om je op te pikken wanneer je je potmeter draait!
Ik zal voornamelijk de arduino-technische dingen behandelen, zolang je zoiets als een houten kist hebt om je Arduino te verbergen en LCD in je persoonlijke oganisor elke gewenste vorm zou kunnen aannemen.
De dingen die je nodig hebt
- *arduino uno
- potmeter
- *mannelijke protyping-draden
- *LCD-module !Met SD-kaartlezer! (Ik heb arduino tft LCD)
- *micro SD kaart
- *hout (ik heb oude mini-lades gerecycled en wat houten reserveonderdelen gebruikt, zorg ervoor dat je op zijn minst een kleine doos kunt maken om je arduino in te verbergen!
Stap 1: De potmeter instellen op Arduino
sluit je potmeter aan zoals op de foto te zien is
om de potmeter aan het werk te krijgen start
Je moet beginnen met een aantal variabelen bovenaan je schets voor de installatie:
code:
const int analogInPin = A0; // Analoge ingangspen waarop de potentiometer is bevestigd
int sensorWaarde = 0; // waarde gelezen uit de pot int outputValue = 0; // waarde output naar de PWM (analoge uit)
In afbeelding 2 laat ik zien hoe de potmeter in de void loop is afgebeeld
code:
// lees de analoge in waarde:
sensorValue = analogRead (analogInPin); // wijs het toe aan het bereik van de analoge uitgang: outputValue = map (sensorValue, 0, 1023, 0, 255); String stuffToPrint = String (outputValue); // verander de analoge uit-waarde:
stuffToPrint.toCharArray(afdruk, 9); // statische tekst myScreen.setTextSize(1);
Serial.print ("sensor = "); Serial.print(sensorValue); Serial.print("\t output = "); Serial.println(outputValue);
vertraging (50);
dit brengt de analoge gegevens van de potmeter in kaart met een bereik van 0 tot 255, we zullen dit bereik gebruiken om onze lcd-diavoorstelling te besturen
Als je hulp nodig hebt bij het instellen van de potmeter; Ik heb de code uit deze handige tutorial gebruikt, de pinnen zijn exact hetzelfde en zullen in de volgende stappen werken met de LCD-instellingen.
www.toptechboy.com/arduino/lesson-11-arduin…
Stap 2: Het LCD-scherm instellen
Stel de pinnen in zoals in het bovenstaande voorbeeld.
Als je het goed hebt gedaan, zal je scherm wit oplichten.
Als je extra hulp nodig hebt of een voorbeeldcode wilt gebruiken om je display te testen, kun je de officiële tutorial voor deze module en de codevoorbeelden hier bekijken
we zullen in de volgende stap gedeeltelijk de "afbeelding van SD-kaart tekenen" gebruiken.
Stap 3: De diavoorstelling instellen
Nu we de potmeter en het LCD-scherm hebben ingesteld, kunnen we een "diavoorstelling" opzetten met behulp van de in kaart gebrachte waarden van de potmeter
Met behulp van het bereik van 0 tot 255 kunnen we een bepaald bereik aangeven waarin we de Arduino kunnen activeren om wat inhoud op het LCD-scherm weer te geven.
Eerste voorbeeld zoals weergegeven in afbeelding:
if (outputValue < 51) { // bereik één if (rangeOne == true) { rangeTwo = true; mijnScherm.setRotation(90); mijn Scherm.achtergrond (0, 0, 0); mijnScherm.slag(255, 255, 255); myScreen.text("Hallo daar geweldig, ", 10, 50); myScreen.text("draai de pin > naar", 10, 60); myScreen.text("aanmoediging krijgen.", 10, 70); bereikEen = onwaar;
Als de potmeter naar een bereik lager dan 51 draait, verschijnt op het scherm met weergave (in portretmodus = rotatie 90) wat tekst.
Om een afbeelding weer te geven, moet u ervoor zorgen dat uw SD CS-pin correct is gedefinieerd, anders kan de arduino de SD niet initialiseren (controleer dus uw kabels !!)
Als u de pinnen van uw LCD wilt controleren, kunt u de officiële gids raadplegen onder "het scherm aansluiten"
Ik heb mijn SD CS-pin nu als 4 gedefinieerd omdat ik bijvoorbeeld mijn draden door elkaar heb gehaald! - Ik ben blij om die kleine oopsie te delen, omdat het u veel tijd zal besparen bij het zoeken op internet naar de foutmelding "Initialiseren mislukt". Waarop op sommige forums wordt gezegd dat de oplossing is om een bepaald model SD-kaart te hebben. Controleer dus eerst je bedrading voordat je nieuwe SD-kaarten koopt!!
Stap 4: Voorbeeld van volledige code
#erbij betrekken
#include // Hardwarespecifieke bibliotheek #include
#define SD_CS 4 #define CS 10 #define DC 9 #define RESET 8
const int analogInPin = A0; // Analoge ingangspen waarop de potentiometer is bevestigd
int sensorWaarde = 0; // waarde gelezen uit de pot int outputValue = 0; // waarde output naar de PWM (analoge out) bool rangeOne = true; bool rangeTwo = waar; bool bereikDrie = waar; bool rangeFour = waar; bool rangeFive = waar;
TFT mijn Scherm = TFT (CS, DC, RESET);
PImage-afbeelding; const char afdruk[9];
void setup(){ Serial.begin(9600); mijnScherm.begin(); // probeer toegang te krijgen tot de SD-kaart Serial.print ("Initializing SD-kaart …"); if (!SD.begin(SD_CS)) { Serial.println("mislukt!"); opbrengst; } Serial.println("OK!");
// initialiseer en wis het GLCD-scherm myScreen.begin(); mijnScherm.achtergrond(255, 255, 255);
} void loop () {// lees de analoge in waarde: sensorValue = analogRead (analogInPin); // wijs het toe aan het bereik van de analoge uitgang: outputValue = map (sensorValue, 0, 1023, 0, 255); String stuffToPrint = String (outputValue); // verander de analoge uit-waarde:
stuffToPrint.toCharArray(afdruk, 9); // statische tekst myScreen.setTextSize(1);
Serial.print ("sensor = "); Serial.print(sensorValue); Serial.print("\t output = "); Serial.println(outputValue);
vertraging (50);
if (outputValue to", 10, 60); myScreen.text("aanmoediging krijgen.", 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"); //schrijf de afbeelding op het scherm myScreen.image(image, 0, 0); myScreen.stroke(255, 255, 255); myScreen.text("Ik ben zo trots", 10, 50); myScreen.text("van jou!", 10, 60); rangeFour = false; } }
if(outputValue > 206 && outputValue
Aanbevolen:
Desktop Pi-hardwareassemblage: 12 stappen (met afbeeldingen)
Desktop Pi-hardwareassemblage: ik vind de Raspberry Pi en de wereld van Single Board Computers (SBC's) fascinerend. De integratie van alle basiscomponenten die nodig zijn voor een typische computer voor thuisgebruik in een compact en stand-alone systeem is een doorbraak geweest voor hardware en
I2C / IIC LCD-scherm - Gebruik een SPI LCD op het I2C LCD-scherm met behulp van SPI naar IIC-module met Arduino - Ajarnpa
I2C / IIC LCD-scherm | Gebruik een SPI LCD op het I2C LCD-scherm met behulp van SPI naar IIC-module met Arduino: Hallo, aangezien een normale SPI LCD 1602 te veel draden heeft om aan te sluiten, dus het is erg moeilijk om het met Arduino te verbinden, maar er is één module op de markt beschikbaar die kan converteer SPI-display naar IIC-display, dus dan hoeft u slechts 4 draden aan te sluiten
Draadloze afstandsbediening met 2,4 GHz NRF24L01-module met Arduino - Nrf24l01 4-kanaals / 6-kanaals zenderontvanger voor quadcopter - RC Helikopter - RC-vliegtuig met Arduino: 5 stappen (met afbeeldingen)
Draadloze afstandsbediening met 2,4 GHz NRF24L01-module met Arduino | Nrf24l01 4-kanaals / 6-kanaals zenderontvanger voor quadcopter | RC Helikopter | Rc-vliegtuig met Arduino: een Rc-auto besturen | Quadcopter | Drone | RC vliegtuig | RC-boot, we hebben altijd een ontvanger en zender nodig, stel dat we voor RC QUADCOPTER een 6-kanaals zender en ontvanger nodig hebben en dat type TX en RX is te duur, dus we gaan er een maken op onze
Automatisch e-mail verzenden met foto uit batchbestand met behulp van oude desktop en XP: 4 stappen
Automatisch e-mail verzenden met foto uit batchbestand met oude desktop en XP: ik heb het geluk dat ik een geweldig uitzicht heb vanuit mijn thuiskantoor. Als ik weg ben, wil ik zien wat ik mis en ik ben vaak weg. Ik had vroeger mijn eigen website en een weerstation voor thuis dat via ftp alle weerdata zou uploaden
Elimineer stand-by met een desktop-aan/uit-schakelaar! 7 stappen (met afbeeldingen) Antwoorden op al uw "Hoe?"
Elimineer stand-by met een Desktop Power Switch!: We weten allemaal dat het gebeurt. Zelfs wanneer uw apparaten (tv, computer, luidsprekers, externe harde schijven, monitoren, enz.) "UIT" staan, ze staan nog steeds aan, in de standby-modus, en verspillen stroom. Sommige plasma-tv's gebruiken zelfs meer stroom in