|
|
||||||||
|
|
|||||||
| Lecture # |
Notes Topic
|
Key Concepts
|
Reading & Resources
|
| 8/24/09 |
Syllabus |
Overview, class policies, basic hardware design | Beware of Programmers Carrying Screwdrivers, Jack Ganssle The Two Percent Solution, Jim Turley The Death of ASICs Jim Turley |
| 8/26/09 |
Notes 1-13 to 1-29 (2-1 to 2-15) |
ISA, register set, addressing modes, operations | MDS pp. 1-26, 170-180 MSM pp. 1-32 |
| 8/31/09 |
Notes 2-15 to 2-28 |
Variables (local, global), memory sections, control structures, call stacks | P&P Ch. 11, 12, 13 MCPM Ch. 1, 2.1
|
| 9/2/09 |
Notes 3-13 to 3-29 |
Functions, arguments, return values, arrays | P&P Ch. 14, 16 |
| 9/9/09 |
Notes 4-5 to 4-35 Renesas Tools example Plus these |
Renesas Quick Start Guide | |
| 9/14/09 |
Pointers, strings, formatted output | P&P Ch. 18, 19 | |
| 9/16/09 |
(6-1 to 6-16) |
Dynamic memory management and linked lists
|
|
| 9/21/09 |
Plus these |
Writing algorithms and code and tests | Ten essential elements to guarantee enhanced software quality, Deepti Sharma |
| 9/30/09 |
Start-up module, configuring digital I/O ports, reading and writing them, accessing unions, structures and bitfields in C | - MCPM Ch. 2 |
|
| 9/28/09 |
Analog to digital conversion | - MDS pp. 187-202 |
|
| 10/5/09 |
Notes 8-16 to 8-34 Plus these |
Analog to digital conversion | |
| 10/7/09 |
Interrupt concepts and behavior and how to program with them in C | - Introduction to Interrupts, Russell Massey |
|
| 10/19/09 Guest Lecture |
Notes 10-11 to 10-27 Plus these |
Interrupt concepts and behavior and how to program with them in C | |
| 10/21/09 |
|
Serial communications basics, polled serial communication | - RS232: Fulfilling All Your Communication Needs, Robert Ashby |
| 10/26/09 |
Notes 11-15 to 11-25 |
Serial ISRs, synchronization between ISR and main program | Volatile, Nigel Jones serial_int_demo.c |
| 10/28/09 |
Notes 12-5 to 12-6 Plus these |
Serial ISRs, synchronization between ISR and main program | |
| 11/2/09 |
Notes 12-6 to 12-16 Plus these |
Serial ISRs, synchronization between ISR and main program | |
| 11/4/09 |
Examine timers, event counters, PWM, and cascading in the M30262 | Pulse-Width Modulation, Michael Barr Introduction to Counter/Timers, Stuart Ball and Michael Barr SKP timer demo code |
|
| 11/9/09 |
Notes 13-18 to 13-28 Plus these |
||
| 11/11/09 |
Aspects of software testability, test case design (white-box and black-box) | - Studs and Duds, Eric Umansky | |
| Debugging approaches, visibility into embedded systems, getting debug information out, debug tools and features | - P&P Ch. 15 - Twiddle Bits, Michael Gauland, pp. 50-62 |
||
| 11/16/09 |
(16-1 to 16-18) Plus these |
General discussion of schedulers and operating systems | |
| 11/18/09 |
Round-robin non-preemptive scheduler | - Reentrancy, Jack Ganssle see skp26.c and skp26.h |
|
| 11/23/09 |
State machines, Thread Control Blocks | Context Switch, David Kalinsky | |
| 11/30/09 |
Notes 18-9 to 18-30 Plus these |
||
| 12/2/09 |
Shared data problem revisited, Synchronization primitives | ||
| 12/9/09 |
Semaphores and Monitors, NRT and RT Scheduling | ||
| 12/7/09 |
|
Watchdog timers, stack pointer monitoring and brown-out detection | Watchdog Timers, Niall Murphy & Michael Barr Born to Fail, Jack Ganssle main_wdt.c |
| Miscellaneous readings Efficient C Code for 8-Bit MCUs, Nigel Jones Fixed-Point Math in C, Joe Lemieux Keys to Writing Efficient Embedded Code, Bill Trudell |
| MDS | M16C62_Hardware_Manual_rev1.20.pdf | Renesas M30626P Data Sheet |
| MCPM | Renesas M16C/60 M16C/20 Series C Language Programming Manual | |
| MSM | Renesas M16C/60 M16C/20 Software Manual | |
| P&P | Patt and Patel Slides | Introduction to Computing Systems, Patt & Patel, 2nd Edition |