Microcontrollers and the C Programming Language (MSP430)

Create C programs for a microcontroller using inputs/outputs, timers, analog-to-digital converters, comm ports, and LCD.

4.42 (3920 reviews)
Udemy
platform
English
language
Hardware
category
instructor
Microcontrollers and the C Programming Language (MSP430)
88,071
students
32 hours
content
May 2020
last update
FREE
regular price

What you will learn

Program microcontrollers with the C programming language.

Use timer peripherals

Use communication peripherals

Use analog-to-digital converter peripherals

Use a liquid crystal display (LCD)

Use the MSP430 to develop embedded systems

Why take this course?

The course is laboratory based. Almost every lecture and section of the course leads directly to a hands-on laboratory assignment. The more practice you get using the “real world" Texas Instruments MSP430 hardware and software the more proficient you will be.

The course does not waste your time. From the very beginning, we jump right in to your first laboratory assignment – Let's Get Started.

The course is modular in nature. Are you new to the world of microcontrollers? Great! Start at the beginning, and we'll teach you everything you need to know. Do you have some background in microcontrollers but want to learn more? Fantastic! You can pick and choose the modules that you need.

The course is packed with information. From the beginnings of the C programming language to advanced microcontroller peripherals, the course teaches you all of the building blocks you would need to build your own electronic systems.

We use lots and lots of examples. We take you step-by-step through the lessons – each time providing sample code and documentation to make sure you are supported through the course.

We are here to help. We are educators with a singular focus of providing a meaningful experience for our students. And, while we cannot do the work for you, we are willing to work WITH you help you succeed.

Content

How Do I Get Started?

What Is This Course All About?
Course Introduction
What Is a Microcontroller?
What Is an Embedded System?
What Is a Program?
What Is an Integrated Development Environment?
ACTION: How Do I Get Started?
DOWNLOAD: What Do I Need For This Course?
DOWNLOAD: Let's Get Started Lab Manual
BONUS DOWNLOAD for the MSP-EXP430G2 Launchpad
Wrap Up
Getting Started

Binary Numbers and Digital Logic

ACTION: What Are Binary and Hexadecimal Numbers?
DOWNLOAD: What Are Binary Numbers?
DOWNLOAD: What Are Hexadecimal Numbers?
DOWNLOAD: What Are Bits, Nibbles, Bytes, And Words?
DOWNLOAD: How Can I Use The Programming Calculator?
ACTION: What Is Digital Logic?
DOWNLOAD: What Is The AND Operator?
DOWNLOAD: What Is The OR Operator?
DOWNLOAD: What Is The NOT Operator?
DOWNLOAD: What Is The XOR Operator?
Wrap Up
Quiz: Binary Numbers and Digital Logic

What's Inside of a Microcontroller

What Is Inside a Microcontroller?
What Is Program Memory?
What Is Data Memory?
What Is a Peripheral?
Wrap Up
Quiz: What's Inside of a Microcontroller?
BONUS: What is a CPU?

Loops in the C Programming Language

ACTION: What Is a FOR Loop?
DOWNLOAD: FOR Loops Lab Manual
What Is a Flow Chart?
DOWNLOAD: Flowchart Lab Manual
ACTION: What Is a WHILE Loop?
DOWNLOAD: WHILE Loops Lab Manual
DOWNLOAD: What Are the Different C Variable Types?
Loops Wrap up
Quiz: Loops in the C Programming Language
BONUS: What Are Nested Loops?
BONUS DOWNLOAD: Nested Loops Lab Manual
BONUS DOWNLOAD: Nested Loops Challenge
BONUS DOWNLOAD: What Are the C Shorthand Operators?
BONUS: Are FOR Loops and WHILE Loops Really the Same Thing?

Digital Inputs, the P1.1 Button, and the IF Statement

What Is a Digital Input?
ACTION: What Is the P1.1 Push Button?
DOWNLOAD: P1.1 Push Button Lab Manual
ACTION: What Is the IF Statement?
DOWNLOAD: IF Statement Lab Manual
ACTION: What Are Relational Operators?
DOWNLOAD: Relational Operators Lab Manual
ACTION: How Do I Use More Push Buttons and LEDs?
DOWNLOAD: Using External Push Buttons and LEDs Lab Manual
Digital Inputs Wrap Up
Quiz: Digital Inputs, Push Buttons, and the IF Statement
BONUS: What Are BREAK and CONTINUE?
BONUS DOWNLOAD: BREAK and CONTINUE Lab Manual

