Innehållsförteckning:
- Steg 1: Bygg Arduino Master med TinyBasic och PS2 -tangentbord
- Steg 2: Anslut PS2 -tangentbordet till Master Arduino
- Steg 3: Ladda upp VGAx -biblioteket och koden på den andra Arduino och sätt ihop allt
- Steg 4: Valfritt: Använda ett kretskort
- Steg 5: Slutkommentarer och bekräftelser
Video: Arduino Basic PC med VGA -utgång: 5 steg (med bilder)
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:42
I min tidigare Instructable har jag visat hur man bygger en retro 8-bitars dator som kör BASIC, med hjälp av två Arduino, och med en utsignal i B&W för en TV-skärm.
Nu ska jag visa hur man bygger samma dator, men med utsignalen i färg för en VGA -skärm!
Du kan mata in variablerna och BASIC -programmet med ett PS2 -tangentbord, och det genererar utdata för en VGA -bildskärm med en textupplösning på 24 kolumner x 10 rader med 5x6 pixeltecken, i fyra färger. Du kan se det i aktion i den övre videon. Programmet kan sedan sparas på Arduino EEPROM, och du kan fortfarande styra I/O -stiften direkt med grundläggande dedikerade kommandon.
Detta projekt kan också användas för att skriva ut enkla textmeddelanden på bildskärmen, som visas på den tredje bilden på denna sida.
En Arduino är "mästaren", och den kör Tiny Basic Plus, en C -implementering av Tiny Basic, med fokus på stöd för Arduino. Det styr också ett PS2 -tangentbord. Utmatningen skickas sedan via serieporten till den andra Arduino som genererar VGA -utgången tack vare VGAx -biblioteket.
Tanken att använda en eller flera Arduino för att skapa en gammaldags dator med en dialekt av Basic är inte ny, men så vitt jag vet har ingen av dem färgutmatning. I vissa projekt som finns tillgängliga på nätet använde människor LCD -skärmar, medan andra använde TVout -biblioteket, som är svartvitt, för att tillåta användning av bildskärmar. Dessutom måste speciella sköldar eller hårdvara byggas i många av dessa projekt. Här behöver du bara två Arduino, få motstånd och kontakten för PS2 -tangentbordet och bildskärmen, som visas i bilderna ovan.
Steg 1: Bygg Arduino Master med TinyBasic och PS2 -tangentbord
TinyBasic Plus och VGAx -biblioteket fungerar för Arduino IDE 1.6.4.
Ladda ner den först från Arduino officiella webbsida. Om du har en nyare version på din dator är det bäst att ladda ner den i.zip -format och packa upp dem på din dator. Klicka på den här länken för att ladda ner Windows -versionen.
Du behöver då PS2 -tangentbordsbiblioteket. Du hittar den längst ner på denna sida. Komprimera bara den och kopiera mappen PS2keyboard i: arduino-1.6.4 / libraries
Slutligen, på den här sidan, ladda ner filen: TinyBasicPlus_PS2_VGAx.ino, packa upp och ladda upp den på din Arduino.
Detta är en variant av standard TinyBasic Plus där jag har lagt till PS2 -biblioteket och ändrat koden för att acceptera variablerna från den.
Mer information om TiniBasic Plus och självstudier finns på denna länk.
Om det inte finns några problem och kompatibilitetsproblem körs Tiny Basic redan. Du kan testa den med en seriell bildskärm i din dator. För detta ändamål använder jag PuTTY, men många andra program är tillgängliga.
Du måste ställa in rätt COM -port (det är samma som du hittar i Arduino IDE) och överföringshastighet = 4800
Här kan du redan testa något program i Basic bara genom att skriva dem med ditt PC -tangentbord (OBS senare visar jag hur du ansluter PS2 -tangentbordet direkt till Arduino).
Prova till exempel:
10 UTSKRIFT "Hej, värld!"
20 GÅTT 10
SPRINGA
Du kan sedan stoppa den oändliga slingan bara genom att skriva ctrl+c.
Observera att denna kombination inte fungerar för PS2 -tangentbordet.
I nästa steg kommer jag att visa hur du ansluter PS2 -tangentbordet till Arduino.
Steg 2: Anslut PS2 -tangentbordet till Master Arduino
Jag fick all information och bibliotek från denna instruerbara.
I huvudsak måste du ansluta följande fyra stift:
- tangentbord Data till Arduino pin 8,
- tangentbord IRQ (klocka) till Arduino pin 3;
- du måste ansluta GND och +5V också.
Jag fick en gammal PS2 -honkontakt från ett trasigt PC -moderkort. Du kan helt enkelt sälja den med en värmepistol.
På bilden som visas i det här steget kan du hitta funktionen hos de nödvändiga stiften på PS2 -kontakten.
Steg 3: Ladda upp VGAx -biblioteket och koden på den andra Arduino och sätt ihop allt
Ladda ner först VGAx-PC.ino-koden längst ner på denna sida och kopiera den till din dator i en katalog med samma namn.
Ladda ner VGAx -biblioteket från den här länken på GitHub. Det enklaste sättet är att kopiera det i undermappen för Arduino -programvaran med namnet "bibliotek", för att genast bli igenkänd.
VIKTIGT: detta bibliotek fungerar för Arduno IDE 1.6.4 men det är inte helt kompatibelt med äldre eller nyare versioner.
Ladda upp VGAx-PC.ino i ditt andra Arduino-kort (jag testade det för Nano-versionen men Uno borde också fungera).
En varning för lågt tillgängligt minne är normalt. Om du inte har andra fel är allt ok och du kan omedelbart börja bygga din egen 8-bitars PC.
För detta behöver du:
- två Arduino Uno Rev. 3 eller två Arduino Nano 3.x (ATmega328)
- en DSUB15 -kontakt, dvs en VGA -honkontakt eller en VGA -kabel som ska klippas.
- motstånd: 2 x 68 Ohm och 2 x 470 Ohm
- en PS2 -honkontakt
- trådar
- fakultativ: en brödbräda eller en bandbräda
Schemat visas högst upp i detta steg. Ett exempel på en färdig "konsol" visas i det inledande steget.
Samma schema med högre upplösning rapporteras i en komprimerad fil längst ner i detta steg.
Steg 4: Valfritt: Använda ett kretskort
Du kan också bygga denna grundläggande VGA -dator med ett litet kretskort. Du kan ta inspiration från bilderna i det här steget eller så kan du till och med skriva ut din egen tavla.
Jag använde två honremsor med 15 hål för videoutgången Arduino, medan jag för mästaren använde två remsor med dubbla hål. På detta sätt kan jag använda de externa för att infoga kontakterna till andra projektkomponenter, som kan drivas direkt med grundkod. Jag lade också till i mitten till överblivna remsor, en ansluten till 5 V och den andra för GND.
Steg 5: Slutkommentarer och bekräftelser
Min främsta kunskap går till Sandro Maffiodo aka Smaffer, skaparen av det fantastiska VGAx -biblioteket.
Stort tack också till författarna till TinyBasic Plus:
- Tiny Basic 68k - Gordon Brandly
- Arduino Basic / Tiny Basic C - Michael Field
- Tiny Basic Plus - Scott Lawrence
Tack också till "djsadeepa", författare till Instructable för anslutning av PS2 -tangentbordet.
Till alla som är intresserade av detta projekt: om du har problem, tveka inte att fråga förslag i kommentarerna.
Om du lyckas kan du också skriva en kommentar eller dela en bild av enheten du bygger.
Rekommenderad:
Extern VGA / GPU för bärbara datorer som använder EXP GDC Beast: 15 steg (med bilder)
Extern VGA / GPU för bärbara datorer som använder EXP GDC Beast: Hej killar .. Detta är min första handledning om instruktioner. Engelska är inte mitt första språk så förlåt mina grammatiska fel. Jag gjorde detta baserat på min erfarenhet av att uppgradera min bärbara dator. Och jag kommer inte att uttråkas med lång introduktion eftersom jag inte vet
Arduino Bluetooth Basic Tutorial: 6 steg (med bilder)
Arduino Bluetooth Basic Tutorial: UPDATE: UPPDATERAD VERSION AV DENNA ARTIKEL KAN HITTAS HÄR Har du någonsin tänkt på att styra elektroniska enheter med din smartphone? Att styra din robot eller andra enheter med din smartphone kommer att bli riktigt coolt. Här är en enkel och grundläggande
ESP32 VGA arkadspel och joystick: 6 steg (med bilder)
ESP32 VGA Arcade Games och Joystick: I den här instruktören kommer jag att visa hur man reproducerar fyra arkadspel som spel - Tetris - Snake - Breakout - Bomber - med hjälp av en ESP32, med utgång för en VGA -bildskärm. Upplösningen är 320 x 200 pixlar, i 8 färger. Jag har tidigare gjort en version med
Så här styr du ESP8266 -baserad Sonoff Basic Smart Switch med en smartphone: 4 steg (med bilder)
Så här styr du ESP8266 -baserad Sonoff Basic Smart Switch med en smartphone: Sonoff är en enhetslinje för Smart Home utvecklad av ITEAD. En av de mest flexibla och billiga enheterna från den linjen är Sonoff Basic. Det är en Wi-Fi-aktiverad switch baserad på ett bra chip, ESP8266. Den här artikeln beskriver hur du konfigurerar Cl
ESP8266 Robotbil programmerad med ESP8266 Basic: 18 steg (med bilder)
ESP8266 Robotbil programmerad med ESP8266 Basic: Jag är en naturvetenskapslärare på mellanstadiet och även Robotic Club Advisor. Jag har letat efter mer kostnadseffektiva sätt att få robotar i händerna på mina elever. Med de låga priserna på ESP8266 -brädor har jag kunnat skapa en autonom