EdX

Microcontroller Applications with RISC-V (edX)

Microcontroller Applications with RISC-V (edX)

Create simple embedded applications with a RISC-V microcontroller using a user-friendly integrated development environment (IDE). This course provides some basic experience in designing and developing deeply embedded bare metal applications using a microcontroller with a RISC-V core. The course is the first step to creating embedded systems using a host of new microcontrollers that use an open instruction set architecture (ISA) as an alternative to a proprietary option.

Class Deals by MOOC List - Click here and see EdX's Active Discounts, Deals, and Promo Codes.

LFD115x is geared towards hobbyists who want to implement their ideas on a professional board, engineering students who want to create professional applications with a RISC-V microcontroller, and makers who have created custom applications in a development board like the Arduino Uno, and want to take this expertise to the next level.
This course will enable you to get started with microcontroller-based embedded systems and acquainted with embedded RISC-V compiler toolchains. Upon completing this course, you will be familiar with creating embedded systems powered by a RISC-V core and begin your career as an Embedded Systems Engineer.

What you'll learn
By the end of this course, you should be able to:

  • Design an embedded system of your own.
  • Take the right steps to implement an embedded system you have in mind.
  • Use SiFive Freedom Studio to create embedded systems with a RISC-V CPU.
  • Use a RISC-V microcontroller, including its internal operational modules.

Syllabus

Welcome!
Chapter 1. The Development Platform
Chapter 2. The Microcontroller and Its Library
Chapter 3. General Purpose Input Output
Chapter 4. Pulse Width Modulation
Chapter 5. Interrupt-Driven Applications
Chapter 6. Serial Communication
Final Exam (Verified Certificate track only)

Prerequisites:
We presume the student will have some experience with the C programming language and basic experience with schematic diagrams. It would be beneficial to have some prior knowledge of electronics concepts like logic levels, voltages, gates, periodic signals, etc. Experience with any assembly language would be beneficial as well.
The technology needed is a personal computer with Linux, macOS, or Windows, compliant with the requirements of SiFive Freedom Studio. Optional: If you’d like to follow along with the hands-on examples shown in the course, you’ll need a RED-V Thing Plus microcontroller board by SparkFun and a free USB port.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Real-Time Embedded Systems Theory and Analysis (Coursera) Coursera
University of Colorado Boulder

Real-Time Embedded Systems Theory and Analysis (Coursera)

This course provides an in-depth and full mathematical derivation and review of models for scheduling policies and feasibility determination by hand and with rate monotonic tools along with comparison to actual performance for real-time scheduled threads running on a native Linux system.

Oct 12th 2026
4 Weeks
Building a RISC-V CPU Core (edX) EdX
Linux Foundation,LinuxFoundationX

Building a RISC-V CPU Core (edX)

Create a RISC-V CPU with modern open source circuit design tools, methodologies, and microarchitecture, all from your browser. Building a RISC-V CPU Core is designed for anyone with a technical inclination who is interested in learning more about hardware. Whether you are new to digital logic or are a seasoned veteran, students will take away new skills that can be applied immediately. No prior knowledge of digital logic design is required.

Self Paced
Self-Paced
Introduction to the Internet of Things and Embedded Systems (Coursera) Coursera
University of California, Irvine

Introduction to the Internet of Things and Embedded Systems (Coursera)

The explosive growth of the “Internet of Things” is changing our world and the rapid drop in price for typical IoT components is allowing people to innovate new designs and products at home. In this first class in the specialization you will learn the importance of IoT in society, the current components of typical IoT devices and trends for the future. IoT design considerations, constraints and interfacing between the physical world and your device will also be covered. You will also learn how to make design trade-offs between hardware and software. We'll also cover key components of networking to ensure that students understand how to connect their device to the Internet.

Oct 12th 2026
4 Weeks
Fundamentals of TinyML (edX) EdX
HarvardX,Harvard University

Fundamentals of TinyML (edX)

