
İçindekiler:
2025 Yazar: John Day | [email protected]. Son düzenleme: 2025-01-23 15:13




Önceki Eğitim Tablomda, iki Arduino aracılığıyla ve bir TV ekranı için siyah beyaz bir çıkış sinyali ile BASIC çalıştıran bir retro 8-bit bilgisayarın nasıl oluşturulacağını gösterdim.
Şimdi aynı bilgisayarın nasıl oluşturulacağını göstereceğim, ancak çıkış sinyali bir VGA monitör için renkli olacak!
Değişkenleri ve BASIC programını bir PS2 klavye ile girebilirsiniz ve bu, dört renkte 24 sütun x 10 satır 5x6 piksel karakterlik metin çözünürlüğüne sahip bir VGA monitör için çıktı oluşturur. Üst videoda çalışırken görebilirsiniz. Program daha sonra Arduino EEPROM'a kaydedilebilir ve yine de I/O pinlerini doğrudan Temel özel komutlarla kontrol edebilirsiniz.
Bu proje, bu sayfadaki üçüncü resimde gösterildiği gibi, basit metin mesajlarını monitöre yazdırmak için de kullanılabilir.
Bir Arduino "ustadır" ve Tiny Basic'in bir C uygulaması olan Tiny Basic Plus'ı çalıştırır ve Arduino desteğine odaklanır. Ayrıca bir PS2 klavyesini de kontrol eder. Çıkış daha sonra seri port üzerinden VGAx kütüphanesi sayesinde VGA çıkışını üreten ikinci Arduino'ya gönderilir.
Bir veya daha fazla Arduino'yu kullanarak bir Basic lehçesi çalıştıran eski tarz bir PC oluşturma fikri yeni değil ama bildiğim kadarıyla hiçbirinin renkli çıktısı yok. İnternette bulunan bazı projelerde insanlar LCD ekranlar kullanırken, bazılarında monitör kullanımına izin vermek için siyah beyaz olan TVout kütüphanesi kullanılmıştır. Ayrıca bu projelerin çoğunda özel kalkanlar veya donanımlar inşa edilmelidir. Burada, yukarıdaki resimlerde gösterildiği gibi sadece iki Arduino, birkaç direnç ve PS2 klavyesi ve monitör için konektöre ihtiyacınız var.
Adım 1: TinyBasic ve PS2 Klavye ile Arduino Master'ı Oluşturun
TinyBasic Plus ve VGAx kütüphanesi Arduino IDE 1.6.4 için çalışır.
İlk önce Arduino resmi web sayfasından indirin. PC'nizde daha yeni sürümler varsa, en iyisi onu.zip formatında indirmek ve PC'nizde sıkıştırmasını açmaktır. Windows sürümünü indirmek için bu bağlantıya tıklayın.
O zaman PS2keyboard kitaplığına ihtiyacınız var. Bu sayfanın alt kısmında bulabilirsiniz. Sadece sıkıştırın ve PS2keyboard klasörünü şuraya kopyalayın: arduino-1.6.4\libraries
Son olarak, bu sayfada dosyayı indirin: TinyBasicPlus_PS2_VGAx.ino, sıkıştırın ve Arduino'nuza yükleyin.
Bu, standart TinyBasic Plus'ın, PS2 kitaplığını eklediğim ve ondan değişkenleri kabul etmek için kodu değiştirdiğim bir varyasyonudur.
TiniBasic Plus ve öğreticiler hakkında daha fazla ayrıntı bu bağlantıda bulunabilir.
Herhangi bir sorun ve uyumluluk sorunu yoksa Tiny Basic zaten çalışıyordur. PC'nizdeki bir seri monitör aracılığıyla test edebilirsiniz. Bu amaçla PuTTY kullanıyorum, ancak başka birçok program mevcut.
Doğru COM bağlantı noktasını (Arduino IDE'de bulduğunuzla aynıdır) ve baud hızı = 4800'ü ayarlamanız gerekir.
Burada bazı programları zaten PC klavyenizle yazarak Basic'te test edebilirsiniz (Not daha sonra PS2 klavyesini doğrudan Arduino'ya nasıl bağlayacağımı göstereceğim).
Örneğin deneyin:
10 BASKI "Merhaba Dünya!"
20 GOTO 10
ÇALIŞTIRMAK
Daha sonra sadece ctrl+c yazarak sonsuz döngüyü durdurabilirsiniz.
Bu kombinasyonun PS2 klavyesi için çalışmayacağını unutmayın.
Bir sonraki adımda PS2 klavyesini Arduino'ya nasıl bağlayacağımı göstereceğim.
Adım 2: PS2 Klavyesini Master Arduino'ya bağlayın

Tüm bilgileri ve kütüphaneyi bu Eğitilebilir Dosyadan aldım.
Esasen aşağıdaki dört pimi bağlamanız gerekir:
- Arduino pin 8'e klavye Verileri,
- Arduino pin 3'e klavye IRQ'su (saat);
- GND ve +5V'u da bağlamanız gerekir.
Kırık bir PC anakartından eski bir PS2 dişi konektör aldım. Bir ısı tabancasıyla kolayca satabilirsiniz.
Bu adımda gösterilen resimde, PS2 konektörünün gerekli pinlerinin işlevini bulabilirsiniz.
Adım 3: VGAx Kitaplığını ve Kodunu İkinci Arduino'ya Yükleyin ve Her Şeyi Bir Araya Getirin

