A photo of the professor.

Dr. Linden McClure
Professor Adjunct

University of Colorado
425 UCB, ECEE 1B55
Boulder, CO 80309-0425



Google . Yahoo      
Merriam-Webster

Note: Search on this page for NEW to identify files which have been updated within the past 7-10 days.

ECEN 5613 EMBEDDED SYSTEM DESIGN

ECEN 5613 is a 3 credit hour course and is the first course in CU's Professional Certificate in Embedded Systems.
ECEN 5613 will be offered through the ECEE department during the Fall 2020 semester on Monday evenings from 6:30-9:00pm via Zoom with lab work being done in the CU Boulder Engineering Center.

Logistics Fall 2020
  • Instructor/TA Office Hours and TA E-mail Addresses: LINK
  • Fall 2020 Tentative Syllabus: PDF (~66KB)
  • Fall 2020 Frequently Asked Questions (FAQ): PDF (~64KB)
  • Semester Assignment Schedule Graphic: PDF (~86KB)
In this class, the fundamentals of embedded system hardware and firmware design will be explored, including:
  • Processor selection
  • Power delivery, decoupling
  • Clocks and resets
  • Assembly programming
  • Embedded C programming
  • Incremental development (HW, SW)
  • Test equipment / instrumentation
    (oscopes, multimeters, logic analyzers)
  • Debugging techniques
  • Data sheets
  • Bus cycles, transaction types, timing
    diagrams, timing analysis
  • Memory maps, chip select logic
  • Serial interfaces (RS-232, I2C, SPI)
  • I/O port pin driver circuits
  • In-circuit programming
  • Device drivers and firmware
  • Interrupts and ISR's
  • Memory mapped I/O
  • Data conversion (DAC's, ADC's)
  • Passive components
  • Design reviews
  • Design trade-offs
  • Entrepreneurship
Each student in the course will develop their own embedded system hardware and firmware and learn important system integration and debugging skills. This course provides students with skills and experience necessary to pursue any type of embedded systems career.

Processor Information

The focus of ECEN 5613 Embedded System design is on learning the fundamentals of hardware and firmware development, and not on learning any particular processor. Students in Embedded System Design will be using multiple processors, including the Siemens C501, Atmel AT89C51RC2, and TI MSP432 (ARM Cortex-M4F).

Students are encouraged to read the various course documents below prior to starting the class. The following documents are also available from Infineon Technologies.
  • C500 Architecture and Instruction Set: PDF (~1MB)
  • C501 Data Sheet: PDF (~320KB)
  • C501 User's Manual: PDF (~1MB)
  • C50x Documentation Errata: PDF (~6KB) . HTML (~3KB)
To supplement the Siemens documents listed above, the following Philips ( NXP ) documents may be useful. They contain the same basic information, but include additional details not found in the Siemens documents.
  • 80C51 Family/80C51 Family Architecture: PDF (~75KB)
  • 80C51 Family/80C51 8-bit Microcontroller Family Data Sheet: PDF (~246KB)
  • 80C51 Family/80C51 Family Hardware Description: PDF (~153KB)
  • 80C51 Family/80C51 Family Programmer's Guide and Instruction Set: PDF (~127KB)
During the semester, students will upgrade their processor to the Atmel AT89C51RC2. Datasheets, errata, application notes, and software tools are available at the Atmel web site. Students will also be using the TI MPSP432 (ARM Cortex-M4F) processor and development board, in parallel with the 8051 processors above. Datasheets, errata, application notes, and software tools are available at the TI web site.
  • TI MSP432P401R Launchpad: LINK
  • TI MSP432 Launchpad Overview "Meet the MSP-EXP432P401R Launchpad": LINK (~3.7MB) . Local PDF (~3.7MB)
  • TI MSP432P401R MCU: LINK
  • NEW TI MSP432 Technical Reference Manual: PDF (~6.8MB)
  • TI Code Composer Studio User's Guide: PDF (~1.7MB)
  • MSP432 C code examples are available via download from TI: ZIP (~1.2MB)
  • ARM Application Note 237 "Migrating from 8051 to Cortex Microcontrollers": PDF (~320KB)
  • ARM Developer Web Site LINK

Lab #1

  • F2020 Lab #1 Assignment: PDF (~92KB)
  • Homework Related to Lab #1
  • Course Archives - General Questions about the Course: HTML (~10KB)
  • Course Archives - General Questions about the 8051 and Emily52: HTML (~5KB)
  • Course Archives - Questions about Test Equipment (Oscilloscopes, Logic Analyzer, etc.): HTML (~6KB)
  • Course Archives - Questions about the Oscillator: HTML (~4KB)

Software Used for Lab #1 and #2:

