kDXgSjhjk

[Liangshan Sect] Game Console Expansion Board v1.0

 
Overview
After learning about the Liangshan School of martial arts, I learned how to build a game console.
Hardware-wise: The screen is a 1.69-inch LCD driven by an ST7789V, with a 240×280 resolution, SPI interface, and a soldered design. Audio uses an 8002A amplifier circuit. There are 7 buttons, which feel really good to the touch. There's also a joystick. The buttons are directly connected to GND, and the input needs to be set to pull-up resistors. There's an LED indicator for running indicators or other customizable functions.
1. For the buttons, one side is connected to the microcontroller's I/O, and the other side is directly grounded, so the I/O mode needs to be set to pull-up resistor input during programming.
2. An LED indicator was added.
3. The reset button is different from LCSC's because mine doesn't have a battery interface.
4. Other modules are the same as LCSC's, except the vibration motor was removed.
Software-wise: I learned how to create a menu, using buttons to switch interfaces left and right, or sliding the joystick to switch interfaces. Then I made a Snake game, a super simple version of Snake. The TFTLCD library used is the LCD library.
I learned a lot from this experience of learning about the Liangshan School of martial arts and building a game console. I mainly learned about interrupts, ADCs, SPI, and IIC.
During the game console's construction, I encountered many problems. First, there were the two header pins. Initially, they didn't align with the development board because I had soldered them backwards on my board. It took three attempts to get the board right, but I finally succeeded on the first try (PS: I immediately noticed the mistake when I received the first two boards; they weren't soldered properly. I was too careless and didn't even understand the basics. I'm so inexperienced). Then there were programming issues. When writing the Snake game, I kept thinking about how to calculate the movement direction and next position of each snake body individually. Initially, I thought of giving each body a direction and then calculating the next position coordinates. However, I couldn't implement this. Then, after reading a tutorial from LCSC, it suddenly dawned on me: I only needed to give the snake head a direction, and the other body parts would inherit the position of the previous body (I'm really bad at this).
参考设计图片
×
 
 
Search Datasheet?

Supported by EEWorld Datasheet

Forum More
Update:2026-03-27 21:26:45

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号