0% found this document useful (0 votes)
2 views

CEG3136 Lab4 Report -Template

Uploaded by

gurdarshan681
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

CEG3136 Lab4 Report -Template

Uploaded by

gurdarshan681
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 3

CEG3136 Computer Architecture II

LAB1: Introduction to Programming the µP

LAB 4 Report

Submitted in partial fulfillment for the award of the credit of the course
CEG3136 Computer Architecture II to Professor Basim Hafidh

By

Group_Monday #1

STUDENT1 NAME (#Student Number)


STUDENT2 NAME (#Student Number)
STUDENT3 NAME (#Student Number)

Faculty of Engineering
Department of Electrical and Computer Engineering
UNIVERSITY OF OTTAWA
September, 2024
A. Hardware Design

1. Alarm System Schematic:


o Include a detailed schematic showing the connections for all
components used in the alarm system on the Dragon-12 Trainer
(Keypad, LCD, 7-segment displays, DIP switch, and PC speaker).
o Label the pins, ports, and connections clearly to ensure accuracy in the
design.
2. Hardware Diagram:
o Provide a complete hardware diagram showing the layout of
connections to the microcontroller. Ensure all components and
connections are labeled, and the function of each connection is
clarified.

B. Software Design

1. Module Design and Subroutines:


o Describe the design and functionality of each new or updated module,
including their role in the interrupt-driven alarm system:
 Keypad Module:
 void initKeyPad()
 char readKey()
 char pollReadKey()
 Segment Display Module:
 void initDisp()
 void clearDisp()
 void setCharDisplay()
 Siren Module:
 void initSiren()
 void turnOnSiren()
 void turnOffSiren()
2. Algorithm Descriptions:
o Provide descriptions of the algorithms used for each subroutine,
particularly focusing on how interrupts are used to:
 Update the 7-segment displays without flicker.
 Implement the delay module with timer interrupts.
 Generate the siren sound by applying a waveform to the PC
speaker.
 Read and debounce keys on the keypad.
3. C Pseudo-Code:
o Include pseudo-code for each module, demonstrating the high-level
logic of each function. Describe the steps taken in each interrupt
service routine (ISR) and how these routines communicate with the
main program.
C. Source Code and Testing

1. C Code for Alarm System Modules:


o Provide the full source code for each module (e.g., keypad, segment
display, delay, and siren modules).
o Code Commenting: Ensure the code is thoroughly commented,
explaining the purpose of each line and block of code. Emphasize the
interrupt handling logic to make the flow clear.
2. System Snapshot:
o Include a screenshot or snapshot from the lab showing the alarm
system in action on the Dragon-12 Trainer.
o Capture results that demonstrate each module's functionality, such as:
 Keypad responsiveness with debouncing.
 Flicker-free character display on the 7-segment displays.
 PC speaker sounding the siren when activated.

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy