Embedded System Design


NUCLEO-F446RE Using C/C++

  1. Development Software / Program Code:
    Download the STM32CubeIDE to get the development tools for the STM32 microcontroller. Refer to STM32 Wiki page to get the steps and process involved in the software installations.
  2. NUCLEO-F446RE Board:
    The board and its general information can be obtained in the STMicroelectronics page. The board specification helps in determining whether it suits the embedded system requirement or not.
  3. Online Simulator:
    One of the convenient online simulator to test out the preliminary circuit design and its coding is Wokwi. Sample circuits are available on the page to learn on the go.
  4. Sample Circuit, Simulation and Prototype:
    (a) Digital Input / Output Using Two Pushbuttons and 7-segment Display: Online Simulation, Debug Environment in STM32CubeIDE, Prototype Demonstration
    (b) Analog Interfacing Using Light Dependent Resistor (LDR) and LED: Online Simulation, Debug Environment in STM32CubeIDE, Prototype Demonstration
    (c) Ultrasonic Sensor and Stepper Motor Control: Online Simulation, Debug Environment in STM32CubeIDE, Prototype Demonstration

mbed LPC1768 Using Assembly Language

  1. Development Software / Program Code:
    Download the Keil MDK to get the development tools for the mbed LPC1768 microcontroller. The source file for the board can be written in C as well, but the guide in this page is more on the Assembly Language programming.
  2. Assembly Language Instruction Set:
    The processor in LPC1768 is ARM Cortex-M3, hence the assembly language instruction set can be referred to the official ARM webpage.
  3. mbed LPC1768 microcontroller board:
    The board and its schematic diagram can be obtained in the NXP page. The pinouts and board specification helps in determining whether the board suits the embedded system requirement or not.
  4. Light-Weight Simulator for Programming Practice:
    One of the convenient simulator to test out the preliminary assembly language code is VisUAL2. There are some limitations to it which had been detail out in its documentation but overall it is a good starting platform for programming practice.
  5. Sample Project and Simulation using Keil µVision
    (a) Digital Input / Output
    (b) Analog Interfacing

Arduino Using C/C++

  1. Development Software / Program Code:
    Download the Arduino IDE to get the development tools for the Arduino boards. Refer to Arduino documentation page to explore more on Arduino boards features.
  2. Arduino Board:
    The board and its schematic diagram can be obtained in its documentation page. The pinouts and board specification helps in determining whether the board suits the embedded system requirement or not.
  3. Online Simulator:
    One of the convenient online simulator to test out the preliminary circuit design and its coding is Wokwi. Sample circuits are available on the page to learn on the go.
  4. Sample Project and Simulation:
    (a) Digital Input / Output: Online Simulation
    (b) Analog Interfacing Using Light Dependent Resistor (LDR) module and LEDs: Online Simulation
  5. Prototype Demonstration

Last Updated: January 12, 2026