Introduction to Timer Peripherals

What Is a Timer?
What Can Timers Count?
Introduction to Timers Wrap Up
Quiz: Introduction to Timers

Introduction to the Watchdog Timer Peripheral

What Is a Watchdog Timer?
ACTION: How Do I Use the Watchdog Timer?
DOWNLOAD: Watchdog Timer Peripheral Lab Manual
Watchdog Timer Peripheral Wrap Up
Quiz: Watchdog Timer Peripheral

Introduction to the General Purpose Timer

ACTION: How Do I Use a General Purpose Timer?
DOWNLOAD: General Purpose Timer Lab Manual
DOWNLOAD: Turn On the Red LED for 20s and Then Turn It Off
DOWNLOAD: Repeatedly Turn On the LED for 3s and Then Off for 1s
Quiz: General Purpose Timers
BONUS: How Can I Pet the Watchdog with a General Purpose Timer?
BONUS DOWNLOAD: Petting the Watchdog with the General Purpose Timer

Advanced Features of General Purpose Timers

ACTION: How Do I Use Two General Purpose Timers to Count at the Same Time?
DOWNLOAD: Using Two General Purpose Timers Lab Manual
Quiz: Advanced Features of General Purpose Timers

Using Functions to Improve Your Microcontroller Program

ACTION: How Do Functions Improve Your Program?
DOWNLOAD: What Is a Function?
Quiz: Functions

Introduction to Interrupt Service Routines

ACTION: What Are Interrupt Service Routines?
DOWNLOAD: What Is an Interrupt Service Routine?
DOWNLOAD: ISR Challenge 1
DOWNLOAD: ISR Challenge 2
Quiz: Interrupt Service Routines
BONUS DOWNLOAD: How Do I Use Semi-Automatic Pulse Width Modulation (PWM) Mode?
BONUS DOWNLOAD: How Do I Use Automatic PWM Mode?
BONUS DOWNLOAD: How Do I Use One Timer to Create Multiple Frequency Outputs?

Introduction to Low Power Modes

What Is Low-Power Mode?
ACTION: How Do I Use Low-Power Mode?
DOWNLOAD: How Do I Use Low Power Mode?
DOWNLOAD: Low Power Mode Challenge
Low Power Mode Wrap Up
QUIZ: Low Power Modes

Interrupt Service Routines for Digital Inputs

ACTION: How Can I Use Interrupts with a Digital Input?
DOWNLOAD: How Do I Use Digital Input Interrupts?

Serial Communication Interfaces

What Is Serial Communication?
ACTION: What Is a UART?
DOWNLOAD: How Can I Use a UART to Talk to Another Microcontroller?
DOWNLOAD: UART Challenge 1
DOWNLOAD: UART Challenge 2
Serial Communicatin Wrap Up
Quiz: Serial Communication

Analog-to-Digital Converters

ACTION: What Is an Analog Value?
DOWNLOAD: What Is an Analog Value?
ACTION: How Do I Use an Analog-to-Digital Converter Peripheral?
DOWNLOAD: How Do I Use an Analog-to-Digital Converter Peripheral?
Analog-to-Digital Converter Wrap Up
Quiz: Analog-to-Digital Converter
BONUS: Use a SPI Port to Communicate with a Digital-to-Analog Converter (DAC)

Introduction to the Liquid Crystal Display (LCD)

ACTION: How Can I Use the LCD on the MSP430FR6989 Launchpad?
DOWNLOAD: How Do I Display a Short Word on the LCD?
DOWNLOAD: What Is ASCII and Why Is It Important?
DOWNLOAD: How Do I Display Symbols on the LCD?
DOWNLOAD: LCD Challenge 1 Flow Chart
DOWNLOAD: LCD Challenge 1
DOWNLOAD: How Do I Display Larger Numbers on the LCD?
DOWNLOAD: LCD Challenge 2
DOWNLOAD: How Do I Display Words on the LCD?
DOWNLOAD: How Do I Create a Scrolling Message on the LCD?

Final Project

