Sharing Is Caring:

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.
  • Free tutorial
  • Rating: 4.4 out of 54.4 (3,936 ratings)
  • 88,579 students
  • 1hr 45min of on-demand video
  • Created by Mark M. BudnikMark Budnik
  • English

What you’ll 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


  • Information about the laboratory kit and the instructions for downloading the software will be provided in Section 1.


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.

Read Also -->   Natural Language Processing (NLP) for Beginners Using NLTK

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.

Who this course is for:

  • This course is meant for individuals who are not familiar with microcontrollers, the MSP430, and/or the C programming language.
  • For more experienced individuals, the course will also expedite the learning curve for the Texas Instruments MSP430 and Code Composer Studio integrated development environment.

Show less

Course content

18 sections β€’ 115 lectures β€’ 31h 56m total lengthCollapse all sections

How Do I Get Started?11 lectures β€’ 18min

  • What Is This Course All About?02:28
  • Course Introduction04:00
  • What Is a Microcontroller?01:37
  • What Is an Embedded System?Preview01:54
  • What Is a Program?02:02
  • What Is an Integrated Development Environment?02:34
  • ACTION: How Do I Get Started?00:47
  • DOWNLOAD: What Do I Need For This Course?3 pages
  • DOWNLOAD: Let’s Get Started Lab Manual34 pages
  • BONUS DOWNLOAD for the MSP-EXP430G2 Launchpad00:47
  • Wrap Up01:21
  • Getting Started4 questions

Binary Numbers and Digital Logic11 lectures β€’ 5min

  • ACTION: What Are Binary and Hexadecimal Numbers?02:02
  • DOWNLOAD: What Are Binary Numbers?21 pages
  • DOWNLOAD: What Are Hexadecimal Numbers?7 pages
  • DOWNLOAD: What Are Bits, Nibbles, Bytes, And Words?3 pages
  • DOWNLOAD: How Can I Use The Programming Calculator?7 pages
  • ACTION: What Is Digital Logic?01:51
  • DOWNLOAD: What Is The AND Operator?18 pages
  • DOWNLOAD: What Is The OR Operator?10 pages
  • DOWNLOAD: What Is The NOT Operator?7 pages
  • DOWNLOAD: What Is The XOR Operator?8 pages
  • Wrap Up00:54
  • Quiz: Binary Numbers and Digital Logic7 questions

What’s Inside of a Microcontroller6 lectures β€’ 22min

Read Also -->   Database Design and Management

Loops in the C Programming Language13 lectures β€’ 9min

  • ACTION: What Is a FOR Loop?02:23
  • DOWNLOAD: FOR Loops Lab Manual25 pages
  • What Is a Flow Chart?00:38
  • DOWNLOAD: Flowchart Lab Manual3 pages
  • ACTION: What Is a WHILE Loop?02:39
  • DOWNLOAD: WHILE Loops Lab Manual10 pages
  • DOWNLOAD: What Are the Different C Variable Types?21 pages
  • Loops Wrap up00:56
  • Quiz: Loops in the C Programming Language5 questions
  • BONUS: What Are Nested Loops?00:43
  • BONUS DOWNLOAD: Nested Loops Lab Manual9 pages
  • BONUS DOWNLOAD: Nested Loops Challenge3 pages
  • BONUS DOWNLOAD: What Are the C Shorthand Operators?16 pages
  • BONUS: Are FOR Loops and WHILE Loops Really the Same Thing?01:13

Digital Inputs, the P1.1 Button, and the IF Statement12 lectures β€’ 8min

  • What Is a Digital Input?01:16
  • ACTION: What Is the P1.1 Push Button?01:46
  • DOWNLOAD: P1.1 Push Button Lab Manual29 pages
  • ACTION: What Is the IF Statement?01:29
  • DOWNLOAD: IF Statement Lab Manual8 pages
  • ACTION: What Are Relational Operators?01:03
  • DOWNLOAD: Relational Operators Lab Manual8 pages
  • ACTION: How Do I Use More Push Buttons and LEDs?00:33
  • DOWNLOAD: Using External Push Buttons and LEDs Lab Manual24 pages
  • Digital Inputs Wrap Up01:24
  • Quiz: Digital Inputs, Push Buttons, and the IF Statement3 questions
  • BONUS: What Are BREAK and CONTINUE?00:34
  • BONUS DOWNLOAD: BREAK and CONTINUE Lab Manual11 pages

Introduction to Timer Peripherals3 lectures β€’ 7min

  • What Is a Timer?01:38
  • What Can Timers Count?05:00
  • Introduction to Timers Wrap Up00:33
  • Quiz: Introduction to Timers2 questions

Introduction to the Watchdog Timer Peripheral4 lectures β€’ 5min

  • What Is a Watchdog Timer?02:58
  • ACTION: How Do I Use the Watchdog Timer?00:53
  • DOWNLOAD: Watchdog Timer Peripheral Lab Manual18 pages
  • Watchdog Timer Peripheral Wrap Up00:43
  • Quiz: Watchdog Timer Peripheral2 questions

Introduction to the General Purpose Timer6 lectures β€’ 2min

  • ACTION: How Do I Use a General Purpose Timer?01:21
  • DOWNLOAD: General Purpose Timer Lab Manual18 pages
  • DOWNLOAD: Turn On the Red LED for 20s and Then Turn It Off2 pages
  • DOWNLOAD: Repeatedly Turn On the LED for 3s and Then Off for 1s3 pages
  • Quiz: General Purpose Timers3 questions
  • BONUS: How Can I Pet the Watchdog with a General Purpose Timer?01:02
  • BONUS DOWNLOAD: Petting the Watchdog with the General Purpose Timer5 pages
