Department of Electrical and Computer
Engineering
Montana State University
Topics and Notes Summary (12/15/2003; updated frequently):
Dec. 18 |
Final Exam.
|
Dec. 11 |
Last class period. Lecture: finish project demonstrations.
|
Dec. 9 |
Meet in the lab room during class time for the project demonstrations. Any projects that we don't get to will be demonstrated on 12/11/03 during class.
|
Dec. 4 |
Project reports are due at the start of class. Lecture: Continue discussion of digital signal processing (DSP) in microcontrollers. The course/instructor evaluation forms will be filled out during class.
Project demonstrations will be held during class time on Tuesday, December 9. Please meet in the lab room at the normal class time (9:00AM).
|
Dec. 2 |
Lecture: Complete Huffman decode example. Discuss microcontroller hardware timers. Begin discussion of digital signal processing (DSP) in microcontrollers.
Lab: Please meet with your team. Project reports are due at the start of class on Thursday!
|
Nov. 27 |
Thanksgiving Holiday (no MSU classes)
|
Nov. 25 |
Lecture: Review exam results (hi: 100, low:
52, avg: 85).
Lab: I will meet with each team starting at 2:10PM in the lab. Project reports are due a week from Thursday!
|
Nov. 20 |
Second midterm exam (in class). The exam is open book and open notes (but NO CONSULTANTS). Be sure to bring a calculator to help solve one of the exam problems.
|
Nov. 18 |
Lecture: Timing, latency, and tick resolution issues. Begin encoded data example using Huffman code. Lab #8 is due at the start of class. Lab: I will meet with each project team individually starting at 2:10PM in the lab room. Please be prepared to give a status report, thanks. |
Nov. 13 |
Lecture: Discuss project proposals; discuss guest speaker's presentation; continue task timing/latency discussion. Homework #4 is due at the start of class.
|
Nov. 11 |
Veterans' Day Holiday (no MSU classes)
|
Nov. 6 |
Lecture: Table lookup wrap-up (look up index and sample increment calculations); begin discussion of task timing issues, priority inversion, and interrupt latency for microC/OS-II and in general.
|
Nov. 4 |
Lecture: I've written a short description of how to use command line arguments in C. I discovered that this isn't explained in the course textbooks. Lab: Work on Lab #8, using microC/OS-II in a command window on the PC.
|
Oct. 30 |
Lecture: Homework #4 (.pdf
or .htm): C programming problems
involving writing signal data to a text file, due at the start of class on
Thursday, November 13, 2003. EE475 Project Assignment (.pdf or .htm): Written proposals are due AT THE START OF CLASS on Thursday, November 6, 2003. Proposals will be approved, modified, or rejected by the next class period. Completed project reports are due AT THE START OF CLASS on Thursday, December 4, 2003. |
Oct. 28 |
Lecture: RTK concepts, stream processing, and scheduling alternatives. Lab: Work on Lab #7, which involves a few exercises with the ZAP Simulator (part of the Cosmic Tools). Here are the two test files: Here is a summary of results for the course questionnaire. Thanks again for your time and comments! |
Oct. 23 |
Lecture: microC/OS-II task control and task creation. Mid-semester course questionnaire was distributed and collected. Handout: Audio RTK article (please read before next class).
|
Oct. 21 |
Lecture: microC/OS-II tasks and control structures. Lab: Work on Lab #6, which involves a simple multitasking arrangement on the EVBs. There are two code segments that will help get you started: lab6.framework1.txt
|
Oct. 16 |
Lecture: Semaphores and task communication. Homework #3 is due at the START of class.
|
Oct. 14 |
Lecture: Return mid-term exams and discuss results. Continue material on Real Time Kernels and start specifics of microC/OS-II. Lab: Work on Lab #5, which involves setting the LEDs and reading the toggle switches on the EVB I/O board, plus using the HC-12 Real Time Interrupt to generate a digital waveform to view on the oscilloscope.
|
Oct. 9 |
NO EE475 CLASS THIS DAY We will have a special guest lecture early in November as a make-up.
|
Oct. 7 |
First midterm exam (in class). The exam is open book and open notes (but NO CONSULTANTS). There will be NO LAB this day. Lab #4 is due by 2PM (at my office or in my mailbox).
|
Oct. 2 |
Lecture: Continue intro material on real time kernel processing. Homework #3 (.pdf
or .htm): One C programming problem
involving opening and reading a binary file, due at the start of class on
Thursday, October 16, 2003. binfile_0.dat Reminder: We will have the first midterm exam in class on Tuesday, October 7.
|
Sept. 30 |
Lecture: Start material on real time kernel processing. Lab: Turn in Lab #3 at the START of the lab period. In Lab #4 you will implement a simple foreground/background system using interrupts. Reminder: We will have the first midterm exam in class on Tuesday, October 7. The exam will cover concepts of C programming and the topics covered in the labs up through 9/30/03. There will be NO LAB on 10/7/2003. Memo Reports for Lab #4 are due by 2PM on 10/7/2003. There will be NO CLASS on 10/9/2003.
|
Sept. 25 |
Lecture: Wrap-up C language review (complete the rest of notes on the use of pointers in C). Assignment: Look over Chapter 2 of the MicroC/OS-II textbook and start learning the terms used in real time kernel systems. Advance notice: We will have the first midterm exam in class on Tuesday, October 7. The exam will cover concepts of C programming and the topics covered in the labs up through 9/30/03. There will be NO LAB on 10/7/2003, and NO CLASS on 10/9/2003.
|
Sept. 23 |
Lecture: C Language review (notes on the use of pointers in C). Lab: Remember to turn in Lab #2 at the START of the session today. For Lab #3 we will be investigating memory usage of C programs using the Cosmic tools, including a basic understanding of the linker and some practice using the D-Bug12 commands. Here is a helpful reminder sheet prepared by Prof. Cady for the HC12 EVBs (D-Bug12 routines, interrupt addresses, etc.).
|
Sept. 18 |
Lecture: C Language review (flow control; start discussion of pointers). Homework #2 (.pdf or .htm): One C programming problem involving opening and reading a text file, due at the start of class on Thursday, September 25, 2003. Here is an example text file for use in verifying your HW2 solution.
|
Sept. 16 |
Lecture: C Language review (storage classes, variable scope, arrays and structures). Assignment: review the material on "pointers" in the textbook. Lab: Plan to turn in Lab #1 at the start of the session today. We will be working on Lab #2 (Tornado RTOS simulator) using the tutorial. A printout of the tutorial is located in the back of the white binders in 601 CobH.
|
Sept. 11 |
Lecture: C Language review (data types, names, functions, and control flow). Homework #1 (.pdf): Two C programming problems, due at the start of class on Thursday, September 18, 2003. Here is the homework #1 assignment as html.
|
Sept. 9 |
Lecture: C Language review and possible live demo. Lab: I would like you to prepare your lab reports using the Memo Report Format. The Lab#1 exercises "Using the Cosmic C IDE" will be done today (2:10PM in CobH 601). The report is due at the start of lab next week (Sept. 18). Here are the files needed for the Lab #1 exercises:
|
Sept. 4 |
Continue introductory remarks, and start review of C language. Information regarding the GCC compiler is now available. |
Sept. 2 |
First class meeting at 9:00AM in Roberts Hall
319. NOTE: there will be NO LAB on Sept. 2.
|
|
|
Tuesday | Thursday | Friday |
|
10/30 Project and HW#4 assigned |
|
11/4 Lab #8 (last scheduled lab); Lab #7 due |
11/6 Project proposals due |
11/7 guest lecture |
11/11 Veterans' Day (MSU holiday: no class or lab) |
11/13 HW#4 due |
|
11/18 lab: work on projects (Lab #8 due) |
11/20 EXAM #2 (in class) |
|
11/25 lab: work on projects |
11/27 Thanksgiving (no class) |
|
12/2 lab: work on projects |
12/4 Project reports due. |
|
12/9 Project reports, during class (meet in lab) |
12/11 Finish project reports; wrap-up; last class |
|
NOTE: Here is some information about the GCC compiler. This version will run in a DOS window (command line) on a Windows PC.
Friday, November 7: Guest Lecture, 11:00AM, 113 RobH
Programming and Project Planning for Embedded Systems
Dr. John Strawn, S Systems, Inc.
Abstract:
There are many ways to approach a complex embedded programming assignment.
Based on industry experience, the lessons of object-oriented programming can be
applied to planning an embedded programming project. This is true even if the
project is implemented in assembler and "objects" in the strict sense of Java or
C++ are not used. We will cover some useful ideas from object-oriented
programming and show how they can be applied to real-world programming
situations.