ACTION: Final Project
DOWNLOAD: Memory Game

Wrap Up

Final Words and Sources of Additional Help
DOWNLOAD: Microcontroller Datasheet
DOWNLOAD: Microcontroller User's Guide
DOWNLOAD: Code Composer Studio User's Guide
DOWNLOAD: Microcontroller Launchpad User's Guide
DOWNLOAD: A Good eBook on C in Embedded Systems
TECH SUPPORT: Texas Instruments Technical Support

Screenshots

Microcontrollers and the C Programming Language (MSP430) - Screenshot_01Microcontrollers and the C Programming Language (MSP430) - Screenshot_02Microcontrollers and the C Programming Language (MSP430) - Screenshot_03Microcontrollers and the C Programming Language (MSP430) - Screenshot_04

Reviews

Francesco
February 26, 2023
il docente e Sufficientemente chiaro per permetter allo studente di poter seguire le lezioni, anche a chi non è inglese ma conosce lingua. Ad ogni modo, il docente ha un marcato accento, che tante volte rende alcuni termini non sempre comprensibili in aggiunta ad uno dialogo molto veloce, cosa che rende la comprensione, non sempre chiarissima.
Rahul
November 2, 2022
Hopefull the introduction video gives breif description about Microcontroller, I would request to add on type of Microcontrollers and their use in different fields
Anderson
October 12, 2022
Thank you for the course regarding microcontrollers. At the moment, I have any ideas about a particular final project. Instead, I decided to port your codes to MSP430 Value Line Launchpad. The board I used to follow the course: https://github.com/inaciomorais/MSP430
Victor
September 11, 2022
son videos cortos, sin baches, informacion concreta, acompañado de infografias muy claras...lamento que que no tenga cc en español..y a pesar de entender +/- ingles. lo eh llevado bastante fluido...
Tok
August 23, 2022
Bis jetzt läuft der Kurs sehr gut. Ich war lange auf der Suche nach solch einem Kurs. Der Dozent erklärt alles sehr kurz und knackig, ohne auszuschweifen. Es ist spannend ihm zuzuhören. Es kommt keine lange Weile auf, obwohl ich mich mit diesem Thematik ein wenig auskenne. Kann jeden Interessenten weiterempfehlen.
Graeme
August 11, 2022
Would have preferred more video explanations to break up the heavy reading however the content was excellent!
Robert
August 1, 2022
Instructor clearly has a lot of material to cover and has introduced topic in comprehensive and pertinent fashion by summarizing relation of program to MCU.
Ifthekhar
July 27, 2022
I was pleasantly surprised to see how detailed the course was. It is, in my opinion, the best course I have seen so far that goes very much into detail on how to use a microcontroller. The best part is that it starts from the very basic level, so a person who doesn't even have a background in this field can easily complete the course successfully.
Billy
July 25, 2022
I understand, but it feel like he is talking a little to fast. Really excited on the course and ready to learn.
Caleb
June 28, 2022
I enjoyed taking this course. I'm particularly delighted at the thought that I have materials from this course that I can look back on, as I move forward in embedded systems.
Murtala
May 22, 2022
It is superb! Overwhelming though the amount of hand-out material to read and practice, but that what make an expert (practice! practice!! practice!!!). Thanks a lot.
Nicholas
February 1, 2022
I have looked for courses on MSP430 before. This course is by far the best I have found so far. Everything that I missed on the previous course material I have used is clearly and methodically explained.
Jonathan
December 28, 2021
So far this has been a good basic introduction to the basics of micro-controllers and embedded systems, which clarify my existing knowledge.
Sushant
November 20, 2021
1. Very basic. 2. Not expected that 70 percent time is shown for pdf lectures. 3. What's the use of course then, we can learn from pdf itself.
DhanaPrasad
September 14, 2021
It is fantabulous course for electronic aspirants and resources which you gave in this course it's so useful and thank you for this wonderful course.

Charts

Price

Microcontrollers and the C Programming Language (MSP430) - Price chart

Rating

Microcontrollers and the C Programming Language (MSP430) - Ratings chart

Enrollment distribution

Microcontrollers and the C Programming Language (MSP430) - Distribution chart

Related Topics

503306
udemy ID
5/15/2015
course created date
8/20/2019
course indexed date
Bot
course submited by