Short course300 h · Online · 5 modules

Basic Microcontroller Programming Course

This course introduces you to the world of programmable hardware. You will learn the fundamentals of embedded programming and control electronic devices yourself, from setting up the development environment to implementing basic algorithms. You will work with C/C++ applied to microcontrollers and experiment with sensors, actuators and communication protocols, building up the skills you need to create your own control, measurement and automation projects.

Duration300 h
ModeOnline
Start1 December
Modules5
Program diagnosis

Prior knowledge check

These are the skills this program gives you. Tick the ones you already master and we will tell you which part of the syllabus is for you.

Your diagnosis
6of 6 to cover

You are starting from scratch in this subject. The program is designed precisely for that.

About the program

What is the Basic Microcontroller Programming Course?

This short course teaches you to program microcontrollers from the ground up. You will study what a microcontroller is and how it differs from a microprocessor or a full embedded system, its internal components and how to choose one for an application; the structure of an embedded program, variables, conditionals, loops and functions applied to hardware control; digital inputs and outputs with push buttons, switches, LEDs, relays and buzzers; analog signals, ADC conversion and PWM to control brightness, speed and position of DC motors, servos and LED strips; and serial communication with UART, I2C and SPI to connect displays, clocks, memories and sensor modules.

What sets this course apart: it is practical from the first module, following the real development cycle of writing, compiling, uploading, testing and debugging code; it connects every programming concept to a physical device you can read or drive; it shows how microcontrollers underpin automation, robotics, IoT and the embedded systems found on board modern vessels; and it ends with a project in which you design, program, test and document a complete control system, alarm or measuring device.

Program typeShort course
ModeOnline
Duration300 hours
Modules5
Start1 December

Program highlights

  • Microcontroller fundamentals: CPU, Flash, RAM, EEPROM, registers, buses and I/O ports, and how to choose a device.
  • Development tools: IDEs, compilers, programmers and development boards, with a full write-compile-upload-debug workflow.
  • Digital control: configuring pins, reading push buttons and sensors with debouncing, and driving LEDs, relays and displays.
  • Analog signals and PWM: ADC readings scaled to real units, and control of DC motors, servos, fans and LED strips.
  • Serial communication: UART, I2C and SPI to connect LCD screens, clock modules, memories and digital sensors.
  • Final project: a working control system, alarm or measuring device, tested, debugged and documented.
Syllabus

Syllabus of the Basic Microcontroller Programming Course

5 modules. Select a module to see its content.

Module 1

Microcontroller fundamentals, embedded electronics and the basic architecture of programmable systems

  • 1.1. What a microcontroller is and how it differs from microprocessors, development boards and complete embedded systems
  • 1.2. Internal components: CPU, Flash memory, RAM, EEPROM, registers, buses and input and output ports
  • 1.3. Types of microcontroller and basic selection criteria by application, cost, power consumption and performance
  • 1.4. Development environments, compilers, IDEs, programmers and learning boards to start embedded projects
  • 1.5. The basic development workflow: writing code, compiling, uploading the program, testing, debugging and fixing errors
At this stage
60 hestimated workload
5 wkweeks at your pace
Module 2

Basic programming, control logic and digital inputs and outputs

  • 2.1. The basic structure of an embedded program: initial set-up, main loop, functions and comments
  • 2.2. Variables, data types, operators, conditionals, loops and functions applied to hardware control
  • 2.3. Configuring digital pins as inputs and outputs to read and switch external devices
  • 2.4. Reading push buttons, switches, digital sensors and logic signals with debouncing
  • 2.5. Driving LEDs, relays, buzzers, simple displays and other basic digital actuators
At this stage
60 hestimated workload
5 wkweeks at your pace
Module 3

Analog signals, ADC conversion, PWM and basic actuator control

  • 3.1. Fundamentals of analog signals and how they differ from digital signals in embedded systems
  • 3.2. Reading analog sensors with ADC converters and scaling the values to useful quantities
  • 3.3. Using potentiometers and temperature, light, pressure or other physical sensors as inputs
  • 3.4. Generating PWM signals to control brightness, speed, power and basic position
  • 3.5. Initial control of DC motors, servomotors, fans, LED strips and dimmable loads
At this stage
60 hestimated workload
5 wkweeks at your pace
Module 4

Basic communication, serial buses and connecting external modules

  • 4.1. Fundamentals of serial communication and the differences between UART, I2C, SPI and parallel communication
  • 4.2. Using the serial monitor for debugging, displaying data and communicating with the computer
  • 4.3. Connecting LCD screens, clock modules, memories, digital sensors and I/O expanders
  • 4.4. Communication between microcontrollers and modules using simple protocols and basic libraries
  • 4.5. Diagnosing connection, address and baud rate errors and incorrect data readings
At this stage
60 hestimated workload
5 wkweeks at your pace
Module 5

Applied basic microcontroller programming project

  • 5.1. Defining the project: a control system, sensor, simple automation, alarm, meter or interactive device
  • 5.2. Choosing the microcontroller, sensors, actuators, power supply, connections and programming environment
  • 5.3. Developing the code with input reading, logic processing, digital outputs, analog signals or PWM
  • 5.4. Integrating serial communication, a display or an external module to show data or control the system
  • 5.5. Functional testing, debugging, stability adjustments and documentation of how the system works
At this stage
60 hestimated workload
5 wkweeks at your pace
Plan your pace

Duration and format of the Basic Microcontroller Programming Course

It is 300 hours. Tell us how many you can study each week and we will tell you when you will really finish.

4 h30 h
With 12 h per week
6
months to finish
25 weeks
weeks in total

