Computer Engineering

Alkhawaa
rubic.pdf

Course #: CEC 322

Program Outcome: EAC-B. Ability to design and conduct experiments, as well as to analyze and

interpret data.

Artifact: Lab 5. State Machine, Macro, and Assembly

Attribute

Student Performance

Unsatisfactory (1) Satisfactory (2) Excellent (3)

a. Improving

readability of the

program code

using macros.

Cannot define macros

using Joystick key

reading functions or LED

control functions without

being guided almost step

by step.

Can define macros using

assembly Joystick key

reading functions and

LED control functions

to produce correct

results with some help.

Can define macros using

assembly Joystick key

reading functions and

LED control functions to

produce correct results

without any help.

b. Logic flow of

mixed C and

assembly

programming.

Major code

snippets should be

included in the lab

report, including

those for the

attributes given

below.

Disorganized programs,

the results are

unpredictable; programs

are unable to accomplish

expected assignments;

syntax flaw; student can't

describe what the

program will do. Student

was unable to complete

lab without being guided

almost step by step.

Program is organized in

terms of functionalities

with required results

achieved; variables,

loops, subroutines and

conditions are not

redundant; students can

explain most of work.

Program is logically

organized and work well

according to requirements;

variables, loops,

subroutines and conditions

are effective designed,

student can explain to the

code in the program.

c. Reading from

GPIO pins

connected to

selected Joystick

keys using

assembly

functions. These

keys should be

checked for their

status without

being affected by

other GPIO pins.

Fail in any one of the

following: (1) reading

the Joystick input keys,

(2) isolating the input of

one Joystick key from

other Joystick keys.

Perform all the

following in assembly

without error: (1)

reading the input keys,

(2) isolating the input of

one key from other

GPIO pins. May not be

very efficient.

Perform all the following

efficiently in assembly

without any error: (1)

reading the input keys, (2)

isolating the input of one

key from other GPIO pins.

Code is written cleanly.

d. Writing to GPIO

pins to drive LEDs

using assembly

functions. Other

pins in the port

cannot be affected.

Fail in any one of the

following: (1) writing the

pins to turn on/off LEDs

and (2) keeping other

GPIO pins on the same

port unchanged.

Perform of the following

in assembly without any

error: (1) writing the

pins to turn on/off LEDs

and (2) keeping other

GPIO pins on the same

ports unchanged. May

not be very efficient.

Perform of the following

efficiently in assembly

without any error: (1)

writing the pins to turn

on/off LEDs and (2)

keeping other GPIO pins

on the same ports

unchanged. Code is

written cleanly.