Each of the following links is a 3 to 13 minute videos to accompany my newest book.

 

Introduction to Embedded Systems: Interfacing to the Freescale 9S12
Cengage 2009, ISBN-10: 049541137X   ISBN-13: 9780495411376
Jonathan W. Valvano valvano@mail.utexas.edu
University of Texas at Austin
512-471-5141
http://users.ece.utexas.edu/~valvano/
Metrowerks Lessons

 

Example 1.1. Using a flowchart describe the control algorithm   http://www.youtube.com/watch?v=wb46UVX9t1E

Example 1.2. Design a flowchart to illustrate the process of reading a book  http://www.youtube.com/watch?v=yUgX9-cRwAI

Example 1.3. Design a flowchart for a system that performs two independent tasks  http://www.youtube.com/watch?v=WCvwvTOM-9Y

Example 2.1. DDRT and PTT  http://www.youtube.com/watch?v=m6JZj4dmuF0

Example 2.2. Three LEDs   http://www.youtube.com/watch?v=IMPikjNAoZM

Example 3.1. Write software to set bit 4 and clear bits 1 and 0 of an 8-bit variable N   http://www.youtube.com/watch?v=KrSLarRPvoo

Example 3.2. Write software that sets a global variable to true if a switch is pressed   http://www.youtube.com/watch?v=Rb46xD1BSss

Example 3.3. Write software that make PT4 PT5 outputs and clears both outputs without affecting the other bits of PTT  http://www.youtube.com/watch?v=mnUeZe-8C54

Example 3.4. Write software that toggles a PT3 output without affecting the other bits of PTT  http://www.youtube.com/watch?v=l6r6ewX2syc

Example 3.5. Generate two out of phase squarewaves http://www.youtube.com/watch?v=tl_-7w12VtI

Example 3.6. The goal is develop a means for the microcontroller to turn on and turn off an AC-powered appliance. The interface will use a solid state relay with a control parameters of 2V and 10 mA.  Write necessary subroutines to operate the system. http://www.youtube.com/watch?v=i0yBXwGdPKE

Example 3.7. Write assembly code to implement M=N>>2, where M and N are 16-bit unsigned variables http://www.youtube.com/watch?v=DTToGUfU4Tg

Example 3.8. Take two 4-bit nibbles and combine them into one 8-bit value http://www.youtube.com/watch?v=LcdtrXEwxYs

Example 3.9. Write assembly code to implement M=N+10, where M and N are 8-bit variables http://www.youtube.com/watch?v=N81IHiBFZmA

Example 3.10. Write assembly code to implement M=N+1000, where M and N are 16-bit variables http://www.youtube.com/watch?v=Fa0H7V_9Td0

Example 3.11. Write assembly code to implement M=N-10, where M and N are 8-bit variables http://www.youtube.com/watch?v=tbhO6tUMNSs

Example 3.12. Write assembly code to implement M=N-1000, where M and N are 16-bit variables http://www.youtube.com/watch?v=LhnIsjmDzwU

Example 3.13. Write assembly code to implement unsigned M=5*N+25, where M is 16 bits and N is 8 bits http://www.youtube.com/watch?v=LyYs8YCyxi8

Example 3.14. Write assembly code to implement M=2.3*(N+5.5), where M is 16 bits and N is 8 bits  http://www.youtube.com/watch?v=DdL84BwkCI0

Example 3.15. Write assembly code to scale an unsigned 8-bit integer into a number from 0 to 500  http://www.youtube.com/watch?v=609-FtELAY0

Example 3.16. Write assembly code to implement M=12.34*N, where M and N are unsigned 16 bits  http://www.youtube.com/watch?v=7D_rYPEjfLM

Example 4.1. Design an I/O driver for a single output pin

Example 4.2. Design a system with four outputs, making them 5, 6, 10, 9 over and over separated by 5 ms

Example 5.1. Assuming G1 is 8-bit unsigned, write software that sets G2=1 if G1 is greater than 100
Example 5.2. Assuming G1 is 8-bit signed, write software that sets G2=1 if G1 is greater than 100

Example 5.3. Redesign the I/O driver for a single output pin, originally solved in Example 4.1

Example 5.4a. You are given a subroutine, OutChar, that outputs one ASCII character. Design a function that outputs a 16-bit unsigned integer

Example 5.4b. You are given a subroutine, OutChar, that outputs one ASCII character. Design a function that outputs a 16-bit unsigned integer

Example 6.1. Write a software module to control the read/write (R/W) head of an audio tape recorder. The stepper motor causes the R/W head to move up and down. This motion affects which audio track on the tape is under the head. The goal is to be able to move the motor one step at a time

Example 6.2. Design an exponential function, y = 10^x, with a 16-bit output

Example 6.3. Write software to output a sequence of values to a digital to analog converter

Example 6.4. Write software to output an ASCII string to the serial port

Example 6.5. Develop a set of driver functions to manipulate a 32 by 12 bit graphics display

Example 6.xx. Develop a set of driver functions to manipulate a 32 by 12 bit graphics display

I also made some instructional movies showing how to use TExaS at http://users.ece.utexas.edu/~valvano/Readme.htm

 

Lessons for Metrowerks CodeWarrior for the 9S12

Lesson 1 How to create a new project

Lesson 2 Introduction to debugging

Lesson 3 Mixing assembly language and C code

Lesson 4 Passing parameters between assembly language and C

Lesson 5 Simulating Metrowerks Projects in TExaS

Lesson 6 Importing TExaS code into a Metrowerks Project

Home page

These videos were created with Camtasia Studio 6, PowerPoint, Freescale Metrowerks CodeWarrior, TExaS, and Macromedia Freehand Mx.