Съдържание:
- Стъпка 1: Платки ESP32, инсталиране на Arduino IDE и конфигурация на VGA библиотека
- Стъпка 2: Качване на Tiny Basic Code в ESP32
- Стъпка 3: Свързване на VGA порта
- Стъпка 4: Свързване на PS2 порта
- Стъпка 5: Програмиране с Tiny Basic
- Стъпка 6: Свързване на SD карта с памет
- Стъпка 7: Благодарности
Видео: ESP32 Basic PC с VGA изход: 7 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:52
В тази инструкция ще покажа как да се изгради прост компютър в ретро стил, направен с един ESP32 и няколко други компонента.
Този компютър работи с Tiny Basic, опростен диалект на BASIC и генерира изход за VGA монитор.
Резолюцията е 640x350 пиксела, което позволява 80x25 asci знака в 8 цвята. PS2 клавиатури могат да бъдат свързани и използвани за писане на кода, позволявайки до 14059 байта памет.
Входно -изходните щифтове ESP32 могат да се управляват директно от специални команди BASIC.
Този проект е възможен от страхотната ESP32 VGA библиотека, написана от Fabrizio Di Vittorio. Вижте тук за повече подробности.
Стъпка 1: Платки ESP32, инсталиране на Arduino IDE и конфигурация на VGA библиотека
Първо трябва да закупите ESP32 версия 1 или по -нова. Налични са много версии, но препоръчвам да изберете една с много щифтове. Използвам тази версия, но мисля, че и много други са добре. Например в описанието на това видео можете да намерите три други модела, които са под 5 долара.
След като получите дъската, трябва да продължите със следните три подетапа:
- Инсталирайте последната Arduino IDE
- Конфигурирайте ESP32 в IDE и
- Инсталирайте VGA библиотеката
Под-стъпка 1.
Има различни методи за програмиране на ESP32, но тук трябва да използвате най -новата Arduino IDE (използвам версия 1.8.9). За да го инсталирате, можете да отидете на страницата на Arduino IDE и да следвате инструкциите.
Под-стъпка 2
След като предишната операция е извършена, трябва да конфигурирате вашия ESP32 в рамките на Arduino IDE. Това не е тривиално, тъй като ESP32 не е (все още?) Роден в него. Можете да следвате този урок или следните стъпки.
1) отворете Arduino IDE
2) отворете прозореца с предпочитания, Файл/Предпочитания, алтернативно натиснете "Ctrl+запетая"
3) отидете на „Допълнителни URL адреси на мениджъра на борда“, копирайте и поставете следния текст:
https://dl.espressif.com/dl/package_esp32_index.json
и щракнете върху бутона OK.
4) Отворете мениджъра на дъските. Отидете на Tools/Board/Boards Manager…
5) Потърсете ESP32 и натиснете бутона за инсталиране на „ESP32 от Espressif Systems“:
6) На този етап, когато свържете за първи път вашия ESP32, трябва да изберете правилния модел в дългия списък на наличните платки ESP32 (вижте снимката в тази стъпка). В случай на съмнения относно модела, просто изберете общия, т.е. първия. При мен работи.
7) системата също трябва да избере правилния USB порт и скоростта на качване (обикновено 921600). В този момент трябва да се установи връзката между вашия компютър и платката ESP32.
Под-стъпка 3
Накрая трябва да инсталирате библиотеката FabGL VGA. [актуализация юли 2019 г.] Нуждаете се от старата версия на тази библиотека: можете да изтеглите zip файла src.old.zip в долната част на тази стъпка, да декомпресирате и преименувате папката като „src“във вашия
Папка "… / arduino-1.8.9 / libraries".
След като извършите тези операции, можете да преминете към следващата стъпка и да качите модифицирания TinyBasic след следващата стъпка.
Стъпка 2: Качване на Tiny Basic Code в ESP32
Изтеглете ESP32_TinyBasicPlus_PS2_FabLab_beta.ino в долната част на тази стъпка.
Отворете го с Arduino IDE и го качете на вашия суров ESP32.
Ако нямате съобщения за грешка, кодът вече трябва да се изпълнява.
Факултативна стъпка: ако искате да тествате TinyBasic преди да свържете VGA и PS2 клавиатурата, вече можете да го направите с SSH и telnet клиент. Използвам PuTTY.
Можете да видите как изглежда на снимките в тази стъпка.
Стъпка 3: Свързване на VGA порта
Нуждаете се от следните части:
- съединител DSUB15, т.е. VGA женски конектор или VGA кабел, който трябва да се отреже.
- три 270 ома резистора.
Свържете ESP32 GPIO изводи 2, 15 и 21 към VGA червено, зелено и синьо съответно, чрез резистори от 270 ома.
Свържете VGA Hsync и Vsync към ESP32 GPIO щифтове 17 и 4 съответно.
Свържете щифтовете 5, 6, 7, 8 и 10 на конекторите DSUB15 към ESP32 GND.
За дефиницията на щифта на конектора на VGA DSUB15, вижте картината в тази стъпка. Внимание, това е страната на запояване на женския конектор.
Стъпка 4: Свързване на PS2 порта
Имате нужда от женски конектор за PS2 клавиатура.
Можете да получите такъв от стара дънна платка за компютър, просто го разпродайте с термопистолет. На снимката, показана в тази стъпка, можете да намерите функцията на необходимите щифтове на конектора PS2.
Връзките са:
- Данни от клавиатурата към ESP32 GPIO пин 32
- Клавиатура IRQ (часовник) към ESP32 GPIO пин 33
- Трябва също да свържете 5V щифта и GND.
Стъпка 5: Програмиране с Tiny Basic
В този момент, ако можете да свържете VGA монитора и PS2 клавиатурата и ESP32 към захранването.
Изображението, показано тук, трябва да се появи на монитора. Сега можете да играете малко с командите Tiny Basic.
Опитайте например задължителния Hello, Word! безкраен цикъл:
10 отпечатайте "Здравей, свят!"
20 към 10
бягай
Можете да промените в четири различни цвята, като натиснете бутона esc, и да спрете цикъла с ctrl+c
Обърнете внимание, че ако направите печатна грешка, не можете да я отмените! Или по -добре, можете да отмените, но след това корекцията на печатната грешка не се разпознава. Трябва да пренапишете целия команден ред.
Сега можете да опитате нещо по -сложно, като например да задействате мигането на светодиод с основна програма. Свържете например LED анода (дългия крак) към ESP32 GPIO щифт 13 и катода към GND.
След това напишете:
нов
10 i = 1000
20 печат i
30 забавяне i
40 dwrite 13, висок
50 забавяне i
60 dwrite 13, ниско
70 i = i*9/10
80 ако i> 0 отивам на 20
90 край
бягай
Можете да видите резултата във видеото, вградено в тази инструкция.
Стъпка 6: Свързване на SD карта с памет
Старинен компютър, без значение колко малък и слаб, не може да бъде завършен, ако не можете да съхранявате програмите си за постоянно.
В тази стъпка ще покажа как да свържете SD карта с памет, но за съжаление за момента (надявам се само за момента) съхранението на програми не работи!
Между другото, използвах адаптер за microSD към SD карта и запоявах 8 L-образни щифта, както е показано на снимката в тази стъпка.
След това свързах щифтовете на SD адаптерите към ESP32 според втората снимка, т.е. свързах ESP32 GPIO пиновете 5, 18, 19, 23 към SC, часовник, MISO, MOSO съответно, плюс 3.3V и два GND.
Следвах също инструкциите и примерите, намерени тук, и с примерния код SD_test.ino мога да пиша на своята 2 GB байтова microSD карта.
Така че, ако някой намери решение, моля да ме информира възможно най -скоро на моя имейл [email protected] и аз ще попълня тази инструкция.
Стъпка 7: Благодарности
Искам да изразя танковете си на Fabrizio Di Vittorio за неговата страхотна ESP32 VGA библиотека. За повече подробности, примери и … Space Invaders, посетете сайта му тук.
много благодаря и на авторите на Tiny Basic:
- Майк Фийлд
- Скот Лорънс
- Брайън О'Дел
И накрая, ако харесвате този проект, моля, напишете коментар или споделете снимка на устройството, което изграждате … и най -вече гласувайте за него в конкурса Arduino!
Препоръчано:
Вземете HDMI изход от вашия Rock64 с помощта на Armbian: 15 стъпки
Вземете HDMI изход от вашия Rock64 с помощта на Armbian: Вероятно сте тук, след като Google потърси " Rock64 без hdmi изход " или ви насочи в тази посока. Или може би се чудите как да използвате екрана с размери 16 x 2, който идва с покупка, която изглеждаше като добра истина: " За $ 10-$ 20, Sing
Raspberry Pi - PCA9536 Вход/изход Expander Python Урок: 4 стъпки
Raspberry Pi-PCA9536 Входно/изходен разширител Python Урок: PCA9536 е 8-пиново CMOS устройство, което осигурява 4 бита разширение за паралелен вход/изход (GPIO) с общо предназначение за приложения на I2C-шина/SMBus. Състои се от 4-битов регистър за конфигуриране, който служи за целите на избора на вход или изход, 4-битов
Регулируемо линейно захранване с двоен изход: 10 стъпки (със снимки)
Регулируемо линейно захранване с двоен изход: Характеристики: AC-DC преобразуване Двойно изходно напрежение (положително-заземяване-отрицателно) Регулируеми положителни и отрицателни релси Само едноизходен променливотоков трансформатор Изходен шум (20MHz-BWL, без товар): Около 1.12mVpp ниско шум и стабилни изходи (идеален
12V изход от всяка съвместима с бързо зареждане Powerbank: 6 стъпки
Изход 12V от всяка съвместима с Quickcharge съвместима Powerbank: Приложението на батерии за бързо зареждане не е само за зареждане на телефони, но служи и като резервно захранване за 12V устройства, като модеми у дома. Повече подробности можете да намерите в този блог: http: //blog.deconinck.info/post/2017/08/09/Turnin
Основен компютър Arduino с VGA изход: 5 стъпки (със снимки)
Основен компютър Arduino с VGA изход: В предишния си Instructable показах как да се изгради ретро 8-битов компютър, работещ с BASIC, чрез два Arduino и с изходен сигнал в B & W за телевизионен екран. Сега ще покажа как да се изгради същия компютър, но с изходния сигнал в