Obsah:
Video: Malý a lacný vreckový počítač, ktorý je možné naprogramovať kdekoľvek: 5 krokov
2025 Autor: John Day | [email protected]. Naposledy zmenené: 2025-01-13 06:58
Z CardKB môžete urobiť vreckový počítač
Kompletný vreckový počítač pre CardKB s obrazovkou OLED ArduinoBaisc, CardKB, I2C. Pretože BASIC používa ArduinoBasic (https://github.com/robinhedwards/ArduinoBASIC), podporuje takmer všetky bežné funkcie, ako sú premenné float a string, viacrozmerné polia, FOR-NEXT, GOSUB-RETURN atď. Je podporované ukladanie a načítanie z pamäte EEPROM. Program BASIC a premenné používajú asi 1 kB pamäte RAM, takže sa takmer rovnajú prvému počítaču (Sinclair ZX81). Ďalší 1k RAM sa používa na vyrovnávaciu pamäť klávesnice a obrazovky a pre zásobník CPU je málo miesta. Pretože arduino má 1k EEPROM, ak sa program zmestí do základného prostredia, zmestí sa do EEPROM.
Zásoby
1) CardKB (https://en.aliexpress.com/item/32963872643.html)
2) I2C OLED (napr. SSD1306 128x32 alebo 128x64)
3) mini breadboard
4) Batériový box
5) EEPROM (napr. 24LC256) (voliteľné)
Krok 1: Predpoklady
- Použite mini klávesnicu CardKB. Podrobnosti nájdete na stránke
- OLED obrazovka založená na SSD1306 pripojená pomocou I2C. Verzia 128x32 funguje dobre-mení niektoré definície. ArduinoBasic používa SPI OLED, ale vreckové počítače používajúce CardKB používajú I2C OLED.
- (Voliteľné) Na uloženie viacerých súborov použite externú EEPROM (napr. 24LC256).
Montáž je veľmi jednoduchá. CardKB, OLED a EEPROM je možné prepojiť pomocou I2C pomocou mini breadboardu. Vložil som obrázok informácií o kábli CardKB
Krok 2: Program a kompilácia
- Stiahnite si program odtiaľto.
- Vložte SSD1306ASCII do priečinka „\ Arduino / libraries“.
- Je potrebná knižnica Adafruit NeoPixel.
-
Pri kompilácii zvoľte „ATmega328p (3,3V, 8Mhz)“. Ak nie je zvolený, LED dióda NeoPixel zostane svietiť nabielo.
- Na vytvorenie súboru na zápis zvoľte „Exportovať kompilované binárne súbory“.
Krok 3: Napíšte program
Napíšte binárny súbor zostavený pomocou nástrojov, ako sú avrdude alebo avrdude-GUI a USB ISP.
Vytvoril som nástroj, ktorý zapisuje do CardKB. Namiesto nástrojov musíte použiť prepojovacie kolíky.
Poistkový bit CardKB neprepisujte
Krok 4: Opravte SSD1306ASCII_I2C.h nasledovne
#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
Krok 5: Dokončite
bavte sa:-)