Mục lục:

Máy tính cơ bản Arduino với đầu ra VGA: 5 bước (có hình ảnh)
Máy tính cơ bản Arduino với đầu ra VGA: 5 bước (có hình ảnh)

Video: Máy tính cơ bản Arduino với đầu ra VGA: 5 bước (có hình ảnh)

Video: Máy tính cơ bản Arduino với đầu ra VGA: 5 bước (có hình ảnh)
Video: Dùng tivi để làm màn hình máy tính được không? 2024, Tháng bảy
Anonim
Image
Image
Máy tính cơ bản Arduino với đầu ra VGA
Máy tính cơ bản Arduino với đầu ra VGA
Máy tính cơ bản Arduino với đầu ra VGA
Máy tính cơ bản Arduino với đầu ra VGA

Trong Tài liệu hướng dẫn trước đây của tôi, tôi đã chỉ ra cách xây dựng một máy tính 8-bit cổ điển chạy BASIC, bằng hai Arduino và với tín hiệu đầu ra trong B&W cho màn hình TV.

Bây giờ tôi sẽ hướng dẫn cách xây dựng cùng một máy tính, nhưng với tín hiệu đầu ra có màu cho màn hình VGA!

Bạn có thể nhập các biến và chương trình BASIC bằng bàn phím PS2 và nó tạo ra đầu ra cho màn hình VGA với độ phân giải văn bản 24 cột x 10 hàng ký tự 5x6 pixel, với bốn màu. Bạn có thể thấy nó hoạt động trong video phía trên. Sau đó, chương trình có thể được lưu trên Arduino EEPROM và bạn vẫn có thể điều khiển các chân I / O trực tiếp thông qua các lệnh chuyên dụng Cơ bản.

Dự án này cũng có thể được sử dụng để in các tin nhắn văn bản đơn giản trên màn hình, như thể hiện trong hình thứ ba trong trang này.

Một Arduino là "bậc thầy", và nó chạy Tiny Basic Plus, một triển khai C của Tiny Basic, tập trung vào hỗ trợ cho Arduino. Nó cũng điều khiển bàn phím PS2. Đầu ra sau đó được gửi qua cổng nối tiếp đến Arduino thứ hai tạo ra đầu ra VGA nhờ thư viện VGAx.

Ý tưởng sử dụng một hoặc nhiều Arduino để tạo một PC kiểu cũ chạy phương ngữ Basic không phải là mới nhưng theo tôi biết, không có cái nào trong số chúng có đầu ra màu. Trong một số dự án có sẵn trên mạng, người ta sử dụng màn hình LCD, trong khi ở một số dự án khác, để cho phép sử dụng màn hình, người ta đã sử dụng thư viện TVout, đó là B&W. Hơn nữa, trong nhiều dự án này phải xây dựng các tấm chắn hoặc phần cứng đặc biệt. Ở đây bạn chỉ cần hai Arduino, một vài điện trở và đầu nối cho bàn phím PS2 và màn hình, như trong hình trên.

Bước 1: Xây dựng Arduino Master với bàn phím TinyBasic và PS2

TinyBasic Plus và thư viện VGAx hoạt động cho Arduino IDE 1.6.4.

Đầu tiên hãy tải xuống từ trang web chính thức của Arduino. Nếu bạn có phiên bản mới hơn trên PC của mình, cách tốt nhất là tải xuống ở định dạng.zip và giải nén chúng trên PC của bạn. Nhấp vào liên kết này để tải xuống phiên bản Windows.

Sau đó, bạn cần thư viện PS2keyboard. Bạn có thể tìm thấy nó ở cuối trang này. Chỉ cần giải nén nó và sao chép thư mục PS2keyboard trong: arduino-1.6.4 / Library

Cuối cùng, trong trang này, hãy tải xuống tệp: TinyBasicPlus_PS2_VGAx.ino, giải nén và tải nó lên Arduino của bạn.

Đây là một biến thể của TinyBasic Plus tiêu chuẩn, nơi tôi đã thêm thư viện PS2 và sửa đổi mã để chấp nhận các biến từ nó.

Bạn có thể tìm thêm thông tin chi tiết về TiniBasic Plus và các hướng dẫn tại liên kết này.

Nếu không có vấn đề và sự cố tương thích, Tiny Basic đã chạy. Bạn có thể kiểm tra nó qua màn hình nối tiếp trong PC của mình. Vì mục đích này, tôi sử dụng PuTTY, nhưng nhiều chương trình khác có sẵn.

Bạn phải đặt đúng cổng COM (giống cổng COM bạn tìm thấy trong Arduino IDE) và tốc độ truyền = 4800

Ở đây bạn đã có thể kiểm tra một số chương trình trong Basic chỉ bằng cách gõ chúng bằng bàn phím PC của bạn (NB sau này, tôi sẽ hướng dẫn cách kết nối bàn phím PS2 trực tiếp với Arduino).

Hãy thử ví dụ:

10 IN "Hello, World!"

20 GOTO 10

CHẠY

Sau đó, bạn có thể dừng vòng lặp vô hạn chỉ bằng cách gõ ctrl + c.

Lưu ý rằng sự kết hợp này sẽ không hoạt động đối với bàn phím PS2.

