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

Digital Signal Processing 4: Applications (Coursera) Coursera
École Polytechnique Fédérale de Lausanne

Digital Signal Processing 4: Applications (Coursera)

Digital Signal Processing is the branch of engineering that, in the space of just a few decades, has enabled unprecedented levels of interpersonal communication and of on-demand entertainment. By reworking the principles of electronics, telecommunication and computer science into a unifying paradigm, DSP is a the heart of the digital revolution that brought us CDs, DVDs, MP3 players, mobile phones and countless other devices.

Oct 12th 2026
3 Weeks
Build Your First Android App (Project-Centered Course) (Coursera) Coursera
CentraleSupélec

Build Your First Android App (Project-Centered Course) (Coursera)

In this project-centered course, you’ll design, build, and distribute your own unique application for the Android mobile platform. We’ll provide you with a set of customizable building blocks that you can assemble to create many different types of apps, and that will help you become familiar with many important specificities of Android development. When you complete the project, in addition to having a personalized app that you can use and share, you’ll have the skills and background you need to move on to more advanced coursework in Android development.

Oct 12th 2026
4 Weeks
Build Your First Internet of Things (IoT) Application on Arm (edX) EdX
Arm Education,ArmEducationX

Build Your First Internet of Things (IoT) Application on Arm (edX)

Learn to build functional IoT solutions such as an environmental sensor and an activity monitor that you can feature in your CV or portfolio of work - showcasing your skills to peers, professors or prospective employers. Arm technology powered the smartphone revolution, and now it’s helping power the Internet of Things (IoT). This online course will provide beginners with an accelerated path to gain the knowledge necessary to thrive in a world transformed by innovations in IoT.

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
System Validation: Automata and behavioural equivalences (Coursera) Coursera
EIT Digital

System Validation: Automata and behavioural equivalences (Coursera)

Have you ever experienced software systems failing? Websites crash, calendar not synchronising, or even a power blackout. Of course you have! But did you know that many of these errors are the result of communication errors either within a system or between systems? Depending on the system, the impact of software failures can be huge, even resulting in massive economic damage or loss of lives. Software, and in particular the communication between software-intensive systems, is very complex and very difficult to get right. However, we _need_ dependability in the systems we use, directly or indirectly, to support us in our everyday lives.

Oct 19th 2026
3 Weeks
Architecting Smart IoT Devices (Coursera) Coursera
EIT Digital

Architecting Smart IoT Devices (Coursera)

This course will teach you how to develop an embedded systems device. In order to reduce the time to market, many pre-made hardware and software components are available today. You'll discover all the available hardware and software components, such as processor families, operating systems, boards and networks. You'll also learn how to actually use and integrate these components.

Oct 19th 2026
5-12 Weeks
RISC-V Toolchain and Compiler Optimization Techniques (edX) EdX
Linux Foundation,LinuxFoundationX

RISC-V Toolchain and Compiler Optimization Techniques (edX)

Develop a working knowledge of the internals of compiler toolchains and compiler optimization techniques with a focus on RISC-V applications. As RISC-V has made it easier to bring up processor chipsets, the need for compiler engineers in the RISC-V ecosystem has increased. There is an implicit need for toolchain experts who can help RISC-V vendors gain an edge over competitors with their expertise in compilation technologies. Learning about internals of the toolchain, building and debugging RISC-V applications will allow you to work with thousands of companies that are building the latest hardware technologies.

Self Paced
Self-Paced
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 Software and Hardware Architecture (Coursera) Coursera
University of Colorado Boulder

Embedded Software and Hardware Architecture (Coursera)

Embedded Software and Hardware Architecture is a first dive into understanding embedded architectures and writing software to manipulate this hardware. You will gain experience writing low-level firmware to directly interface hardware with highly efficient, readable and portable design practices. We will now transition from the Host Linux Machine where we built and ran code in a simulated environment to an Integrated Development Environment where you will build and install code directly on your ARM Cortex-M4 Microcontroller.

Oct 5th 2026
3 Weeks
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
Real-Time Embedded Systems Concepts and Practices (Coursera) Coursera
University of Colorado Boulder

Real-Time Embedded Systems Concepts and Practices (Coursera)

This course can also be taken for academic credit as ECEA 5315, part of CU Boulder’s Master of Science in Electrical Engineering degree. Course Description: In this course, students will design and build a microprocessor-based embedded system application using a real-time operating system or RT POSIX extensions with Embedded Linux. The course focus is on the process as well as fundamentals of integrating microprocessor-based embedded system elements for digital command and control of typical embedded hardware systems.

Oct 12th 2026
4 Weeks