next up previous
Next: About this document Up: EEL4744: Microprocessor Applications Fall Previous: EEL4744: Microprocessor Applications Fall

EEL4744: HW5

Due September 23 (in class at 1:55). Late homework will not be accepted. Reminder Exam 1 will be held in class on Sept. 28. The exam will be open-book.

    1. There are many systems in the 68HC11 that can either poll a flag (eg TDRE) or enable an interrupt to occur (TIE) when that flag is set. Give the major advantage of using interrupts instead of polling.
    2. Dedicated polling is certainly easier to implement than interrupts. Give another major reason why someone might use dedicated polling instead of interrupts
    1. On the MC68HC11 contrast the invocation, linkage and context switching of interrupt service routines and subroutines. How are they alike? Different? For example, what is stacked and what is the stacking order for the two cases? Explain in detail.
    2. Six interrupting sources on the 6811 are not masked by the I-bit. Name them and describe their functions. What interrupting source has the highest priority on the MC68HC11? Second highest? Third? Fourth? Fifth? Sixth? Seventh?
  1. A counter is being kept in a byte of memory. This counter is incremented in the main program with the following instructions.
    CNT EQU $00
         .
         .
         .
         LDAA CNT
         INCA
         STAA CNT
         .
         .
    Considering that some interrupt routines may also access this counter and possibly increment it, what is the potential problem? What is the simplest method to cleanly implement this same counter without disabling interrupts?
  2. What is the minimum hardware required for two 68HC11EVBU boards to communicate using the SCI? What connections would you have to make to achieve this?
  3. Disassemble the following machine code. Assume that the PC is initially at $E000.

    tabular18

    1. Write a subroutine that counts the number of ones in register a and returns 0 or 1 depending if the number of ones is odd or even. Choose any proper argument passing convention you like as long as you document. Remember to preserve any registers that you modify and use plenty of comments.
    2. Why might such a program be useful? Explain in detail.
  4. Write a subroutine that replaces all lowercase letters in a character string with uppercase letters. The program should not modify the uppercase letters or non-alphabetic characters in the string. Assume that $04 signals the end of the string. Remember to preserve any registers that you modify and use plenty of comments.
  5. Observe the following memory expansion diagram:

    Consider using different outputs of the 74'138 as the chip-select for the RAM. For each possible output of the 74'138, fill in the resulting address range in the following table. The high and low address values for Y0 have already been done for you.

    tabular24


next up previous
Next: About this document Up: EEL4744: Microprocessor Applications Fall Previous: EEL4744: Microprocessor Applications Fall

John Harris
Fri Aug 15 10:15:27 EDT 1997