Microcontroller programming using the HCS12 and EEBOT.
This repository contains embedded systems projects written in HCS12 Assembly, and each project builds on the previous one. The progression starts with basic digital I/O and timing operations, and it eventually leads to sensor processing, LCD control, and autonomous robotic movement.
The main areas of focus include:
- Register-level hardware control
- Real-time program behavior
- State-based logic design
- Bitwise operations and masking
- Analog and digital interfacing
- Robotics behavior and control systems
All programs run directly on hardware with no external libraries or operating systems.
EMBEDDED_ASSEMBLY/
│
├── code.txt # Full project source (formatted outside the IDE)
│
├── README.md # Root documentation (this file)
│
├── Hardware_Images/ # Schematics and reference diagrams
│
├── HCS12/ # Bench-level microcontroller projects
│ ├── README.md # HCS12-specific project descriptions
│ ├── Board/
│ │ ├── LED_BAR/
│ │ ├── Keypad_Controlling_Diode/
│ │ ├── Buzzer/
│ │ └── LCD/
│ ├── Images/
│ └── Simulation/
│ └── Multiplication/
│
└── EEBOT/ # Robotics and autonomous programs
├── README.md # EEBOT-specific project descriptions
├── Board/
│ ├── Battery_And_Bumper_Display/
│ ├── Motor_Control/
│ ├── Timer_Alarms/
│ └── Robot_Roaming/
├── Images/
└── Simulation/
└── Timer_Overflow/
These projects use the HCS12 family, which is a 16-bit architecture with memory-mapped I/O, timers, and an analog-to-digital subsystem.
This diagram shows the programmer-visible registers, including accumulators, index registers, the stack pointer, and the condition code register.
The built-in memory system includes flash, EEPROM, RAM, and register blocks.
| HCS12 Bench System | EEBOT Robot Platform |
|---|---|
Both platforms share the same microcontroller family, and both are used for different purposes.
The bench system is used for testing hardware modules, and the EEBOT platform applies those skills to robotics.
Each project title links to a detailed breakdown inside the HCS12/README.md.
| Project Order | Name |
|---|---|
| 1 | Multiplication |
| 2 | LED_BAR |
| 3 | Keypad_Controlling_Diode |
| 4 | Buzzer |
| 5 | LCD |
➡️ Full details: HCS12/README.md
These projects follow a progression from basic sensor feedback to autonomous behavior.
| Project Order | Name |
|---|---|
| 1 | Battery & Bumper Display |
| 2 | Motor Control |
| 3 | Timer Overflow |
| 4 | Timer Alarms |
| 5 | Robot Roaming |
➡️ Full details: EEBOT/README.md
This repository highlights:
- I/O configuration
- Timing control
- Bit-level logic
- Analog sensing
- Hardware protocols
- State-driven robotic behavior
All original projects were built in CodeWarrior, and every file is also stored in code.txt so it can be used in another editor.
Demo videos for the EEBOT portion are linked in the EEBOT's README.md.