Innehållsförteckning:
Video: En liten och billig fickdator som kan programmeras överallt: 5 steg
2025 Författare: John Day | [email protected]. Senast ändrad: 2025-01-13 06:58
Du kan förvandla CardKB till en fickdator
Komplett fickdator för CardKB med ArduinoBaisc, CardKB, I2C OLED -skärm. Eftersom BASIC använder ArduinoBasic (https://github.com/robinhedwards/ArduinoBASIC) stöder den nästan alla normala funktioner som float- och strängvariabler, flerdimensionella matriser, FOR-NEXT, GOSUB-RETURN etc. Att göra. Spara och ladda från EEPROM stöds. BASIC -programmet och variablerna använder cirka 1k RAM, så det motsvarar nästan den första datorn (Sinclair ZX81). Den andra 1k RAM används för tangentbordet och skärmbufferten, och det finns lite utrymme för CPU -stacken. Eftersom arduino har en 1k EEPROM, om programmet passar in i den grundläggande miljön, kommer det att passa in i EEPROM.
Tillbehör
1) CardKB (https://en.aliexpress.com/item/32963872643.html)
2) I2C OLED (t.ex. SSD1306 128x32 eller 128x64)
3) mini brödbräda
4) Batterilåda
5) EEPROM (t.ex. 24LC256) (tillval)
Steg 1: Förutsättningar
- Använd CardKB Mini Keyboard. Se https://en.aliexpress.com/item/32963872643.html för mer information.
- SSD1306 -baserad OLED -skärm ansluten med I2C. 128x32-versionen fungerar fint och ändrar vissa definitioner. ArduinoBasic använder SPI OLED, men fickdatorer som använder CardKB använder I2C OLED.
- (Valfritt) Använd en extern EEPROM (t.ex. 24LC256) för att spara flera filer.
Monteringen är mycket enkel. CardKB, OLED och EEPROM kan anslutas med I2C med en mini -brödbräda. Jag lägger upp en bild av CardKB -kabelinformation
Steg 2: Program och sammanställning
- Ladda ner programmet härifrån.
- Sätt SSD1306ASCII under mappen "\ Arduino / libraries".
- Adafruit NeoPixel -bibliotek krävs.
-
Välj "ATmega328p (3.3V, 8Mhz)" när du kompilerar. Om den inte väljs förblir NeoPixel -lysdioden vit.
- Välj "Export kompilerad binär" för att skapa en skrivfil.
Steg 3: Skriv program
Skriv en binär kompilerad med hjälp av verktyg som avrdude eller avrdude-GUI och USB ISP.
Jag skapade ett verktyg som skriver till CardKB. Du måste använda bygelnålar istället för verktyg.
Skriv inte om CardKB -säkringsbiten
Steg 4: Korrigera SSD1306ASCII_I2C.h som följer
#define OLED_WIDTH 128
#define OLED_HEIGHT 32 #define OLED_COLMAX 21 #define OLED_ROWMAX 4
128×64>
#define OLED_WIDTH 128
#define OLED_HEIGHT 64 #define OLED_COLMAX 21 #define OLED_ROWMAX 8
Steg 5: Slutför
ha så kul:-)