DORDT COLLEGE ENGINEERING DEPARTMENT
               MICROPROCESSOR INTERFACING -- EGR 304
                          (Spring 2005)

Click this note on cached pages and handouts if you are 
having difficulty seeing the latest version of this page. 

Homework must adhere to reasonable standards.

Note 1) Problem sets with no "ASSIGNED" date are tentative.  More 
problems might be added, expected due dates might change, but 
problems shown will eventually be assigned.  

                           PROBLEM SETS             (Last update:
                           ------------         4/26/05  9:19 am) 
 # after "RETURNED" date means a solution is posted outside S233
+===============================================================+ 
|PS|ASSIGNED| DUE |RETURNED| Problems Assigned                  |
| #|        /     \        | (Choose 6811 if there is a choice) |
|==+=======+=======+=======+====================================|
| 8|  4/05 |  4/26 |       | Do 8.5, 8.6                        |
|  |       |       |       | Note on 8.5:  Parts available to   |
|  |       |       |       |   you are any parts in Dordt's     |
|  |       |       |       |   lab stock.  Power is available   |
|  |       |       |       |   at +5 V, +12 V, and -12 V, all   |
|  |       |       |       |   with a common ground return.     |
|  |       |       |       | Note on 8.6:  For the diode,       |
|  |       |       |       |   specify how to calculate the     |
|  |       |       |       |   minimum rating needed for the    |
|  |       |       |       |   Peak Forward Surge Current, I   ,|
|  |       |       |       |                                FSM |
|  |       |       |       |   and specify how to calculate the |
|  |       |       |       |   rating needed for the Peak       |
|  |       |       |       |   Repetitive Reverse Voltage, V   .|
|  |       |       |       |                                PRM |
|  |       |       |       |   Since the problem does not give  |
|  |       |       |       |   any particular details, assume   |
|  |       |       |       |   that an inductive load draws     |
|  |       |       |       |   100 mA in steady-state.  Then    |
|  |       |       |       |   find a suitable protection diode |
|  |       |       |       |   that meets these specs. and give |
|  |       |       |       |   the part number.  Most diode data|
|  |       |       |       |   sheets can be found at           |
|  |       |       |       |   http://www.fairchildsemi.com.    |
|  |       |       |       |   Just put a part number into the  |
|  |       |       |       |   search box on that page and then |
|  |       |       |       |   pursue the search to the data    |
|  |       |       |       |   sheet.                           |
|--+-------+-------+-------+------------------------------------|
| 7|  4/05 |  4/21 |  4/26#| Read Chapter 7.  Skip sections     |
|  |       |       |       | specific to non-68HC11 micro-      |
|  |       |       |       | controllers.  Also omit examples of|
|  |       |       |       | C code.                            |
|  |       |       |       |                                    |
|  |       |       |       | Useful supplemental reading:       |
|  |       |       |       | RS-232, A Tutorial from Tel-Aviv U. |
|  |       |       |       |                                    |
|  |       |       |       | Do Problems on USB                 |
|--+-------+-------+-------+------------------------------------|
| 6|  4/05 |  4/14 |  4/19 | Read Chapter 6.  Skip sections     |
|  |       |       |       | specific to non-68HC11 micro-      |
|  |       |       |       | controllers.  Also omit examples of|
|  |       |       |       | C code.                            |
|  |       |       |       |                                    |
|  |       |       |       | Write a 68HC11 assembly program to |
|  |       |       |       | measure the width of a pulse.  The |
|  |       |       |       | width can range from 1 to 65535 E- |
|  |       |       |       | clock cycles.  Include the setup-  |
|  |       |       |       | ritual and any other necessary     |
|  |       |       |       | code.  The "answer" is an assembled|
|  |       |       |       | list file. ("TheList.RTF file from |
|  |       |       |       | TEXAS or the *.txt file from AS11.)|
|  |       |       |       | A suggested outline for your       |
|  |       |       |       | program is given here.  (Right-    |
|  |       |       |       | click, then "Save Target As        |
|  |       |       |       | PS_PULSE.ASM" to use the file.)    |
|--+-------+-------+-------+------------------------------------|
| 5|  2/10 |  2/22 |  3/31#| Read Chapter 4                     |
|  |       |       |       | Do (on page 261-2) 4.1a, v4.2-a    |
|  |       |       |       | and from Peatman's text, 3.17, 3.19|
|--+-------+-------+-------+------------------------------------|
|  |  2/10 |  ---  |  ---  | Study for test on Thursday, 2/17   |
|  |       |       |       |                                    |
|--+-------+-------+-------+------------------------------------|
| 4|  2/01 |  2/8  |  2/10#| Read Chapter 3                     |
|  |       |       |       | Do (on page 180) 3.3,  3.19b-c     |
|  |       |       |       | Note:  Answer to 3.19a is found    |
|  |       |       |       | in the E-Family Tech Manual on page|
|  |       |       |       | 6-6, which might help with pts b-c.|
|--+-------+-------+-------+------------------------------------|
| 3|  1/27 |  2/1  |  2/10#| Read Chapter 2 Sectns 2.5 thru 2.12|
|  |       |       |       | Do (on page 134) 2.2, 2.4          |
|--+-------+-------+-------+------------------------------------|
| 2|  1/20 |  1/27 |  2/01#| Read Chapter 2 Sectns 2.1 thru 2.4 |
|  |       |       |       | Do (on page 133-4) 2.1             |
|  |       |       |       |                                    |
|  |       |       |       | You may use file "V2_1.ASM" as a   |
|  |       |       |       | start.  All you have to do here is |
|  |       |       |       | delete the existing "FUZZY"        |
|  |       |       |       | subroutine and add your own.       |
|  |       |       |       |                                    |
|  |       |       |       | For the TEXAS simulator, as        |
|  |       |       |       | explained in class...  "V2_1TX.ASM"|
|  |       |       |       |                                    |
|  |       |       |       | To use the file, right-click on the|
|  |       |       |       | link and choose "Save Target As..."|
|  |       |       |       | This file is in ASCII format, a    |
|  |       |       |       | standard format used by Motorola   |
|  |       |       |       | and recognized by "TEXAS."  You may|
|  |       |       |       | open the file from within "TEXAS"  |
|  |       |       |       | or you may drag the file icon and  |
|  |       |       |       | drop it on a desktop icon for      |
|  |       |       |       | "TEXAS."  The first time you save  |
|  |       |       |       | the file from within "TEXAS" it    |
|  |       |       |       | be converted to RTF format.  Be    |
|  |       |       |       | sure you change the extension to   |
|  |       |       |       | RTF too--manually if necessary.    |
|  |       |       |       | (TEXAS cannot save ASCII format    |
|  |       |       |       | files.)                            |
|  |       |       |       |                                    |
|  |       |       |       | If you experience phasing errors...|
|  |       |       |       |                                    |
|  |       |       |       | Note: On Monday, 1/24, the due date|
|  |       |       |       | was delayed from 1/25 to 1/27.     |
|  |       |       |       |                                    |
|--+-------+-------+-------+------------------------------------|
| 1|  1/11 |  1/18 |  1/25#| Read Chapter 1 Sections 1.1, 1.4,  |
|  |       |       |       | 1.6, 1.7, 1.8, 1.9.                |
|  |       |       |       | Do (on page 77) 1.8                |
+---------------------------------------------------------------+

                              TESTS                  (Last update
                              -----                      4/05/05)
Test #1, Thursday 2/17.  The test will cover Valvano's textbook, 
   Ch 1 Sections 1.1, 1.4, 1.6, 1.7, 1.8, 1.9.
   Ch 2 Sections 2.1, 2.2, 2.3
   Ch 3 Sections 3.1, 3.2, 3.3, 3.4
   Open Book, Open Notes, a calculator is required.

Test #2, Thursday, 4/7  The test will cover the following:
   Ch 4 Section  4.1, 4.5, plus class notes on interrupts.
   Ch 6 (all of Ch. 6)
   RS-232 and Ethernet--from class notes and Ch 7  
   Open book, open notes.  A calculator is required. 
   
Final Exam, Thursday, 5/5, 8-10 AM.
   Will cover all the material covered on tests #1 and #2 plus 
   Chapter 8.  It will also cover position sensing (relative, 
   direction, absolute, Grey code, V-scan).  
   The exam will be open book, open notes, and a calucator is 
   required. 

                                               
                               LABS                  Last update:
                               ----              3/07 at  3:29 pm
+===============================================================+
|LAB|ASSIGNED| DUE |RETURNED| Lab Topic                         |
| # |        /     \        |                                   |
|===+=======+=======+=======+===================================|
| 4 |  3/07 |  ---  |       | Build the hardware needed to      |
|   |       |       |       | derive a tic-clock interrupt from |
|   |       |       |       | the 60 Hz power line.  (This      |
|   |       |       |       | includes a transformer, half-wave |
|   |       |       |       | rectifier, limiter, schmitt       |
|   |       |       |       | trigger and state machine.)       |
|   |       |       |       |                                   |
|   |       |       |       | Also write a main program to      |
|   |       |       |       | do any necessary initialization,  |
|   |       |       |       | and an ISR to test the hardware.  |
|   |       |       |       | The ISR should toggle an output   |
|   |       |       |       | pin for each interrupt.           |
|---+-------+-------+-------+-----------------------------------|
| 3 |  1/31 |       |       | Write a subroutine in assembly    |
|   |       |       |       | code to drive the 4-digit LED     |
|   |       |       |       | seven-segment display you built   |
|   |       |       |       | last week.  The subroutine should |
|   |       |       |       | make use of a global buffer to    |
|   |       |       |       | store the display's contents.     |
|   |       |       |       |                                   |
|   |       |       |       | Write a main program which calls  |
|   |       |       |       | the above described subroutine    |
|   |       |       |       | repeatedly in order to keep the   |
|   |       |       |       | display visible.                  |
|---+-------+-------+-------+-----------------------------------|
| 2 |  1/24 |  ---  |  ---  | Build and test display hardware   |
|   |       |       |       | that uses one 8-bit port to       |
|   |       |       |       | drive a 4-digit LED seven-segment |
|   |       |       |       | display.  In particular, see      |
|   |       |       |       | page 451 in your text, Fig 8.39.  |
|   |       |       |       | Adapt the design shown there for  |
|   |       |       |       | parts we have in our lab and to   |
|   |       |       |       | show 4 digits rather than three.  |
|---+-------+-------+-------+-----------------------------------|
| 1 |  1/17 |  ---  |  ---  | Creating a Development Environment|
|   |       |       |       |                                   |
|   |       |       |       | File:  INVERTER.ASM               |
|   |       |       |       |                                   |
---------------------------------------------------------------+
Note:  To use a file, right-click on the link, then choose 
"Save Target As. . ." or equivalent. 


          VARIOUS LINKS WITH INFO RELATED TO THIS COURSE
          ----------------------------------------------
Links marked "*" only work on campus or via a proxy server
Valvano's companion web pages for our textbook.
The course syllabus in MS-Word Format
HC11REG.ASM Register Block Header File (right-click, Save target as. . .)
Freescale, 68HC11 Family Reference Manual (Data Book, 650 pages)
Freescale, 68HC11E Family Technical Data (Data Book, 336 pages) 
Freescale, More documents on the 68HC11 family (index page) 
Motorola, 68HC11 Reference Manual* (Older edition)
Motorola, 68HC11E Family Technical Data* (Older edition)
Zilog, Z80 CPU User's Manual 
Download PseudoSam 80z Assembler, A DOS to Z80 Cross Assembler  
    (PseudoSam 80z is also known as "psz80a13.zip")
A Free Chapter on "Instruction Set and Code Assembly" 
    The above link is to a book, Embedded Systems by Wilson
    (On the Book's page, click on the link to the free chapter) 
M68HC05 Family: Understanding Small Microcontrollers
    The above link was discovered by Matt Veenstra.  Prof. De 
    Boer recommends especially the later chapters on programming 
    and peripherals.  The language in this book Motorola specific.
    For example, what they call an, "I/O memory location," is 
    generally known as a "memory mapped I/O port."  Other than
    these types of issues, the info in the book is generally 
    applicable to all microcontrollers.
RS-232 A tutorial from Tel-Aviv University. 
Ethernet Tutorial from The University of Brighton. 
Understanding Interference-Type Noise from Analog Devices Company
Shielding and Guarding from Analog Devices Company
A data sheet with information on LCD multiplexing from Philips
A Tutorial on stepper motors from Jones, ISU
68HC11 instruction reference--alphabetic order (Link is Broken)
68HC11 instruction refernece--op code order plus other tidbits (Link is Broken)

                              ERRATA                      Last update:
                              ------                          1/12/05
Valvano, Embedded Microcomputer Systems: Real Time Interfacing,
Brooks Cole, 2000

First, see the author's list of errata at:
http://www.ece.utexas.edu/~valvano/typo/

Additional Errata. . .

p8, about 1/3 of the way down the page.  Change,
     "ldaa $0001    RegA=[$0001] copy to values of PortB into RegA"
     to
     "ldaa $0001    RegA=[$0001] copy the values of PortB into RegA"



<—PREVIOUS offering of this course NEXT—> 
 


Back to Prof. De Boer's home page