Skip to content

Latest commit

 

History

27 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Franzininho CH32V003 Examples

Firmware examples for a custom Franzininho board based on the CH32V003 microcontroller using the ch32v003fun framework.

This repository provides a structured set of examples ranging from basic GPIO control to interactive applications with display, sound, and user input.


Features

  • GPIO (LED)
  • Digital input (button)
  • ADC (analog keyboard / inputs)
  • Buzzer (passive)
  • OLED display (SSD1306 via I2C)
  • Simple UI and games

Project Structure

.
├── core/           # Hardware abstraction (drivers)
├── examples/       # Application examples
├── include/        # Global headers (funconfig.h)
├── platformio.ini

Getting Started

1. Install PlatformIO


2. Clone the repository

git clone https://github.com/your-user/franzininho-ch32v003.git
cd franzininho-ch32v003

3. Build and upload an example

pio run -e 01_blink -t upload

Examples

Example Description
01_blink LED blinking
02_button Button input control
03_adc ADC reading
04_oled OLED display test
05_demo_01 Integrated example
06_buzzer Simple buzzer tones
07_buzzer_music Music player (melodies)
08_game_reflex Reflex game (1 button + OLED)

Highlights

Buzzer Music Player

  • Plays simple melodies such as Nokia and Mario themes
  • Uses software-based tone generation

Reflex Game

  • Measures user reaction time
  • Uses OLED, button input and buzzer feedback

Hardware

  • MCU: CH32V003F4P6
  • OLED: SSD1306 (128x64, I2C)
  • Button (digital input)
  • Passive buzzer
  • Analog keyboard (resistor ladder)

Notes

  • The buzzer uses software-based tone generation
  • PWM audio requires specific timer pins and is not used in this board configuration

Framework


Purpose

This project is intended for:

  • Learning embedded systems
  • Teaching microcontroller fundamentals
  • Rapid prototyping with CH32V003
  • Building interactive embedded applications

Roadmap

  • ADC keyboard decoding
  • OLED menu system
  • Non-blocking audio player
  • Additional games
  • Expanded documentation

License

MIT License


Author

Fabio Souza Embedded systems engineer Founder of Embarcados


Contribute

Contributions are welcome. You can:

  • Open issues
  • Suggest improvements
  • Submit pull requests

Final Thoughts

This project evolves from simple examples into a small embedded platform combining:

  • Input (button, ADC)
  • Output (LED, OLED, buzzer)
  • Interaction (games and UI)

It is a solid starting point for embedded learning and experimentation.

About

No description, website, or topics provided.

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages