logo
196 Words

DinoKun

A Tamagochi implementation for microcontrollers

logo

Boards

  • Lolin S2 Mini (ESP32 S2)
  • YD RP2040 (Raspberry Pi Pico RP2040)

Documentation

Code Architecture

flowchart BT
    DinoKun8pt7b -.-> GFXFont --> Assets --> Dino
    Setup --> Dino
    YD-RP2040 -.-> Setup
    LolinS2Mini -.-> Setup
    Adafruit_NeoPixel -.->RGBLed -.-> Led
    NormalLed -.-> Led --> Dino
    
    
    Adafruit_SSD1306 -.-> Screen --> TaskScreen
    PushButtons -.-> Controller --> TaskController
    TaskController -.Events.-> Dino
    Dino -.Draw.-> TaskScreen

State Machine

  • Dino
  • Menu
    • Dino State
    • Food
    • Gaming
    • Study
stateDiagram-v2
    [*] --> Born
    Born --> DinoMove
    DinoMove --> Born : reset
    DinoMove --> Menu : menu clicked
    Menu --> DinoState
    state DinoState {
        [*] --> Dino
        Dino --> Grad
        Grad --> Temp
        Temp --> Dino
        
    }
    Menu --> Food
    state Food {
        [*] --> Choose
        Choose --> Eat
        Eat --> FoodMove
        FoodMove --> Choose
    }

    Menu --> Study
    state Study {
        [*] --> StudyMove
        StudyMove --> [*]
    }
    Menu --> Pet
    state Pet {
        [*] --> PetMove
        PetMove --> [*]
    }

    Menu --> Game
    state Game {
        state if_result <>
        state result <>
        [*] --> Player1
        Player1 --> Player2
        
        Player2 --> if_result
        if_result --> GameWinMove : win
        if_result --> GameLostMove : lost
        GameWinMove --> result 
        GameLostMove --> result
        result --> Player1
        
        
    }