Съдържание:
- Стъпка 1: Настройка на Potmeter на Arduino
- Стъпка 2: Настройване на LCD дисплея
- Стъпка 3: Настройване на слайдшоуто
- Стъпка 4: Пример за пълен код
Видео: Настолен органайзер с LCD: 4 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:54
** Редактиране **
За проекта HKU arduino реших да направя настолен органайзер с LCD екран, който показва цитати за вдъхновение, които да ви вдигнат, когато завъртите вашия потметър!
Ще покривам най -вече техническите неща на arduino, стига да имате нещо като дървена кутия, за да скриете вашия Arduino и LCD в личния си оганизор, може да приеме всяка желана форма.
Нещата, от които се нуждаете
- *arduino uno
- пот метър
- *мъжки проводници
- *LCD модул! С четец на SD карти! (Имам arduino tft LCD)
- *micro SD карта
- *дърво (рециклирах стари мини чекмеджета и използвах някои резервни дървени части, уверете се, че можете поне да оформите малка кутия, в която да скриете arduino!
Стъпка 1: Настройка на Potmeter на Arduino
свържете вашия глюкомер, както е показано на снимката
за да стартира метърът за тенджери
Ще трябва да започнете с някои променливи в горната част на скицата си преди настройката:
код:
const int analogInPin = A0; // Аналогов входен щифт, към който е свързан потенциометърът
int sensorValue = 0; // стойност, прочетена от pot int outputValue = 0; // стойност на изхода към ШИМ (аналогов изход)
На снимка 2 показвам как показалецът е картографиран в цикъла на празнотата
код:
// чете аналога по стойност:
sensorValue = analogRead (analogInPin); // съпоставяме го с обхвата на аналоговия изход: outputValue = map (sensorValue, 0, 1023, 0, 255); String stuffToPrint = Низ (outputValue); // променяме стойността на аналоговия изход:
stuffToPrint.toCharArray (разпечатка, 9); // статичен текст myScreen.setTextSize (1);
Serial.print ("сензор ="); Serial.print (sensorValue); Serial.print ("\ t output ="); Serial.println (outputValue);
забавяне (50);
това картографира аналоговите данни от потметъра в диапазон от 0 до 255, ние ще използваме този диапазон, за да контролираме нашето lcd слайдшоу
Ако имате нужда от помощ при настройването на потметъра; Използвах кода от този полезен урок, щифтовете са абсолютно същите и ще работят с LCD настройката в следващите стъпки.
www.toptechboy.com/arduino/lesson-11-arduin…
Стъпка 2: Настройване на LCD дисплея
Настройте щифтовете като в горния пример.
Когато направите всичко правилно, екранът ви ще светне бяло.
Ако имате нужда от допълнителна помощ или искате да използвате примерен код за тестване на дисплея си, можете да видите официалния урок за този модул и неговите примери за код тук
в следващата стъпка ще използваме частично „рисуване на изображение от SD карта“.
Стъпка 3: Настройване на слайдшоуто
Сега, когато сме настроили Potmeter и LCD, можем да настроим „слайдшоу“, използвайки картографираните стойности на potmeter
Използвайки диапазона от 0 до 255, можем да посочим определен диапазон, в който можем да задействаме arduino да показва някакво съдържание на LCD дисплея.
Първият пример, както е показано на изображението:
if (outputValue <51) {// диапазон едно if (rangeOne == true) {rangeTwo = true; myScreen.setRotation (90); myScreen.background (0, 0, 0); myScreen.stroke (255, 255, 255); myScreen.text ("Здравей, прекрасно", 10, 50); myScreen.text ("завъртете щифта> на", 10, 60); myScreen.text ("получете насърчение.", 10, 70); rangeOne = false;
Ако потметърът се превърне в диапазон по -нисък от 51, на екрана с дисплей (в портретен режим = rotatio 90) има някакъв текст.
За да можете да покажете изображение, уверете се, че вашият SD CS пин е дефиниран правилно, или arduino няма да успее да инициализира SD (така че проверете кабелите си !!)
Ако искате да проверите щифтовете на вашия LCD, можете да се обърнете към официалното ръководство по „свързване на екрана“https://www.arduino.cc/en/Guide/TFT
Сега определих своя SD CS пин като 4, защото смесих кабелите си например! - Щастлив съм да споделя това малко оупси, защото ще ви спести много време при търсене в мрежата за грешката „Неуспешно инициализиране“. За което в някои форуми се казва, че поправката е да има определен модел SD карта. Затова първо проверете кабелите си, преди да закупите нови SD карти !!
Стъпка 4: Пример за пълен код
#включва
#include // Хардуерно-специфична библиотека #include
#define SD_CS 4 #define CS 10 #define DC 9 #define RESET 8
const int analogInPin = A0; // Аналогов входен щифт, към който е свързан потенциометърът
int sensorValue = 0; // стойност, прочетена от pot int outputValue = 0; // стойност на изхода към PWM (аналогов изход) bool rangeOne = true; bool rangeTwo = true; bool rangeThree = вярно; bool rangeFour = true; bool rangeFive = true;
TFT myScreen = TFT (CS, DC, RESET);
PImage изображение; разпечатка на const char [9];
void setup () {Serial.begin (9600); myScreen.begin (); // опитайте да получите достъп до SD картата Serial.print ("Инициализиране на SD карта …"); if (! SD.begin (SD_CS)) {Serial.println ("неуспешно!"); връщане; } Serial.println ("ОК!");
// инициализираме и изчистваме GLCD екрана myScreen.begin (); myScreen.background (255, 255, 255);
} void loop () {// чете аналоговия по стойност: sensorValue = analogRead (analogInPin); // съпоставяме го с обхвата на аналоговия изход: outputValue = map (sensorValue, 0, 1023, 0, 255); String stuffToPrint = Низ (outputValue); // променяме стойността на аналоговия изход:
stuffToPrint.toCharArray (разпечатка, 9); // статичен текст myScreen.setTextSize (1);
Serial.print ("сензор ="); Serial.print (sensorValue); Serial.print ("\ t output ="); Serial.println (outputValue);
забавяне (50);
if (outputValue to ", 10, 60); myScreen.text (" получите насърчение. ", 10, 70); rangeOne = false;}} if (outputValue> 52 && outputValue 102 && outputValue 154 && outputValue <205) { / /диапазон четири if (rangeFour == true) {rangeThree = true; rangeFive = true; myScreen.setRotation (90); myScreen.background (255, 255, 255); // изчистете изображението на екрана = myScreen.loadImage ("quote2.bmp "); // запишете изображението на екрана myScreen.image (изображение, 0, 0); myScreen.stroke (255, 255, 255); myScreen.text (" Толкова съм горд ", 10, 50); myScreen.text ("от вас!", 10, 60); rangeFour = false;}}
ако (outputValue> 206 && outputValue
Препоръчано:
Картонена станция за зареждане и органайзер: 5 стъпки
Картонена станция за зареждане и органайзер: Тази станция за зареждане скрива кабелите, докато зарежда множество устройства по начин, който ви позволява да видите екрана на дисплея на вашето устройство. Това прави стаята да изглежда по -малко разхвърляна и затрупана, защото всички тези заплетени проводници не изглеждат добре. Забележка: Всеки месец
Настолен органайзер с LED матричен часовник и Bluetooth: 7 стъпки
Настолен органайзер с LED матричен часовник и Bluetooth: Бюрото ми беше много затрупано и исках да имам хубав органайзер, в който да подреждам моливите си, четките за боядисване, глинените инструменти и т.н. Погледнах много организатори на пазара, но не ми хареса нито един от тях . Заех се да проектирам свой собствен организатор за бюро и тук
Органайзер за гардероб: 13 стъпки
Органайзер за гардероби: Независимо дали става въпрос за пазаруване на дрехи или винаги е поискано да вземете назаем някакъв предмет, има моменти, в които искате да надникнете в гардероба си отвсякъде, за да видите дали имате нещо подобно. Организаторът на гардероби прави точно това И ПОВЕЧЕ! Това е едно място
Рафт за музикално оборудване/стойка за лаптоп/настолен органайзер: 7 стъпки
Поставка за музикално оборудване/стойка за лаптоп/настолен органайзер: Тази инструкция ще ви покаже как да превърнете стар калъф за компютър в стелаж за музикални предавки, стойка за лаптоп и органайзер за компютърно бюро
Как да си направим USB Hub кабелен органайзер: 6 стъпки
Как да си направя USB Hub кабелен организатор: Аз съм пълен гаджетофил и напоследък кабелите около компютъра ми излязоха малко извън контрол. Освен това открих, че шест USB порта просто не са достатъчни! В опит да намаля споменатата бъркотия и да оправя старото компютърно бюро, изработих