EE345L Microprocessor Applications and Organization Spring 2005
(amended schedule, Anil email, quiz room)
Class: CPE2.214, Monday, Wednesday 1-2pm
Lab recitation: ENS127, Friday 1-2pm
Office Hours: Monday 12-12:45, Wednesday 2-3, Friday 10-11
Instructor: Jonathan W. Valvano, ENS627, 471-5141
email: valvano@mail.utexas.edu
Web page: http://www.ece.utexas.edu/~valvano
Text: Embedded Microcomputer Systems, Brooks-Cole 2000, by J. W. Valvano
Lab: ENS252C Unique Numbers: 15110
M9-12, 15115 T9:30-12:30, 15120 Th9:30-12:30,
15125 T12:30-03:30, 15130 Th12:30-03:30, 15135 M3-6, 15140 W3-6, 15145 T3:30-06:30,
15150 M7-10, 15155 Th7-10
EE345L TAs:
Anil Kottam, kottam@mail.utexas.edu
(HEAD TA) Monday 3-6, and Tuesday 12:30-3:30
John
Porterfield, John.Porterfield@mail.utexas.edu
Monday 9-12, and Tuesday 9:30-12:30
Nachiket Kharalkar, knachike@ece.utexas.edu
Monday 7-10, and Thursday 9:30-12:30
Robin Tsang, rtsang@ece.utexas.edu
Thursday 12:30-3:30 and Thursday 7-10
Daniel Fernandez, dan_jf@mail.utexas.edu Tuesday
3:30-6:30 and Wednesday 3-6
Reference materials: Data sheets for most of the devices used in this class are available
as pdf files on the class website. see http://www.ece.utexas.edu/~valvano/EE345L/DataSheets/
and http://www.ece.utexas.edu/~valvano/metrowerks/TechArts.zip
IEEE Parts:
1 prototype board per student (2 per group)
Lab supplies: resistors, 3.5 inch floppy disks, wires
HKN: Spring 2005 EE345L Laboratory Manual by J. W. Valvano
Other references: For programming in C and digital logic, see the EE312 and EE316 texts
Also see Kelly/Pohl, A Book on C, Benjamin Cumming Publishing
Also see http://www.ece.utexas.edu/~valvano/embed/toc1.htm
Prerequisites: EE319K, EE322C and EE438 and credit or
coregistration for EE333T.
Teaching philosophy
I strongly encourage students to take an active role in this class.
Questions are welcome before, during and after class. Please feel free
to email, visit or call me if you have questions.
Specific Objectives of EE345L
The primary objective of EE345L is for the students to develop the
ability to design microcomputer-based embedded systems. This class
allows students to learn microcomputer interfacing from both a hardware
and software perspective.
Microcomputer Architecture (EE319K review)
An Introduction to the Microcomputer, Computer Architecture,
The 6812 Instruction Set, 6812 Addressing Modes, 6812 Instructions,
Organization of the M68HC12, Notation for Block Diagrams, MC9S12C32 I/O and Memory Organization, The Memory Map of the MC9S12C32
Programming Microprocessors (EE312, EE322 review)
Data Structures in C, Indexable Data Structures, Sequential
Data Structures, Writing Clear Programs in C, Documentation, Programming
Style, Subroutines and Arguments in C, Passing Parameters (Conceptual
Level), Passing Parameters (Implementation Level), Calling and
Returning Mechanisms, A Blueprint for Writing Subroutines, Subroutine
Documentation
Microcomputer Bus Interfaces
Digital Hardware, Modules and Signals, Drivers, Registers,
Timing equations, timing diagrams, Address decoding, PROM, RAM interface
Parallel and Serial Input-Output
Simple I/O Devices, Basic Input and Output Devices, Input-Output
Software, I/O Transfers and Buffered Input and Output, Programmed
Logic Control, Table and Linked List Interpreters, Programmable
Parallel Input-Output Devices, Problems with LSI I/O and the Ritual,
M6812 Single-Chip Parallel Input-Output Registers, Indirect Input-Output,
Synchronous Serial Input-Output, Serial I/O Chips, Control of
Serial I/O Chips Using a Parallel Port, The MC9S12C32 Serial
Peripheral Interface
Interrupts and Alternatives
Synchronization in I/O devices, Synchronization Principles
of I/O Devices, Synchronization Mechanisms for the M6812 Parallel
Ports, Slow Synchronization Mechanisms, Real-Time Synchronization,
Gadfly Synchronization, Single Interrupts, Polled Interrupts,
Vectored Interrupts, Vectored Interrupts in the M6812
Parallel Port Interfaces
Keyboards, Key Debouncing, Keyboard Scanning Techniques, LED's
and LCD's
Communication Systems
Communications Principles, Signal Transmission, UART Link
Protocol, UART Transmission and Reception by Software, Serial
Communications Interface System in the 6812
Special Topics
About 1-2 weeks each semester will be allocated to cover special
state-of-the-art topics involving embedded microcomputers and
their applications.
After the successful conclusion of EE345L students should be able to
design the hardware/software interface for devices like LCD displays,
motors, keyboards, analog sensors and speakers..
Attendance: Students are expected to attend lectures. The book
covers more information than the class and we will use lectures
to map our way through the book. If you miss class you may find
it difficult to catch up.
Grading:
35% Laboratory
5% Unannounced pop quizzes,
closed book, in regular class room
5% Weekly
multiple-choice online homework
15% In class Quiz1, closed book, Wednesday, March 2, 1:00 to
1:50 pm, in JES A121A
15% In class Quiz2, closed book, Monday, April 11, 1:00 to 1:50
pm, in JES A121A
25% Final, closed/open book,
Saturday, May 14, 9am-12noon, regularly
scheduled
Cutoff scores for the corresponding letter grades will be announced
after the second quiz.
Lab Partners: All labs should be performed with a partner. The
lab partnership must be registered with your TA (a simple hand
written note signed by both students will suffice) during the week of
1/24 to 1/28. Once registered, the partnership
will continue. A partnership can be dissolved only after discussion
with the TA. Both partners must be present during the demonstration.
It is expected that both partners will contribute to all aspects
of each lab, and both partners are expected to be present during
the check out. The point values are the same for all labs. The
TA will sign your software listing when you demonstrate your system.
All parts of the assignment must be demonstrated to a TA by the
end of your lab period the week shown in the column labeled "Demo/Report".
Any EE345L TA is authorized to checkout your lab. The report (hardware/software/data plots) are due one day after
the demonstration is due. Please consult with your TA for specific
due dates for your lab section.
Laboratories see
http://www.ece.utexas.edu/~valvano/EE345L/lab2005.pdf
Lab 1. ASCII to fixed point conversions, simulated only
Lab 7. Preliminary Design of 6811 Embedded
System with PCB layout
Lab 2. Debugging, dump profile
Lab 4. Alarm clock (2 weeks)
Lab 3. Position measurement and interrupting SCI
Lab 5. Stepper motor finite state machine
Lab 6. SPI
DAC music player
Lab 8. Calculator
(2 weeks)
Lab 9. Final Design, Construction and Evaluation of 6811 Embedded System
EE345L Laboratory Schedule (see your TA for the latest)
Week | Quiz/Preparation | Demo/Report | Comments |
1/17 | none | none | no lab activities |
1/24 | partners chosen | ||
1/31 | 1 | none | Metrowerks simulator |
2/7 | 7 | 1 | |
2/14 | 2 | 7 | |
2/21 | 4 | 2 | |
2/28 | none | partial | quiz 1 is 3/2 |
3/7 | 3 | 4 | |
3/21 | 5 | 3 | |
3/28 | 6 | 5 | |
4/4 | 8 | 6 | |
4/11 | none | partial | quiz 2 is 4/11 |
4/18 | 9 prep 1 | 8 | |
4/25 | 9 prep 2 | partial | |
5/2 | none | 9 | Turn in equipment by 5/6 |
During the week of January 24-28, please go to
your scheduled EE345L lab sessions in ENS252C to
get a demonstration of the lab equipment. If you did not get a
TechArts 9S12C32 kit in EE319K, then a kit will be given to you. Each
student will get exactly one kit. If you loose it or destroy
it, you can purchase another from Technological Arts for $50 plus shipping.
For more information on purchasing a replacement kit, go to the
http://www.technologicalarts.com/ web site and
click the University of Texas at Austin link (order NC12C32SP). Lab partners will be selected
in your lab the week of Jan 31 to Feb 4. The Lab 1 preparation is
due at the beginning of your lab the week of January 31-Feb 4. The lab preparations (hardware diagrams
and syntax-free software source code printouts) are due at the
beginning of your lab period. In other words, please type your software
into the PC before lab. Attendance in lab is required. All
software for lab, and tests must include comments. All hardware
must include R&C values specifying tolerance and type (e.g., 5%
carbon), and TTL chip numbers (be very specific e.g., 74LS00).
Pin numbers are required only for lab, not for the exams.
Students are encouraged to go to the last 2 hours of the other
lab periods, but the
first priority will be to the regular students. During the first 15
minutes of lab, the TA will collect preparations and give a quiz.
For the next 30 minutes, the TA will lead a
lab discussion session. The remaining lab time is available for
debugging and lab checkout. At the end of
the semester please verify with the checkout counter that your
record is clear. All reports must be given to the TA by Friday
May 6, 12 noon.
Date | Chapter | Topic |
1/19 | 1, 2,7 Lec01.pdf |
6812 architecture, features of the 9S12C32, SCI interface |
1/24 | 2 Lec02.pdf |
Lab environment, run Lab1 project the real board and on Metrowerks simulator, example decimal fixed point, debugging techniques, call graphs, flow charts, data flow graphs |
1/26 | 9 Lec03.pdf |
Memory interfacing, timing diagrams |
1/31 | 9 Lec04.pdf |
Memory interfacing, PROM interface, RAM interface |
2/2 | 9 Lec05.pdf |
Embedded system layout, power, clock, reset |
2/7 | 2 Lec06.pdf |
Run Lab2 project, debugging techniques, and programming style, dumps, monitor |
2/9 | 2,3 Lec07.pdf |
Draw pictures showing elements on the stack for Metrowerks compiler, debugging from an assembly language perspective, real time systems |
2/14 | 3,4 Lec08.pdf |
interface binary switch using pull-up resistor to an input port, draw flowchart of rti project, profiling with the scope showing just how small a percentage of time is spent in the background, globals/locals, static variables, threads, draw thread trace |
2/16 | 8 Lec09.pdf |
profiling, LCD Displays, HD44780 controller, blind cycle versus gadfly synchronization, show how to maintain time of day in rtihan, allocation of tasks between the foreground and background |
2/21 | 1,8 Lec10.pdf |
digital logic, input/output voltage/current, LED interfacing using a 7405, PN2222 NPN transistor interface of a speaker |
2/23 | 4, 7 Lec11.pdf |
Interrupting Serial Communications, RS232, thread communication using a fifo queue |
2/28 | 11 12 Lec12.pdf |
ADC, Data acquisition systems, sampling time jitter |
3/2 | Quiz 1 in class, covering material in Labs 1,2,7 | |
3/7 | 3, 4 Lec13.pdf |
linked data structures, ROM-based structures using const, finite state machines, run Moore project, fixed time delay using TCNT, adding output pins, adding input pins, running the FSM in the background using OC interrupts |
3/9 | 3, 8 Lec14.pdf |
FSM with functions, traffic example, stepper motors, full step versus half step algorithm, stepper interface electronics (L293, TIP120, IRF540), snubber diodes |
3/21 | 7 11 Lec15.pdf |
SPI/DAC interface, signal generation |
3/23 | 11 Lec16.pdf |
output compare interrupts, real-time systems |
3/28 | 8 Lec17.pdf |
Switch debouncing |
3/30 | 8 Lec18.pdf |
Keyboard scanning |
4/4 | 6 Lec19.pdf |
input capture |
4/6 | Lec20.pdf |
Programming the 6811 using assembly, batteries |
4/11 | Quiz 2 in class, covering material in Labs 4,5,6,7 | |
4/13 | Lec21.pdf |
Programming the 6811 using ICC11, draw real timing diagrams |
4/18 | Lec22.pdf |
TExaS assembly stepper motor, teams, design specification |
4/20 | 4 Lec23.pdf |
SPI-based LED graphics interface, fonts, double buffer |
4/25 | 14 Lec24.pdf |
Real-time EKG data acquisition |
4/27 | 14 Lec25.pdf |
Low-level networks |
5/2 | 4 Lec26.pdf |
Selecting a microcomputer, speed benchmarks, ethics, evalution |
5/4 | Lec27.pdf |
Review |
5/6 | All Lab notebooks are due to the TA at 12 noon | |
5/5 | Turn in Lab Equipment so that Mona wont bar your registration | |
5/14 | Saturday, Final exam, 9am-12n, Room regularly scheduled |
Legal Stuff: The 12th class day is Feb 2. After this date, I will sign
a drop only if the Dean approves it. Your current grade status
must be a "C" or better for you to receive a "Q". Course evaluation
is conducted on the last class day in accordance with the Measurement
and Evaluation Center form. The final exam is at the time and
place stated in the course schedule. The University of Texas at
Austin provides upon request appropriate academic adjustments
for qualified students with disabilities. For more information,
contact the Office of the Dean of Students with Disabilities at
471-6259, 471-4241 TDD.
Cheating: Cheating is very uncivilized behavior and is to be avoided at
all cost. We will be using an automated system to check for software plagiarism.
You are allowed to talk to your classmates about the
lab assignments, but you are NOT allowed to look at each other's
written work. Oral discussion about an assignment is encouraged
and is not considered to be cheating. Copying of any part of
a program is cheating without explicit reference to its source.
If we find two programs that are copied, there will be a substantial
penalty to both students, e.g., failure in the course. Students
who cheat on tests or in lab will fail. Prosecution of cases is
very traumatic to both the student and instructor. PLEASE DO YOUR
OWN WORK. Policies concerning the use of other people's software
in this class:
I strongly encourage you to study existing software.
All applications and libraries must be legally obtained. E.g.,
You may use libraries that came when you bought a compiler.
You may use software obtained from a BBS or on the WWW.
You may copy and paste from the existing source code.
You may use any existing source code that is clearly referenced and categorized:
original: completely written by you,
derived: fundamental approach is copied but it is your implementation,
modified: source code significantly edited to serve your purpose,
copied: source code includes minor modifications.
When studying, focus on the topics that apply to the 6812 and the topics included in the lab assignments.
You will find old quizzes and finals with solutions on the class web site.
Online
homework submission
You can work together in groups of any
size, but everyone enters a separate online solution.
STEP
1: Add yourself to the class roster at the URL https://hs.ph.utexas.edu
Unique number:
15110
It will new your EID or I do not need a keypad number, but please spell your name
exactly how the university officially knows you.
STEP 2: Log into the Homework Service at the URL https://hs.ph.utexas.edu
Download: Students' Instructions
Download:
First Homework
STEP 3: Work one homework question.
Log in again and submit its answer before next class period.
STEP 4: Continue submitting answers until due time.
STEP 5: Download the solutions after due time.
Curious about my research? See
http://www.ece.utexas.edu/~valvano/research