JFET

ESP32-SOLO VGA game console development board

 
Overview

Simple explanation

 

Have you ever thought about designing a game console yourself? The purpose of this thing is to develop VGA output. At present, VGA display has been successfully implemented, and other content is up to you.

 

It provides four types of components, buzzer, direction keys and AB, as well as a VGA output interface. There is also an OLED interface, which can be installed depending on the situation.

 

It adopts extremely advanced Type-C, onboard CH340C, and is directly controlled by the serial port.

 

You can use ESP32-Wroom and ESP32-Solo. In fact, the difference between the two is not really that big. Of course, scheduling will be easier if there are multiple cores.

 

 

How to use and develop

 

How to use this module? It's actually very simple, just plug in the electricity

 

 

 

 

The display effect is as follows, it looks pretty good, right?

 

 

Of course, for simple use, you need Arduino IDE and post some commonly used add-on board addresses.

 

http://dan.drown.org/stm32duino/package_STM32duino_index.json
https://github.com/stm32duino/BoardManagerFiles/raw/master/STM32/package_stm_index.json
https://dl.espressif.com/dl/package_esp32_index. json
https://mcudude.github.io/MicroCore/package_MCUdude_MicroCore_index.json
https://mcudude.github.io/MiniCore/package_MCUdude_MiniCore_index.json

 

The library I use to drive VGA is bitluni's ESP32Lib. Its compilation speed is fast and it is more refined than FABGL.

 

 

 

Pin definitions for all components

 

VRED 2
VGREEN 15
VBLUE 19
VHSYNC 17
VVSYNC 4

UP 26
DOWN 32
LEFT 14
RIGHT 14
A 33
B 25
START 34
SELECT 35
BUZZER 5

 

 

test code

 

Run the VGA just now to display HelloWorld

 

#include <ESP32Lib.h>
#include <Ressources/Font6x8.h>

//pin configuration
const int redPin = 2;
const int greenPin = 15;
const int bluePin = 19;
const int hsyncPin = 17;
const int vsyncPin = 4;

//VGA Device
VGA3Bit vga;

void setup()
{
    //initializing vga at the specified pins
    vga.init(vga.MODE320x240, redPin, greenPin, bluePin, hsyncPin, vsyncPin);
    //selecting the font
    vga.setFont(Font6x8);
    //displaying the text
    vga .println("Hello World!");
  Serial.println("System Online");
}

void loop()
{
  delay(10);
  
}

 

 

You can learn and develop more by yourself

 

参考设计图片
×
 
 
Search Datasheet?

Supported by EEWorld Datasheet

Forum More
Update:2025-06-19 15:10:31

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
community

Robot
development
community

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号