Isi kandungan:

Arduino Basic PC Dengan Output VGA: 5 Langkah (dengan Gambar)
Arduino Basic PC Dengan Output VGA: 5 Langkah (dengan Gambar)

Video: Arduino Basic PC Dengan Output VGA: 5 Langkah (dengan Gambar)

Video: Arduino Basic PC Dengan Output VGA: 5 Langkah (dengan Gambar)
Video: Basic Arduino VGA Output 2024, Julai
Anonim
Image
Image
PC Asas Arduino Dengan Output VGA
PC Asas Arduino Dengan Output VGA
PC Asas Arduino Dengan Output VGA
PC Asas Arduino Dengan Output VGA

Dalam Instructable sebelumnya saya telah menunjukkan cara membina komputer retro 8-bit yang menjalankan BASIC, dengan menggunakan dua Arduino, dan dengan isyarat output dalam B&W untuk skrin TV.

Sekarang saya akan menunjukkan cara membina komputer yang sama, tetapi dengan isyarat output berwarna untuk monitor VGA!

Anda boleh memasukkan pemboleh ubah dan program BASIC dengan papan kekunci PS2, dan ia menghasilkan output untuk monitor VGA dengan resolusi teks 24 lajur x 10 baris watak 5x6 piksel, dalam empat warna. Anda dapat melihatnya beraksi di video atas. Program ini kemudiannya dapat disimpan di Arduino EEPROM, dan anda masih dapat mengawal pin I / O secara langsung melalui perintah khusus Basic.

Projek ini juga dapat digunakan untuk mencetak pesan teks sederhana pada monitor, seperti yang ditunjukkan pada gambar ketiga di halaman ini.

One Arduino adalah "master", dan menjalankan Tiny Basic Plus, implementasi C dari Tiny Basic, dengan fokus pada sokongan untuk Arduino. Ia juga mengawal papan kekunci PS2. Keluaran kemudian dihantar melalui port bersiri ke Arduino kedua yang menghasilkan output VGA berkat perpustakaan VGAx.

Idea untuk menggunakan satu atau lebih Arduino untuk membuat PC gaya lama yang menjalankan dialek Basic bukanlah perkara baru tetapi, sejauh yang saya tahu, tidak satu pun dari mereka mempunyai output warna. Dalam beberapa projek yang terdapat di internet, orang menggunakan paparan LCD, sementara yang lain, untuk membolehkan penggunaan monitor, telah digunakan perpustakaan TVout, yang merupakan B&W. Selanjutnya dalam banyak projek ini, perisai atau perkakasan khas harus dibina. Di sini anda hanya memerlukan dua Arduino, beberapa perintang dan penyambung untuk papan kekunci PS2 dan monitor, seperti yang ditunjukkan dalam gambar di atas.

Langkah 1: Bina Arduino Master Dengan Papan Kekunci TinyBasic dan PS2

TinyBasic Plus dan perpustakaan VGAx berfungsi untuk Arduino IDE 1.6.4.

Muat turunnya terlebih dahulu dari laman web rasmi Arduino. Sekiranya anda mempunyai versi yang lebih baru pada PC anda, yang terbaik adalah memuat turunnya dalam format.zip dan memampatkannya pada PC anda. Klik pautan ini untuk memuat turun versi Windows.

Anda memerlukan perpustakaan papan kekunci PS2. Anda boleh mendapatkannya di bahagian bawah halaman ini. Cukup tekan dan salin folder papan kekunci PS2 di: arduino-1.6.4 / library

Akhirnya, di halaman ini, muat turun fail: TinyBasicPlus_PS2_VGAx.ino, tekan dan muat naik di Arduino anda.

Ini adalah variasi dari TinyBasic Plus standard di mana saya telah menambahkan perpustakaan PS2 dan mengubah kod untuk menerima pemboleh ubah daripadanya.

Maklumat lanjut mengenai TiniBasic Plus dan tutorial boleh didapati di pautan ini.

Sekiranya tidak ada masalah, dan masalah keserasian, Tiny Basic sudah berjalan. Anda boleh mengujinya melalui monitor bersiri di PC anda. Untuk tujuan ini saya menggunakan PuTTY, tetapi banyak program lain yang ada.

Anda harus menetapkan port COM yang betul (sama seperti yang anda dapati di Arduino IDE) dan baud rate = 4800

Di sini anda sudah dapat menguji beberapa program dalam Basic hanya dengan menaipnya dengan papan kekunci PC anda (NB nanti saya akan menunjukkan cara menyambungkan papan kekunci PS2 terus ke Arduino).

Cuba contohnya:

10 CETAKAN "Helo, Dunia!"

20 GOTO 10

JALANKAN

Anda kemudian boleh menghentikan gelung tak terhingga hanya dengan menaip ctrl + c.

Perhatikan bahawa kombinasi ini tidak akan berfungsi untuk papan kekunci PS2.

