Credits: 3

Description

Prerequisite: ENEE350; and completion of all lower division technical courses in the EE curriculum.
Restriction: Must be in one of the following programs (Engineering: Computer; Engineering: Electrical).
Microprocessor architectures, instruction sets, and applications. Bus structures, memory, I/O interfacing. Assembly language programming, LSI device configuration, and the embedding of microprocessors in systems.

Semesters Offered

Fall 2017, Spring 2018, Fall 2018, Spring 2019, Fall 2019, Spring 2020, Fall 2020, Spring 2021, Fall 2021, Spring 2022, Fall 2022, Spring 2023, Fall 2023, Fall 2024, Spring 2024

Learning Objectives

  • Design real-time microprocessor-based system software to meet a specification
  • Implement a system in assembly language on microprocessor-based hardware
  • Configure and write drivers for a standard set of LSI peripherals (timer, interrupt, serial, parallel, system configuration), other devices (switch array, LED array), and communication protocols (header, checksum)
  • Formulate test procedures for demonstration and validation of a design
  • Document the system design, system test procedures, and write a user manual

Topics Covered

  • (PIC) cpu, memory, I/O architecture
  • (PIC) data move, control transfer op codes
  • (PIC) arithmetic and logic operations, applications
  • (PIC) macros; C-function interface
  • (PIC) PIC184550 peripheral devices and applications
  • Debug methods, modular programming,  programming style
  • Embedded programming methods; multitasking
  • (ARM) cpu, memory, I/O architecture
  • (ARM) data move, control transfer op codes
  • (ARM) arithmetic and logic operations
  • (ARM) macros; C-function interface
  • (ARM) LPC2368 peripheral devices and applications