Focusing on the basics of machine learning and embedded systems, such as smartphones, this course will introduce you to the “language” of TinyML. What do you know about TinyML? Tiny Machine Learning (TinyML) is one of the fastest-growing areas of Deep Learning and is rapidly becoming more accessible. This course provides a foundation for you to understand this emerging field.

Self Paced
Self-Paced
Introduction to Embedded Machine Learning (Coursera) Coursera
Edge Impulse

Introduction to Embedded Machine Learning (Coursera)

Machine learning allows us to teach computers to make predictions and decisions based on data and learn from experiences. In recent years, incredible optimizations have been made to machine learning algorithms, software frameworks, and embedded hardware. Thanks to this, running deep neural networks and other complex machine learning algorithms is possible on low-power devices like microcontrollers. This course will give you a broad overview of how machine learning works, how to train neural networks, and how to deploy those networks to microcontrollers.

Oct 11th 2026
3 Weeks
M2M & IoT Interface Design & Protocols for Embedded Systems (Coursera) Coursera
University of Colorado Boulder

M2M & IoT Interface Design & Protocols for Embedded Systems (Coursera)

This course can also be taken for academic credit as ECEA 5348, part of CU Boulder’s Master of Science in Electrical Engineering degree. M2M and IoT Interface Design and Protocols is the third of three classes in the Embedded Interface Design (EID) specialization, an online version of the on-campus EID class taught in graduate embedded systems design. This course is focused on connecting devices to each other and to the cloud to create prototypes and actual systems that flow data from devices to consumers. The class includes an introduction to M2M (Machine-to-Machine) and IoT (Internet of Things) concepts, using the cloud to develop IoT systems (specifically AWS (Amazon Web Services) and its IoT framework), a review of common communications protocols at every level of connected devices, and other IoT design concerns such as security, message queuing approaches, and the use and design of APIs and microservices .

Oct 12th 2026
4 Weeks
Working with Integrated Development Environments (Coursera) Coursera
University of Leeds

Working with Integrated Development Environments (Coursera)

Integrated Development Environments (IDEs) are vital in increasing developer productivity and learning to work with them will help you create impressive software projects whether you're a beginner or have some programming experience. This course provides the essential skills and knowledge to excel in software development using Integrated Development Environments (IDEs). You'll cover IDE fundamentals, including environment setup, interface navigation, and valuable features like debugging.

Oct 19th 2026
2 Weeks
Capstone: Autonomous Runway Detection for IoT (Coursera) Coursera
EIT Digital

Capstone: Autonomous Runway Detection for IoT (Coursera)

The students will develop a larger system using the learning outcomes from these courses, and the students will evaluate the developed system in a real-world programming environment. This course is a true engineering task in which the student must, not only implement the algorithm code, but also handle the interfaces between many different actors and hardware platforms.

Oct 5th 2026
3 Weeks
Embedded Hardware and Operating Systems (Coursera) Coursera
EIT Digital

Embedded Hardware and Operating Systems (Coursera)

This course is intended for the Bachelor and Master's students, who like practical programming and making IoTs applications! In this course we will talk about two components of a cyber physical system, namely hardware and operating systems. After completing this course, you will have the knowledge of both hardware components and operating systems. You are able to plan and use embedded operating systems in resource-constraint devices for Internet-of-Things (cyber physical system) applications.

Oct 19th 2026
4 Weeks
Adding Electronics to Rapid Prototypes (Coursera) Coursera
Arizona State University

Adding Electronics to Rapid Prototypes (Coursera)

Hello, everyone! Welcome to this course on Adding Electronics to Rapid Prototypes. This is part of the Rapid Prototyping and Tooling specialization. In this course, I’ll cover the basics of electric circuits, breadboards, and multimeters. I’ll then discuss different options for connecting electrical components as well as discuss different types of motors and actuators. Finally, I’ll end this course by discussing microcontrollers and how to use them to make even more sophisticated prototypes.

Oct 12th 2026
5-12 Weeks