The following documents will be useful for HW #2 and Lab #1:

  • National Semiconductor LM7800C/LM140/LM340 Voltage Regulator Data Sheet: PDF (~513KB)
  • Motorola MC7800 Voltage Regulator Data Sheet: PDF (~279KB)
  • Intel AP-125 Designing Microcontroller Systems for Electrically Noisy Environments: PDF (~454KB)
  • Intel AP-711 EMI Design Techniques for Microcontrollers in Automotive Applications: PDF (~409KB)
  • TI SCBA007A The Bypass Capacitor in High-Speed Environments: PDF (~68KB)
  • Intel AP-155 Oscillators for Microcontrollers: PDF (~979KB)
  • Microchip AN686 Understanding and Using Supervisory Circuits: PDF (~93KB)
  • Microchip MCP-101 Microcontroller Supervisory Circuit Data Sheet: PDF (~243KB)
  • Maxim MAX691 Microprocessor Supervisory Circuit Data Sheet: PDF (~627KB)
  • Maxim MAX805L Microprocessor Supervisory Circuit Data Sheet: PDF (~99KB)
  • Tektronix Primer XYZs of Oscilloscopes: PDF (~622KB)
  • Tektronix Primer ABCs of Probes: PDF (~945KB)
  • Atmel ATF16V8C SPLD Data Sheet and Software:
  • Device Programmer (Phyton ChipProg-48, Needham's EMP-20/EMP-100)
    • ATF16V8C SPLD Programming Guide for Phyton ChipProg-48: PDF (~343KB)
    • [Archive] ATF16V8C SPLD Programming Guide for NEI EMP-100: PDF (~136KB)
    • [Archive] EMP-20 Device Programmer Presentation Handouts (1-30-2005): PDF (~177KB)
Other Related Materials:
  • Vocabulary: PDF (~13KB)
  • F2020 Parts Kit Contents: PDF (~27KB)
  • Laboratory Rules for ECEN 5613: PDF (~9KB)
  • Standard Resistor and Capacitor Values: PDF (~12KB)
  • Assembly Language Programming Overview: PDF (~101KB)
  • Emily52 Overview: PDF (~107KB)
  • Code Size and Timing Determination: PDF (~8KB)
  • Voltage Regulator Presentation Handouts (1-26-2005): PDF (~52KB)
  • Intel Hex Record and Motorola S-Record Formats: PDF (~7KB)
  • ECEN 5613 PCB Layout and Partial Schematics: PDF (~456KB)
  • Schematic Best Practices: PDF (~20KB)
  • Example Perf Board Layout: PDF (~9KB)
  • Tips for Board Construction: PDF (~6KB)
  • Development Board Presentation Handouts (1-26-2005): PDF (~426KB)
  • Metcal Hand Soldering Basics: PDF (~87KB)
  • SMT Prototyping Lecture: PDF (~229KB)
  • Heat Sink Basic Overview: PDF (~150KB)
  • Jonard Industries/OK Industries Wire Wrapping Overview: PDF (~418KB)
  • Passive Components Presentation Handouts: PDF (~1.8MB)
  • Handling of Power Plastic Transitors: PDF (~114KB)
  • Secondary Reference Documents
    • Development Board Wire Wrapping ID Labels: DOC (~68KB)
      Note: You may need a recent version of Word to edit the drawings much.
    • Development Board Wire Wrapping ID Template: Visio VSD (~831KB) . PDF (~38KB). Enhanced Visio VSD (~912KB) . Enhanced PDF (~74KB)
      Note: You may need to scale the drawing when printing the file.
    • Wire Wrapping ID Template (compliments of Paul Kooros): PDF (~92KB) . PS (~5KB)
      Note: Do *NOT* use the "shrink to fit" option when printing the PDF file.
    • Chip Pinouts Quick Reference: PDF (~93KB) . DOC (~163KB)

Lab #2

The following documents will be useful for HW #3 and Lab #2:
Other Related Materials:
  • LED Driver Circuits: PDF (~72KB)
  • Understanding Timing Diagrams: PDF (~425KB)
  • AT89C51RC2 Memory Map Details: PDF (~38KB)
  • Device Programmer (Phyton ChipProg-48, Needham's EMP-20/EMP-100)
    • Programming an AT89C51RC2 using a Phyton ChipProg-48 Parallel Programmer: PDF (~128KB)
    • Programming an AT89C51RC2 using an EMP-100 Parallel Programmer: PDF (~128KB)

  • Atmel FLIP In-Circuit Programming Utility for AT89C51RC2: FLIP
    • Course Notes: Programming an AT89C51RC2 using FLIP: PDF (~128KB)

  • Terminal Emulators used in this course:

Lab #3

Software Used for Lab #3 and #4: Course Notes and Usage Notes:
  • How to Configure a Project with Code::Blocks & SDCC: PDF (~2MB)
  • SDCC Programming Tips for the Atmel AT89C51RC2: PDF (~14KB)
  • Notes on SDCC 2.6.0: PDF (~47KB)
  • SDCC Syntax Examples and C Starter File (for SDCC 2.6.0 and 3.9.0): sdcc_examples.zip (~52KB) .
  • Subversion Version Control System Overview Slides: PDF (~290KB)
  • C Programming Style and Firmware Standards: PDF (~558KB) . Andrew Strotheide's pretty_pdf.bat formatting utility: BAT File (~9KB)
  • Make Presentation with Makefile Examples (GNU Make and SDCC): PDF (~26KB) . Simple Makefile (~1KB) . Advanced Makefile (~2KB)
  • SDCC Interrupt Exercise: PDF (~6KB)
  • ASCII Table: PDF (~5KB) . Control Codes and Scan Codes: HTML (~3KB)
The following documents will be useful for HW #7 and Lab #3.
  • Dallas App Note 83 Fundamentals of RS-232 Serial Communications: PDF (~75KB)
  • Maxim MAX232 Data Sheet: PDF (~319KB)
  • Maxim MAX485 Data Sheet: PDF (~162KB)
  • Maxim MAX485E Data Sheet: PDF (~134KB)
  • National App Note AN-216 Summary of Well Known Interface Standards: PDF (~94KB)
  • National DS1488 Line Driver Data Sheet: PDF (~162KB)
  • National DS1489 Line Receiver Data Sheet: PDF (~197KB)

Lab #4

The following documents will be useful for HW #9, HW #10 and Lab #4.
  • Microchip 24LC16B 16K-bit Serial EEPROM Data Sheet: PDF (~405KB)
  • Atmel AT24C16C 16K-bit Serial EEPROM Data Sheet: PDF (~1MB)
  • Fairchild (National) NM24C16 16K-bit Serial EEPROM Data Sheet: PDF (~103KB)
  • Fairchild (National) NM24C04 4K-bit Serial EEPROM Data Sheet: PDF (~105KB)
  • Microchip App Note 536 Basic Serial EEPROM Operation: PDF (~161KB)
  • Microchip App Note 551 Serial EEPROM Solutions vs. Parallel Solutions: PDF (~71KB)
  • Fairchild (National) App Note 794 Using an EEPROM I2C Interface: PDF (~38KB)
  • Microchip App Note 537 Serial EEPROM Endurance: PDF (~149KB)
  • Microchip App Note 572 Questions and Answers Concerning Serial EEPROMs: PDF (~67KB)
  • Microchip App Note 709 System Level Design Considerations When Using I2C Serial EEPROM Devices: PDF (~95KB)
  • Fairchild (National) App Note 822 Enhancing the Performance of Serial CMOS EEPROMs: PDF (~62KB)
  • Microchip App Note 614 Interfacing the 8051 with 2-wire Serial EEPROMs: PDF (~162KB)
  • Microchip App Note 614 8051 Serial EEPROM Interface Source Code: ZIP (~13KB)
  • NXP I²C Bus Specification Version 6: PDF (~1.3MB)
  • Links to Other I²C Information: NXP I²C-bus Home, SMBus Home
  • SED1278F LCD Controller Data Sheet: PDF (~165KB)
  • SED1278F LCD Technical Manual (same LCD module pinout as Optrex DMC20434/DMC16433 LCD Module below): PDF (~214KB)
  • SED1278F Technical Manual Errata: PDF (~5KB)
  • Hitachi HD44780U LCD Controller Data Sheet: PDF (~390KB)
  • Optrex DMC20434 (same interface as DMC16433) LCD Module Data Sheet: PDF (~79KB)
  • Links to Other LCD Information: Optrex (Kyocera) LCDs . LCD Theory
  • Philips PCF8574 I2C I/O Expander Data Sheet: PDF (~133KB)
  • Philips I2C I/O Expander Application Note AN469: PDF (~294KB)
  • TI PCF8574 I2C I/O Expander Data Sheet: PDF (~410KB)
  • TI PCF8574 I2C I/O Expander Application Note SCPA032: PDF (~217KB)
Other Related Materials:
  • I2C EEPROM Lecture Presentation: PDF (~63KB)
  • LCD Lecture Presentation: PDF (~741KB)
  • Adding an NM24C04 (or NM24C16) EEPROM to your board: PDF (~26KB)
  • Adding an LCD (with an HD44780 LCD controller) to your board: PDF (~44KB)

Final Project

  • NEW F2020 Final Project Assignment: PDF (~67KB)
  • Lab #5 (Possible Final Project Framework, Optional): PDF (~22KB)
  • Final Project Cover Page Template (optional format): DOC (~19KB)
  • Final Project Report Honor Code Pledge: PDF (~7KB)
  • Final Project Report Template (optional format): DOC (~102KB)
  • Example Final Project Report (password protected): PDF (~650K) (posted 12/09/2008)
  • Course Archives - Questions about the Final Project: HTML (~4KB)
  • Final Project Pictures: S2002 . S2007 . S2009 . S2010 . F2010 . S2011 . F2011 . S2012 . F2012 . S2013

Homework Assignments

Homework for Labs #1 and #2 (Homework #1-#5):
  • F2020 Homework #1-#5: PDF (~52KB) [Note: Homework #1 is due by 5pm on 8/28/2020]
Homework for Labs #3 and #4 and beyond (Homework #6-#13):
  • F2020 Homework #6-#13: PDF (~73KB)

Useful links

CU Specific: Electronic Parts: Reference:
Copyright 2020. Links on these pages to non-university sites do not represent endorsement by the University of Colorado at Boulder or its affiliates.
Keep watching this space! This web site will be updated throughout the semester.
Last Update: 28-Sept-2020

ECEE Home Page