İlk önce bu sayfanın en altındaki VGAx-PC.ino kodunu indirin ve PC'nizde aynı ada sahip bir dizine kopyalayın.
GitHub'daki bu bağlantıdan VGAx kitaplığını indirin. En kolay yol, hemen tanınması için "kütüphaneler" adlı Arduino yazılımı alt klasörüne kopyalamaktır.
ÖNEMLİ: Bu kitaplık Arduno IDE 1.6.4 için çalışıyor ancak daha eski veya daha yeni sürümlerle tam uyumlu değil.
VGAx-PC.ino'yu ikinci Arduino kartınıza yükleyin (Nano versiyonu için test ettim ama Uno da çalışmalı).
Düşük kullanılabilir bellek için bir uyarı normaldir. Başka bir hatanız yoksa, her şey yolunda demektir ve hemen kendi 8-bit PC'nizi oluşturmaya başlayabilirsiniz.
Bunun için ihtiyacınız olan:
- iki Arduino Uno Rev. 3 veya iki Arduino Nano 3.x (ATmega328)
- bir DSUB15 Konektör, yani bir VGA dişi konektör veya kesilecek bir VGA kablosu.
- dirençler: 2 x 68 Ohm ve 2 x 470 Ohm
- bir PS2 dişi konnektör
- teller
- isteğe bağlı: bir devre tahtası veya bir şerit tahtası
Şematik, bu adımın en üstünde rapor edilir. Giriş adımında bitmiş bir "konsol" örneği gösterilmektedir.
Aynı şema, daha yüksek çözünürlüğe sahip, bu adımın altında sıkıştırılmış bir dosyada rapor edilir.
Adım 4: İsteğe bağlı: PCB kullanma




Bu Temel VGA PC'yi küçük bir PCB kullanarak da oluşturabilirsiniz. Bu adımdaki resimlerden ilham alabilir veya kendi panonuzu bile yazdırabilirsiniz.
Arduino video çıkışı için 15 delikli iki dişi başlık şeridi kullandım, master için ise çift delikli iki şerit kullandım. Bu şekilde, doğrudan Temel kodla çalıştırılabilen diğer proje bileşenlerinin bağlantılarını eklemek için harici olanları kullanabilirim. Ayrıca, biri 5 V'a ve diğeri GND'ye bağlı kalan şeritlere merkeze ekledim.
Adım 5: Son Yorumlar ve Teşekkür
Ana teşekkürüm, harika VGAx kitaplığının yaratıcısı Sandro Maffiodo aka Smaffer'a gidiyor.
TinyBasic Plus'ın yazarlarına da çok teşekkürler:
- Minik Temel 68k - Gordon Brandly
- Arduino Basic / Tiny Basic C - Michael Field
- Minik Temel Artı - Scott Lawrence
PS2 klavyesinin bağlantısı için Instructable'ın yazarı olan "djsadeepa"ya da teşekkürler.
Bu projeyle ilgilenen tüm insanlara: Bir sorununuz varsa, yorumlarda önerilerde bulunmaktan çekinmeyin.
Başarılı olursanız, lütfen siz de bir yorum yazın veya yaptığınız cihazın bir resmini paylaşın.
Önerilen:
Tobias - TV Çıkışlı Arduino Müzik Kutusu: 5 Adım (Resimli)

Tobias - TVout'lu Arduino Müzik Kutusu: Öncelikle bu projeye ilham kaynağı olan kız arkadaşımın dev oyuncak ayısı Tobias'ı tanıtmama izin verin. o işteyken. Proje s
Ayarlanabilir Çift Çıkışlı Lineer Güç Kaynağı: 10 Adım (Resimlerle)

Ayarlanabilir Çift Çıkışlı Lineer Güç Kaynağı: Özellikler: AC – DC Dönüşüm Çift çıkış gerilimleri (Pozitif – Toprak – Negatif) Ayarlanabilir pozitif ve negatif raylar Sadece Tek Çıkışlı AC trafosu Çıkış gürültüsü (20MHz-BWL, yüksüz): Yaklaşık 1.12mVpp Düşük gürültü ve kararlı çıkışlar (ideal
LED Çıkışlı Arduino Hesap Makinesi: 5 Adım

LED Çıkışlı Arduino Hesap Makinesi: Hey millet! Seri monitör giriş ve çıkışını nasıl kullanacağınızı öğrenmek istiyorsunuz. İşte burada, bunun nasıl yapılacağına dair mükemmel bir eğitiminiz var! Bu talimatta, Arduino seri m kullanarak bir hesap makinesi oluşturmak için gereken basit adımlarda size rehberlik edeceğim
VGA Çıkışlı ESP32 Basic PC: 7 Adım

VGA Çıkışlı ESP32 Temel Bilgisayar: Bu Eğitilebilir Kitapta, tek bir ESP32 ve diğer birkaç bileşenle yapılmış basit bir retro tarzı bilgisayarın nasıl oluşturulacağını göstereceğim. Bu bilgisayar, BASIC'in basitleştirilmiş bir lehçesi olan Tiny Basic'i çalıştırır ve bir VGA monitör için çıktı oluşturur. Çözünürlük 640
TV Çıkışlı Arduino Basic PC: 5 Adım (Resimli)

TV Çıkışlı Arduino Temel PC: Bu Talimatlarda, iki Arduino ve birkaç diğer bileşen aracılığıyla BASIC çalıştıran retro 8 bitlik bir bilgisayarın nasıl oluşturulacağını göstereceğim. Değişkenleri ve BASIC programını bir PS2 klavye ile girebilirsiniz ve çıktı bir monitörde gösterilir