Pada langkah seterusnya saya akan menunjukkan cara menyambungkan papan kekunci PS2 ke Arduino.

Langkah 2: Sambungkan Papan Kekunci PS2 ke Master Arduino

Sambungkan Papan Kekunci PS2 ke Master Arduino
Sambungkan Papan Kekunci PS2 ke Master Arduino

Saya mendapat semua maklumat dan perpustakaan dari Instructable ini.

Pada dasarnya anda perlu menghubungkan empat pin berikut:

  • Data papan kekunci ke Arduino pin 8,
  • papan kekunci IRQ (jam) ke Arduino pin 3;
  • anda juga perlu menghubungkan GND dan + 5V.

Saya mendapat penyambung wanita PS2 lama dari papan induk PC yang rosak. Anda boleh menjualnya dengan pistol panas.

Dalam gambar yang ditunjukkan dalam langkah ini, anda dapat mengetahui fungsi pin penyambung PS2 yang diperlukan.

Langkah 3: Muat naik Perpustakaan dan Kod VGAx di Arduino Kedua dan Gabungkan Semuanya

Muat naik Perpustakaan dan Kod VGAx di Arduino Kedua dan Gabungkan Segalanya
Muat naik Perpustakaan dan Kod VGAx di Arduino Kedua dan Gabungkan Segalanya

Muat turun dahulu kod VGAx-PC.ino di bahagian bawah halaman ini dan salin pada PC anda dalam direktori dengan nama yang sama.

Muat turun perpustakaan VGAx dari pautan ini di GitHub. Cara termudah adalah menyalinnya dalam subfolder perisian Arduino yang bernama "perpustakaan", agar dapat dikenali dengan segera.

PENTING: perpustakaan ini berfungsi untuk Arduno IDE 1.6.4 tetapi tidak sepenuhnya sesuai dengan versi yang lebih tua atau yang lebih baru.

Muat naik VGAx-PC.ino di papan Arduino kedua anda (saya mengujinya untuk versi Nano tetapi Uno harus berfungsi juga).

Amaran untuk memori yang tersedia rendah adalah perkara biasa. Sekiranya anda tidak mempunyai kesilapan lain semuanya baik-baik saja dan anda boleh mula membina PC 8-bit anda sendiri.

Untuk ini, anda memerlukan:

  • dua Arduino Uno Rev. 3 atau dua Arduino Nano 3.x (ATmega328)
  • Penyambung DSUB15, iaitu penyambung wanita VGA atau kabel VGA yang akan dipotong.
  • perintang: 2 x 68 Ohm dan 2 x 470 Ohm
  • penyambung wanita PS2
  • wayar
  • fakultatif: papan roti atau papan jalur

Skema dilaporkan di bahagian atas langkah ini. Contoh "konsol" yang sudah selesai ditunjukkan dalam langkah pengenalan.

Skema yang sama, dengan resolusi yang lebih tinggi, dilaporkan dalam fail yang dimampatkan di bahagian bawah langkah ini.

Langkah 4: Pilihan: Menggunakan PCB

Pilihan: Menggunakan PCB
Pilihan: Menggunakan PCB
Pilihan: Menggunakan PCB
Pilihan: Menggunakan PCB
Pilihan: Menggunakan PCB
Pilihan: Menggunakan PCB
Pilihan: Menggunakan PCB
Pilihan: Menggunakan PCB

Anda juga boleh membina PC VGA Asas ini menggunakan PCB kecil. Anda boleh mengambil inspirasi dari gambar dalam langkah ini atau anda juga boleh mencetak papan anda sendiri.

Saya menggunakan dua jalur header wanita dengan 15 lubang untuk output video Arduino, sementara untuk master saya menggunakan dua jalur dengan lubang doble. Dengan cara ini saya dapat menggunakan yang luaran untuk memasukkan kenalan komponen projek lain, yang dapat dipacu secara langsung dengan kod Asas. Saya juga menambah di tengah-tengah jalur sisa, satu disambungkan ke 5 V dan yang lain untuk GND.

Langkah 5: Komen dan Ucapan Terima Kasih

Aknowledgement utama saya pergi ke Sandro Maffiodo aka Smaffer, pencipta perpustakaan VGAx yang hebat.

Terima kasih juga kepada pengarang TinyBasic Plus:

  • Tiny Basic 68k - Gordon Brandly
  • Arduino Basic / Tiny Basic C - Michael Field
  • Tiny Basic Plus - Scott Lawrence

Terima kasih juga kepada "djsadeepa", pengarang Instructable untuk penyambungan papan kekunci PS2.

Kepada semua orang yang berminat dalam projek ini: jika anda mempunyai masalah, jangan ragu untuk meminta cadangan dalam komen.

Sekiranya anda berjaya, tulis juga komen atau kongsi gambar peranti yang anda bina.

Disyorkan: