Isi kandungan:

PC32 Asas ESP32 Dengan Output VGA: 7 Langkah
PC32 Asas ESP32 Dengan Output VGA: 7 Langkah

Video: PC32 Asas ESP32 Dengan Output VGA: 7 Langkah

Video: PC32 Asas ESP32 Dengan Output VGA: 7 Langkah
Video: Ada yang tau spek PC nya sisca kohl ? 2024, November
Anonim
Image
Image
Papan ESP32, Pemasangan Arduino IDE dan Konfigurasi Perpustakaan VGA
Papan ESP32, Pemasangan Arduino IDE dan Konfigurasi Perpustakaan VGA

Dalam Instructable ini saya akan menunjukkan cara membina PC gaya retro sederhana yang dilakukan dengan satu ESP32 dan beberapa komponen lain.

PC ini menjalankan Tiny Basic, dialek BASIC yang dipermudah, dan menghasilkan output untuk monitor VGA.

Resolusi berukuran 640x350 piksel, membolehkan watak asci 80x25 dalam 8 warna. Papan kekunci PS2 boleh disambungkan dan digunakan untuk menulis kod, sehingga memori sehingga 14059 byte.

Pin ESP / I / O ESP32 dapat langsung dipacu oleh perintah BASIC khusus.

Projek ini dimungkinkan oleh perpustakaan ESP32 VGA yang hebat yang ditulis oleh Fabrizio Di Vittorio. Lihat di sini untuk maklumat lebih lanjut.

Langkah 1: Papan ESP32, Pemasangan Arduino IDE dan Konfigurasi Perpustakaan VGA

Papan ESP32, Pemasangan Arduino IDE dan Konfigurasi Perpustakaan VGA
Papan ESP32, Pemasangan Arduino IDE dan Konfigurasi Perpustakaan VGA
Papan ESP32, Pemasangan Arduino IDE dan Konfigurasi Perpustakaan VGA
Papan ESP32, Pemasangan Arduino IDE dan Konfigurasi Perpustakaan VGA

Pertama sekali, anda perlu membeli semakan ESP32 1 atau lebih tinggi. Terdapat banyak versi yang tersedia, tetapi saya cadangkan untuk memilihnya dengan banyak pin. Saya menggunakan versi ini, tetapi saya rasa banyak juga yang baik. Sebagai contoh, dalam keterangan video ini, anda boleh menemui tiga model lain yang berharga kurang dari 5 dolar.

Setelah mendapat papan, anda perlu meneruskan tiga sub-langkah berikut:

  1. Pasang IDE Arduino terakhir
  2. Konfigurasikan ESP32 di IDE dan
  3. Pasang pustaka VGA

Sub-langkah 1.

Terdapat kaedah yang berbeza untuk memprogram ESP32, tetapi di sini anda perlu menggunakan Arduino IDE terbaru (saya menggunakan versi 1.8.9). Untuk memasangnya, anda boleh pergi ke halaman Arduino IDE dan mengikuti arahannya.

Sub-langkah 2

Setelah operasi sebelumnya selesai, anda perlu mengkonfigurasi ESP32 anda dalam Arduino IDE. Ini tidak remeh, kerana ESP32 tidak (belum?) Asli di dalamnya. Anda boleh mengikuti tutorial ini, atau langkah-langkah berikut.

1) buka Arduino IDE

2) buka tetingkap pilihan, Fail / Keutamaan, atau tekan "Ctrl + koma"

3) pergi ke "URL Pengurus Papan Tambahan", salin dan tampal teks berikut:

https://dl.espressif.com/dl/package_esp32_index.json

dan klik butang OK.

4) Pengurus papan terbuka. Pergi ke Pengurus Alat / Papan / Papan…

5) Cari ESP32 dan tekan butang pasang untuk "ESP32 by Espressif Systems":

6) Pada ketika ini, apabila anda menyambung ESP32 buat pertama kalinya, anda harus memilih model yang tepat dalam senarai panjang papan ESP32 yang tersedia (lihat gambar dalam langkah ini). Sekiranya terdapat keraguan mengenai model, pilih model generik, iaitu model pertama. Ia berfungsi untuk saya.

7) sistem juga harus memilih port USB yang betul dan Speed Upload (biasanya 921600). Pada ketika ini hubungan antara PC anda dan papan ESP32 harus terjalin.

Sub-langkah 3

Akhirnya anda harus memasang perpustakaan FabGL VGA. [kemas kini Julai 2019] Anda memerlukan dan versi lama libray ini: anda boleh memuat turun fail zip src.old.zip di bahagian bawah langkah ini, tekan dan namakan semula folder sebagai "src" di

Folder "… / arduino-1.8.9 / library".

Setelah melakukan operasi ini, anda boleh pergi ke langkah seterusnya dan memuat naik TinyBasic yang telah diubah suai mengikuti langkah seterusnya.

Langkah 2: Memuat naik Kod Asas Kecil ke ESP32

Memuat naik Kod Asas Kecil ke ESP32
Memuat naik Kod Asas Kecil ke ESP32
Memuat naik Kod Asas Kecil ke ESP32
Memuat naik Kod Asas Kecil ke ESP32

Muat turun ESP32_TinyBasicPlus_PS2_FabLab_beta.ino di bahagian bawah langkah ini.

Buka dengan Arduino IDE dan muat naik ke ESP32 mentah anda.

Sekiranya anda tidak mempunyai mesej ralat, kod tersebut seharusnya sudah berjalan.

Langkah fakultatif: jika anda ingin menguji TinyBasic sebelum menyambungkan papan kekunci VGA dan PS2, anda sudah boleh melakukannya dengan pelanggan SSH dan telnet. Saya menggunakan PuTTY.

Anda dapat melihat bagaimana rupa gambar dalam langkah ini.

Langkah 3: Menyambungkan Port VGA

Menyambungkan Pelabuhan VGA
Menyambungkan Pelabuhan VGA

Anda memerlukan bahagian berikut:

  • Penyambung DSUB15, iaitu penyambung wanita VGA atau kabel VGA yang akan dipotong.
  • tiga perintang 270 Ohm.

Sambungkan ESP32 GPIO pin 2, 15 dan 21 ke VGA Merah, Hijau dan Biru masing-masing, melalui perintang 270 Ohm.

Sambungkan VGA Hsync dan Vsync ke pin ESP32 GPIO 17 dan 4 masing-masing.

Sambungkan pin penyambung DSUB15 5, 6, 7, 8 dan 10 ke ESP32 GND.

Untuk definisi pin penyambung VGA DSUB15, lihat gambar dalam langkah ini. NB, ini adalah bahagian pemateri penyambung wanita.

Langkah 4: Menyambungkan Port PS2

Menyambungkan Port PS2
Menyambungkan Port PS2

Anda memerlukan penyambung wanita papan kekunci PS2.

Anda boleh mendapatkannya dari motherboard PC lama, hanya menjualnya dengan pistol panas. Dalam gambar yang ditunjukkan dalam langkah ini, anda dapat mengetahui fungsi pin penyambung PS2 yang diperlukan.

Sambungannya adalah:

  • Data Papan Kekunci ke pin ESP32 GPIO 32
  • Papan kekunci IRQ (jam) ke pin ESP32 GPIO 33
  • Anda juga perlu menyambungkan pin 5V dan pin GND.

Langkah 5: Pengaturcaraan Dengan Tiny Basic

Pengaturcaraan Dengan Tiny Basic
Pengaturcaraan Dengan Tiny Basic
Pengaturcaraan Dengan Tiny Basic
Pengaturcaraan Dengan Tiny Basic

Pada ketika ini, jika anda boleh menyambungkan monitor VGA dan papan kekunci PS2 dan ESP32 ke bekalan kuasa.

Gambar yang ditunjukkan di sini mesti terpapar di monitor. Sekarang anda boleh bermain sedikit dengan arahan Tiny Basic.

Cuba, contohnya, Hello, Word yang wajib! gelung tak terhingga:

10 cetakan "Hello, World!"

20 goto 10

lari

Anda boleh menukar dalam empat warna yang berbeza dengan menekan butang esc, dan menghentikan gelung dengan ctrl + c

Perhatikan bahawa jika anda membuat kesalahan ketik, anda tidak boleh membatalkannya! Atau lebih baik, anda boleh membatalkan tetapi pembetulan typo tidak dikenali. Anda perlu menulis semula keseluruhan baris arahan.

Sekarang anda boleh mencuba sesuatu yang lebih kompleks, seperti menggerakkan LED sekelip mata dengan program asas. Sambungkan, misalnya, anod LED (kaki panjang) ke ESP32 GPIO pin 13, dan katod ke GND.

Kemudian tulis:

baru

10 i = 1000

20 cetakan i

30 kelewatan i

40 dwrite 13, tinggi

50 kelewatan i

60 dwrite 13, rendah

70 i = i * 9/10

80 jika saya> 0 goto 20

90 hujung

lari

Anda dapat melihat hasilnya dalam video yang disertakan dalam Instructable ini.

Langkah 6: Menyambungkan Kad Memori SD

Menyambungkan Kad Memori SD
Menyambungkan Kad Memori SD
Menyambungkan Kad Memori SD
Menyambungkan Kad Memori SD

PC lama, tidak kira seberapa kecil dan lemahnya, tidak lengkap jika anda tidak dapat menyimpan program anda secara kekal.

Dalam langkah ini saya akan menunjukkan cara menyambungkan kad memori SD, tetapi sayangnya, buat masa ini (saya harap hanya untuk masa ini), penyimpanan program tidak berfungsi!

BTW, saya menggunakan penyesuai kad microSD ke SD dan saya menyolder 8 pin berbentuk L seperti yang ditunjukkan dalam gambar dalam langkah ini.

Saya kemudian menyambungkan pin penyesuai SD ke ESP32 mengikut gambar kedua, iaitu saya menyambungkan pin GPIO ESP32 5, 18, 19, 23 ke SC, jam, MISO, MOSO masing-masing, ditambah 3.3V dan dua GND.

Saya juga mengikuti arahan dan contoh yang terdapat di sini, dan dengan kod contoh SD_test.ino, saya dapat menulis pada kad microSD 2 GBytes saya.

Oleh itu, jika ada yang mencari jalan keluar, sila maklumkan kepada saya secepat mungkin ke e-mel saya [email protected] dan saya akan melengkapkan Arahan ini.

Langkah 7: Ucapan terima kasih

Ucapan terima kasih
Ucapan terima kasih

Saya ingin mengucapkan terima kasih kepada Fabrizio Di Vittorio untuk perpustakaan ESP32 VGA yang hebat. Untuk maklumat lebih terperinci, contoh, dan… Space Invaders, kunjungi laman webnya di sini.

terima kasih juga kepada pengarang Tiny Basic:

  • Mike Field
  • Scott Lawrence
  • Brian O'Dell

Akhirnya, jika anda menyukai projek ini, sila tulis komen atau kongsi gambar peranti yang anda bina… dan, lebih-lebih lagi, pilihlah dalam peraduan Arduino!

Disyorkan: