Skip to content
View BavinnK's full-sized avatar
🏓
🏓
  • Kurdistan

Block or report BavinnK

Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
BavinnK/README.md

BAVIN — Embedded Systems Engineer


About Me

Computer Engineering student focused on low-level embedded systems development.

I work close to the hardware, building systems from the ground up using C and assembly, interacting directly with microcontroller registers, interrupts, and peripherals.

My focus is not frameworks or abstractions — it is understanding how systems actually behave at the hardware level.


Engineering Focus

  • Bare-metal firmware development
  • Register-level peripheral control
  • Interrupt-driven system design
  • DMA-based data handling
  • Real-time system behavior
  • Hardware/software interaction
  • Debugging using hardware tools (debugger, oscilloscope, logic analyzer)

Tech Stack

Languages

  • C (primary)
  • C++
  • Assembly (ARM / AVR / PIC)

Architectures

  • AVR (ATmega328P)
  • ARM Cortex-M (STM32F4 series)
  • PIC16F887

Protocols & Peripherals

  • UART
  • SPI
  • I2C
  • PWM
  • ADC
  • DMA
  • NVIC / Interrupt systems

Tools

  • Git / GitHub
  • STM32CubeIDE / GCC toolchain
  • MPLAB X IDE (PIC development)
  • Debugging via SWD / JTAG / ICD
  • Oscilloscope & Logic Analyzer

Assembly Knowledge

  • CPU registers and instruction execution
  • Stack operations and function call behavior
  • Interrupt entry and exit sequences
  • Memory-mapped I/O access
  • Bit-level manipulation and control
  • Understanding compiler-generated behavior

PIC16F887 Experience

  • Register-level GPIO control (TRIS, PORT, LAT)
  • Timer modules (Timer0, Timer1)
  • Interrupt handling (INTCON and peripheral interrupts)
  • ADC configuration and usage
  • Peripheral interfacing and timing control
  • Understanding of 8-bit microcontroller architecture

System-Level Understanding

  • Memory organization (Flash, SRAM, stack)
  • Interrupt vector tables and handling
  • Clock configuration and system timing
  • Peripheral register mapping
  • Boot process of microcontrollers
  • Deterministic execution in embedded systems

Roadmap

Phase 1 — AVR Bare Metal

  • GPIO, Timers, Interrupts, ADC, UART
  • Direct register programming
  • Completed multiple hardware-based projects

Phase 2 — ARM Cortex-M (STM32)

  • NVIC, DMA, peripherals at register level
  • Driver development without HAL dependency
  • FreeRTOS integration
  • Real-time system design

Phase 3 — Systems Expansion

  • Deeper RTOS concepts
  • Embedded Linux fundamentals
  • PCB design and hardware integration
  • Advanced communication protocols and system design

Goal

To become a strong embedded systems engineer capable of designing and implementing reliable, efficient, and real-time hardware-software systems from scratch.

Pinned Loading

  1. Buck-Converter-Using-555-Timer Buck-Converter-Using-555-Timer Public

    Simulation project (Proteus) demonstrating a 555 timer-based PWM controller for a buck converter topology (12V to 5V DC conversion using IRLZ44N).

  2. BJT-Master-Slave-D-flip-flop BJT-Master-Slave-D-flip-flop Public

    Circuit diagram and explanation of a master-slave D-Type Flip-Flop (DFF) built with discrete BJTs and passive components.

    1

  3. LED-J-Letter-Sequencer LED-J-Letter-Sequencer Public

    This is the LED 'J' Sequencer, a project I built for my uncle's birthday! It features 20 LEDs arranged to form the letter 'J', which light up in sequence. The "brains" are a trusty 555 timer and tw…

  4. LED-J-Letter-SequencerV2.0-PCBway LED-J-Letter-SequencerV2.0-PCBway Public

    Aspiring Full Stack Embedded Engineer with hands-on experience in automotive electronics. Passionate about turning complex schematics into high-quality, manufactured hardware. My first major projec…

    1

  5. 8X1-MUX 8X1-MUX Public

    An 8x1 multiplexer (MUX) is a digital circuit that acts as a digital switch, selecting one of its eight data inputs and routing it to a single output.

  6. Project_IgnitionV2.0 Project_IgnitionV2.0 Public

    real-time Engine Control Unit (ECU) simulator built on an STM32 and FreeRTOS to demonstrate advanced operating system concepts.

    C 3 2