
A general introduction to embedded systems. We will have a look at what is a microcontroller and a microprocessor. The section will end with alternative platforms to Arduino and on how to select a microcontroller.
Identify a microcontroller as a compact unit combining CPU, memory, peripherals, and a system clock for specific control tasks, such as LED control, motor speed, or temperature display.
Select a microcontroller by weighing dip vs smt packages, memory needs (program, data, ram, rom), and peripherals including i/o pins, adc, dac, ethernet, can, usb, timers, pwm, spi, and i2c.
Explore the open source Arduino platform for rapid prototyping, learn about diverse boards from Arduino Uno to Arduino Due, and understand shields that add Ethernet, Wi-Fi, sensors, and peripherals.
Assemble essential hardware for course: a computer with Arduino IDE on Windows, Mac, or Linux, an Arduino Uno R3, USB A to B cable, breadboard, LEDs, resistors, switches, and wires.
Connect the Arduino board via USB, verify its detection in the device manager and Arduino IDE, and learn about Arduino Uno and genuino boards, boot loader, and IDE installation.
Explore the Arduino IDE layout, how to upload programs to an Arduino UNO, and the program structure with basic Arduino functions and LED connections on a breadboard.
Explore Arduino sketches saved as .ino files and structured around setup and loop. Implement setup to run once after reset and loop to execute repeatedly, with comments and port detection.
Blink an LED on an Arduino Uno using pin 6, pinMode, digitalWrite HIGH/LOW, and delay in milliseconds, and compare setup versus loop for controlling blink rate.
Explore how pulse width modulation lets an Arduino Uno vary LED brightness and motor speed without a DAC, using 8-bit duty cycles (0–255) on PWM pins via analogWrite.
Control the led brightness with pwm using analogWrite from 0 to 255, fading in and out on an Arduino Uno pin 5.
Learn to read digital input on the Arduino Uno using switches and the digitalRead function. Explore pull-up and pull-down resistors that define HIGH or LOW and prevent floating inputs.
Wire a pull-up switch to 5V with a pull-up resistor, connect an LED to pin 4, and read the switch on pin 10 in Arduino to light LED when pressed.
Explore serial communication basics for microcontrollers, including UART protocols, baud rate, TX/RX wiring, and using Arduino serial functions (begin, print, println) to send data to a serial monitor.
Understand how analog signals are converted to digital with the ATmega328’s 10-bit ADC mapping 0–5 V to 0–1023, read via analogRead and via potentiometers and voltage dividers.
Read a potentiometer's voltage with an Arduino by wiring 5V, GND, and analog input, then read, map 0-1023 to 0-5, and display values on the serial monitor.
Demonstrates a three-led temperature indicator using an LM35 sensor on analog pin A4, with red, yellow, and green LEDs on pins 11, 10, and 9 to show thresholds.
Explore analog signals, use Arduino analogRead to read potentiometer voltage, connect an LDR to control a LED, and read LM35 temperature while varying temperature with a soldering iron.
Are you looking for a start into the world of embedded systems? Do you want to work with both hardware and software, to get an understanding into world of embedded control? If yes, then let us get started with the course which introduces embedded systems in a step by step manner. The course is aimed at guiding the learner to level of proficiency where the person can go into more advanced topics on their own.
The topics covered in the course are
Introduction to Arduino Uno
Digital Output
Analog Output
Digital Input
Analog Input
Serial Communication