This is the pace at which most students finish. It fits well with the installment plan.

Faculty

Academic leadership and faculty

The Navalis teaching team: working professionals who teach and supervise the programs.

Dra. Marina AlcoverDr. Marina AlcoverAcademic Director and Head of Quality Assurance
Ing. Diego CifuentesEng. Diego CifuentesSenior Lecturer in Naval Welding and Non-Destructive Testing; Head of QA/QC for Welded Joints
Cap. Javier Abaroa (MCA)Capt. Javier Abaroa (MCA)Senior Lecturer in Ship Handling, Electronic Navigation (ECDIS/Radar/ARPA) and GMDSS; STCW Compliance and Bridge Resource Management Coordinator
Dr. Pau FerrerDr. Pau FerrerSenior Lecturer in Naval Architecture and Simulation; Director of the Hydrodynamics and CFD Laboratory
Dra. Nuria LlobregatDr. Nuria LlobregatSenior Lecturer in Marine Meteorology, SAR and Operational Safety; Navigation Risk Management Coordinator
Ing. Javier BañulsEng. Javier BañulsSenior Lecturer in Electrical Engineering, Automation and ETO Engineering; Electronic Integration and Engine Alarms Coordinator
Ing. Sofía MarquinaEng. Sofía MarquinaSenior Lecturer in Materials, Composites and Corrosion Protection; Coordinator of the Advanced Paints and Coatings Line
Ing. Tomás RieraEng. Tomás RieraSenior Lecturer in Propulsion, Alternative Energy and Hybrid Systems; Energy Performance and Vibration Coordinator
Objectives

Objectives of the Basic Microcontroller Programming Course

01Understand the fundamental architecture of a microcontroller, identifying the key components (CPU, memory and peripherals) and how they interact, in order to design and implement embedded systems sensibly.
02Configure and use basic peripherals such as digital pins, ADC converters, PWM outputs and serial ports to read sensors and drive actuators reliably.
03Implement simple control algorithms that read inputs, take decisions and act on outputs, such as switching a relay, regulating a motor or triggering an alarm.
04Write clear, readable and maintainable embedded code, with a sound structure, meaningful names, functions and comments that make it easy to review and extend.
05Debug and solve common problems in firmware development, using the serial monitor, debugging tools and a structured, root-cause approach to find and correct errors.
06Adapt and optimize code to run efficiently on a microcontroller, keeping memory use and processing time under control through suitable data types, simple algorithms and good use of timing.
Careers

Career opportunities after the Basic Microcontroller Programming Course

01Industrial automation techniciandeveloping and maintaining automated systems based on microcontrollers.
02Embedded device developercreating software and hardware for electronic devices such as smart appliances or wearables.
03Electronic repair and maintenance techniciandiagnosing and repairing equipment that incorporates microcontrollers.
04Control systems programmerdesigning and implementing control for machinery, robotics and other processes.
05Electronic prototyping and home or on-board automation technicianbuilding quick prototypes and setting up automation systems based on microcontrollers.
06Technology entrepreneur or trainerdeveloping microcontroller-based products, or teaching workshops on embedded programming.
Frequently asked questions

Questions about the Basic Microcontroller Programming Course

A microcontroller is an integrated circuit that combines a processor core, memory and programmable input and output peripherals on a single chip. It is the small computer inside countless devices, from appliances to the control and alarm systems on board a vessel.

A local variable is declared inside a function and can only be used within it, while a global variable is declared outside any function and can be accessed from anywhere in the program. The course explains when to use each and why limiting global variables keeps embedded code safer.

C, with elements of C++, which is the standard language for microcontrollers. You apply it from the start to real tasks such as reading inputs, driving outputs and communicating with modules.

It helps but is not essential. The second module covers variables, data types, conditionals, loops and functions directly applied to hardware control, so you can follow the course with basic electronics knowledge.

A computer is enough to install the development and simulation software. A low-cost development board with a few sensors, LEDs and a small motor is recommended so you can test your code on real hardware.

You define, program, test and document a complete system, such as a control system, an alarm, a meter or an interactive device, combining digital inputs and outputs, analog readings or PWM and serial communication with a display or module.

Fully online, through a virtual campus available 24/7, with recorded classes, discussion forums and practical exercises to consolidate your skills.

The course comprises 300 hours of study across 5 modules of about 60 hours each and ends with a final project. You can progress at your own pace within the schedule set when you enroll.

Online admission

Admission process

No waiting for a call back. If your documents are in order, you can enroll in the same session.

Entry requirements
  • Profile: aimed at students of electronics, mechatronics or computing, hobbyists and makers, industry professionals who need to understand or integrate embedded systems, and teachers and trainers; basic knowledge of electronics or electricity, or experience in a related technical field, is recommended, and familiarity with programming concepts (variables, loops, conditionals) is helpful but not essential.
  • Language: sufficient command of English to follow the classes and the technical documentation.
  • Technical resources: a computer running Windows, macOS or Linux on which you can install the programming and simulation software, and a fast internet connection; a low-cost development board and a basic component kit are useful for the practical exercises.
  • Admission: online application, review of your profile and a short interview with the academic team.
  1. 01
    Application
    Your details, background and documents.
  2. 02
    Instant review
    We check that everything is complete and in order.
  3. 03
    Enrollment
    Choose full payment or instalments and reserve your place.
Start my applicationFrom $176 deposit

Admission is provisional until the committee validates the documents provided. If you do not meet the requirements, the full amount is refunded.

Any questions?

Ask us before you enroll

Leave your details and admissions will write to you to answer any questions. If you are already sure, you can apply and pay in the same session.

Enroll now

Consent
Scroll to Top