Trong bước tiếp theo, tôi sẽ hướng dẫn cách kết nối bàn phím PS2 với Arduino.

Bước 2: Kết nối Bàn phím PS2 với Arduino chính

Kết nối Bàn phím PS2 với Arduino Chính
Kết nối Bàn phím PS2 với Arduino Chính

Tôi nhận được tất cả thông tin và thư viện từ Tài liệu hướng dẫn này.

Về cơ bản, bạn cần kết nối bốn chân sau:

  • bàn phím Dữ liệu đến chân 8 của Arduino,
  • bàn phím IRQ (đồng hồ) đến chân 3 của Arduino;
  • bạn cũng cần kết nối GND và + 5V.

Tôi nhận được một đầu nối PS2 nữ cũ từ một bo mạch chủ PC bị hỏng. Bạn có thể đơn giản là không bán được nó bằng súng nhiệt.

Trong hình minh họa ở bước này, bạn có thể tìm thấy chức năng của các chân cần thiết của đầu nối PS2.

Bước 3: Tải lên Thư viện và Mã VGAx trên Arduino thứ hai và Đặt mọi thứ lại với nhau

Tải lên Thư viện và Mã VGAx trên Arduino thứ hai và Đặt mọi thứ lại với nhau
Tải lên Thư viện và Mã VGAx trên Arduino thứ hai và Đặt mọi thứ lại với nhau

Trước tiên, hãy tải xuống mã VGAx-PC.ino ở cuối trang này và sao chép nó trên PC của bạn trong một thư mục có cùng tên.

Tải xuống thư viện VGAx từ liên kết này trên GitHub. Cách dễ nhất là sao chép nó trong thư mục con của phần mềm Arduino có tên là "thư viện", để được nhận ra ngay lập tức.

QUAN TRỌNG: thư viện này hoạt động cho Arduno IDE 1.6.4 nhưng nó không hoàn toàn tương thích với các phiên bản cũ hơn hoặc mới hơn.

Tải lên VGAx-PC.ino trong bảng Arduino thứ hai của bạn (Tôi đã thử nghiệm nó cho phiên bản Nano nhưng Uno cũng sẽ hoạt động).

Một cảnh báo cho bộ nhớ khả dụng thấp là bình thường. Nếu bạn không gặp các lỗi khác, mọi thứ đều ổn và bạn có thể bắt đầu ngay lập tức xây dựng PC 8-bit của riêng mình.

Đối với điều này, bạn cần:

  • hai Arduino Uno Rev. 3 hoặc hai Arduino Nano 3.x (ATmega328)
  • Đầu nối DSUB15, tức là đầu nối VGA cái hoặc cáp VGA bị cắt.
  • điện trở: 2 x 68 Ohm và 2 x 470 Ohm
  • một đầu nối PS2 cái
  • Dây điện
  • facultative: một breadboard hoặc một bảng dải

Sơ đồ được báo cáo ở đầu bước này. Ví dụ về một "bảng điều khiển" đã hoàn thành được hiển thị trong bước giới thiệu.

Sơ đồ tương tự, với độ phân giải cao hơn, được báo cáo trong một tệp nén ở cuối bước này.

Bước 4: Tùy chọn: Sử dụng PCB

Tùy chọn: Sử dụng PCB
Tùy chọn: Sử dụng PCB
Tùy chọn: Sử dụng PCB
Tùy chọn: Sử dụng PCB
Tùy chọn: Sử dụng PCB
Tùy chọn: Sử dụng PCB
Tùy chọn: Sử dụng PCB
Tùy chọn: Sử dụng PCB

Bạn cũng có thể xây dựng PC VGA Cơ bản này bằng cách sử dụng một PCB nhỏ. Bạn có thể lấy cảm hứng từ các hình ảnh trong bước này hoặc thậm chí bạn có thể in bảng của riêng bạn.

Tôi đã sử dụng hai dải tiêu đề cái có 15 lỗ cho đầu ra video Arduino, trong khi đối với bản chính, tôi sử dụng hai dải có lỗ doble. Bằng cách này, tôi có thể sử dụng các cấu phần bên ngoài để chèn địa chỉ liên hệ của các thành phần dự án khác, có thể được điều khiển trực tiếp bằng mã Cơ bản. Tôi cũng thêm vào giữa các dải còn lại, một dải được kết nối thành 5 V và dải còn lại cho GND.

Bước 5: Nhận xét và Lời cảm ơn cuối cùng

Kiến thức chính của tôi thuộc về Sandro Maffiodo hay còn gọi là Smaffer, người tạo ra thư viện VGAx tuyệt vời.

Cũng xin cảm ơn các tác giả của TinyBasic Plus:

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

Cũng xin cảm ơn "djsadeepa", tác giả của Sách hướng dẫn về kết nối của bàn phím PS2.

Gửi đến tất cả những người quan tâm đến dự án này: nếu bạn gặp khó khăn, đừng ngần ngại hỏi ý kiến trong phần bình luận.

Nếu bạn thành công, vui lòng viết bình luận hoặc chia sẻ hình ảnh của thiết bị bạn chế tạo.

Đề xuất: