UNC- Charlotte ECGR4101/5101/6090

Embedded Systems-Fall 2004

Lecture, 10:00-10:50 PM, MWF, Kennedy 229

 Home   |   Announcements   |   Notes/Readings   |   Homework   |   Exams   |   Labs   |   ECE Dept.   |   UNCC
 

Notes

This page updated

November 29, 2004


  


 

Lectures
I use PowerPoint slides to teach this class.  I recommend you come to class with a copy of these so you spend more time understanding the material than writing notes off the board. You can download the PDF files below and print them at home or on campus.
  
Document Viewers
Portable Document Format (PDF) documents can be viewed with Adobe Acrobat Reader. Postscript (PS) documents can be viewed with AFPL Ghostscript.
 
Notes #
Topic
Key Concepts
Reading
Source Code
1

Introduction to Embedded Systems and Microcontroller-based Circuit Design

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

 
2

M16C Instruction Set Architecture

ISA, register set, addressing modes, operations

MDS pp. 1-26, 170-180

MSM pp. 1-32

 

 
3 Variables (local, global), memory sections, control structures, call stacks

P&P Ch. 11, 12, 13

MCPM Ch. 1, 2.1

 
4 Functions, arguments, return values, arrays P&P Ch. 14, 16  
5 Pointers, strings, formatted output P&P Ch. 18, 19  
6
Dynamic memory management and linked lists
   
7 Start-up module, configuring digital I/O ports, reading and writing them, accessing unions, structures and bitfields in C

- MCPM Ch. 2
- MDS pp. 43-62
- P&P 8.1 and 8.5

 
8 Analog to digital conversion Analog to Digital Converters, Stuart Ball
- ECE 200 Material on Sampling and Reconstruction
- Introduction to Sound Recording, Geoff Martin
- MDS pp. 90-98
convert_temp.c, convert_temp.h, main_convert_temp.c, lab5_ADC_example.c
9

Disciplined Software Development

Writing algorithms and code and tests    
10 Interrupt concepts and behavior and how to program with them in C

- Introduction to Interrupts, Russell Massey
- Interrupt Latency, Jack Ganssle
-MDS pp. 37-56, 73-74
- Introduction to Interrupt Debugging, Stuart Ball
- MCPM pp. 112-117

 
11

Serial Communications

Serial communications basics, polled serial communication

- RS232: Fulfilling All Your Communication Needs, Robert Ashby
- Quick Reference for RS485, RS422, RS232 and RS423
- Not so quick reference:
The RS232 Standard:
A Tutorial with Signal Names and Definitions,
Christopher E. Strangio

serial_poll_demo.c

serial_poll_includes.h

12
Serial ISRs, synchronization between ISR and main program

Volatile, Nigel Jones
Asynchronicity, Jack Ganssle
The Shared-Data Problem (4.3), David Simon (from An Embedded Software Primer, Addison Wesley)

serial_int_demo.c
13 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
14 Round-robin non-preemptive scheduler - Reentrancy, Jack Ganssle see skp26.c and skp26.h
15
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
 
16 Aspects of software testability, test case design (white-box and black-box) - Studs and Duds, Eric Umansky  
17   Context Switch, David Kalinsky  
18 Shared data problem revisited, Synchronization primitives    
19 Semaphores and Monitors, NRT and RT Scheduling    
20    

 

21 Watchdog timers, stack pointer monitoring and brown-out detection Watchdog Timers, Niall Murphy & Michael Barr

Born to Fail, Jack Ganssle

main_wdt.c
Extra Computer Architecture      
xx
Performance Evaluation
  Efficient C Code for 8-Bit MCUs, Nigel Jones
Fixed-Point Math in C, Joe Lemieux
Keys to Writing Efficient Embedded Code, Bill Trudell
 
 xx
Fixed Point and Floating Point Math
     
xx
Survey of Microcontrollers
     

References

MDS M16C_Hardware_Manual_Rev0.9.pdf Renesas M30262 Data Sheet
MCPM

M16C_C_Programming_Manual.pdf

Renesas M16C/60 M16C/20 Series C Language Programming Manual
MSM

M16C_Software_Manual.pdf

Renesas M16C/60 M16C/20 Software Manual
P&P   Introduction to Computing Systems, Patt & Patel, 2nd Edition

 

Adobe® Acrobat® Reader is free, and freely distributable, software that lets you view and print Portable Document Format (PDF) files.  (Acrobat Reader is already installed for use on Eos/Unity workstations.)
   
Ghostscript software allows you to view and print PostScriptTM (PS) documents.  (Ghostscript is already installed for use on Eos/Unity workstations.)

This material is based upon work supported by the National Science Foundation under Grant No. 0133690. Any opinions, findings and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation (NSF).

"ECE306 Home Page" was designed by Robert Morrison. 


(v5.00/Nov-25-2000)