Read Also -->   Learning Python for Beginners Step-by-Step

Advanced Features of General Purpose Timers2 lectures β€’ 1min

  • ACTION: How Do I Use Two General Purpose Timers to Count at the Same Time?01:25
  • DOWNLOAD: Using Two General Purpose Timers Lab Manual8 pages
  • Quiz: Advanced Features of General Purpose Timers2 questions

Using Functions to Improve Your Microcontroller Program2 lectures β€’ 4min

  • ACTION: How Do Functions Improve Your Program?03:44
  • DOWNLOAD: What Is a Function?48 pages
  • Quiz: Functions5 questions

Introduction to Interrupt Service Routines7 lectures β€’ 3min

  • ACTION: What Are Interrupt Service Routines?03:01
  • DOWNLOAD: What Is an Interrupt Service Routine?40 pages
  • DOWNLOAD: ISR Challenge 13 pages
  • DOWNLOAD: ISR Challenge 26 pages
  • Quiz: Interrupt Service Routines3 questions
  • BONUS DOWNLOAD: How Do I Use Semi-Automatic Pulse Width Modulation (PWM) Mode?13 pages
  • BONUS DOWNLOAD: How Do I Use Automatic PWM Mode?9 pages
  • BONUS DOWNLOAD: How Do I Use One Timer to Create Multiple Frequency Outputs?14 pages

Introduction to Low Power Modes5 lectures β€’ 5min

  • What Is Low-Power Mode?02:16
  • ACTION: How Do I Use Low-Power Mode?01:36
  • DOWNLOAD: How Do I Use Low Power Mode?11 pages
  • DOWNLOAD: Low Power Mode Challenge3 pages
  • Low Power Mode Wrap Up00:43
  • QUIZ: Low Power Modes3 questions

Interrupt Service Routines for Digital Inputs2 lectures β€’ 2min

  • ACTION: How Can I Use Interrupts with a Digital Input?02:03
  • DOWNLOAD: How Do I Use Digital Input Interrupts?20 pages

Serial Communication Interfaces6 lectures β€’ 5min

  • What Is Serial Communication?02:09
  • ACTION: What Is a UART?02:05
  • DOWNLOAD: How Can I Use a UART to Talk to Another Microcontroller?35 pages
  • DOWNLOAD: UART Challenge 13 pages
  • DOWNLOAD: UART Challenge 23 pages
  • Serial Communicatin Wrap Up00:46
  • Quiz: Serial Communication4 questions

Analog-to-Digital Converters6 lectures β€’ 7min

  • ACTION: What Is an Analog Value?03:02
  • DOWNLOAD: What Is an Analog Value?22 pages
  • ACTION: How Do I Use an Analog-to-Digital Converter Peripheral?02:41
  • DOWNLOAD: How Do I Use an Analog-to-Digital Converter Peripheral?37 pages
  • Analog-to-Digital Converter Wrap Up00:57
  • Quiz: Analog-to-Digital Converter4 questions
  • BONUS: Use a SPI Port to Communicate with a Digital-to-Analog Converter (DAC)24 pages

Introduction to the Liquid Crystal Display (LCD)10 lectures β€’ 2min

  • ACTION: How Can I Use the LCD on the MSP430FR6989 Launchpad?01:35
  • DOWNLOAD: How Do I Display a Short Word on the LCD?22 pages
  • DOWNLOAD: What Is ASCII and Why Is It Important?15 pages
  • DOWNLOAD: How Do I Display Symbols on the LCD?11 pages
  • DOWNLOAD: LCD Challenge 1 Flow Chart2 pages
  • DOWNLOAD: LCD Challenge 14 pages
  • DOWNLOAD: How Do I Display Larger Numbers on the LCD?5 pages
  • DOWNLOAD: LCD Challenge 23 pages
  • DOWNLOAD: How Do I Display Words on the LCD?10 pages
  • DOWNLOAD: How Do I Create a Scrolling Message on the LCD?13 pages

Final Project2 lectures β€’ 1min

  • ACTION: Final Project01:21
  • DOWNLOAD: Memory Game1 page

Wrap Up7 lectures β€’ 1min

  • Final Words and Sources of Additional Help01:06
  • DOWNLOAD: Microcontroller Datasheet176 pages
  • DOWNLOAD: Microcontroller User’s Guide808 pages
  • DOWNLOAD: Code Composer Studio User’s Guide75 pages
  • DOWNLOAD: Microcontroller Launchpad User’s Guide36 pages
  • DOWNLOAD: A Good eBook on C in Embedded Systems00:08
  • TECH SUPPORT: Texas Instruments Technical Support00:03

πŸ‘‡πŸ‘‡πŸ‘‡πŸ‘‡ Click Below to Enroll in Free Udemy Course πŸ‘‡πŸ‘‡πŸ‘‡πŸ‘‡

Go to Course

πŸ‘‡πŸ‘‡ See Also πŸ‘‡πŸ‘‡

Join Us Join Us Join Us
Sharing Is Caring:

Leave a Comment

Ads Blocker Image Powered by Code Help Pro

Ads Blocker Detected!!!

We have detected that you are using extensions to block ads. Please support us by disabling these ads blocker.

Powered By
100% Free SEO Tools - Tool Kits PRO