## The question requires
making a game console expansion board based on the Liangshan School development board.
B station demonstration video link: https://b23.tv/CgiWckW
## Schematic design description
The schematic part mainly draws on the Liangshan School’s game expansion board and deletes it according to actual needs.
The schematic part is mainly divided into: push button, vibration motor, EEPROM, DAC audio output, and the pin header interface of the Liangshan School development board.
Joystick: Connect to PA1 and PC1, use the ADC function of the chip to detect the current voltage value and infer the current joystick position;
![image.png]
Button: as signal input;
![image.png]
Vibration motor: as feedback Output;
![image.png]
EEPROM: used to store game progress and other related information;
![image.png]
DAC audio circuit: used to play game sound effects, etc.;
![image.png]
## PCB design description
PCB appearance adopts Game controller shape and size: within 10*10cm, this size does not exceed the free sample range.
PCB layout:
1. The joystick is on the left, the buttons are on the right, and the reset button is under the screen.
2. The display screen is placed on the front, and the Liangshan School development board is inserted into the row of seats on the back.
3. The audio output and vibration motor are placed on the back of the board.
Design considerations for wiring, line width, spacing, etc.:
1. The front is basically vertical wiring, and the back is basically horizontal wiring to reduce interference.
2. The power cord is thickened and the signal line is 10mil.
![image.png]
## Software Description
The software part is compatible with the Liangshan School expansion board.
## Physical display description
Front view:
![top_copy.jpg]
Back view:
![back_copy.jpg]
## Demonstration video
**B station demonstration video link: https://b23.tv/CgiWckW
## Please see the attachments for other attachment upload
codes and NES games.