1.
A – 90 to 100%
2.
B – 80 to 89%
3.
C – 70 to 79%
4.
D – 60 to 69%
5.
F – below 60%
1.
Homework is due at the start of the class of the date
assigned. Late assignments will not be accepted and students will receive zero credit
for that assignment.
2.
Missed assignments because of sickness can only be
made up if accompanied with a note from student health services or a medical
doctor.
3. University sponsored field trips and university athletes required to submit event activity notices prior to the class that is missed. Homework assignment dates missed for these events must be submitted prior to the missed class.
4. Assignments submitted are to be the work of each individual student. All Students who participate in plagiarism will receive zero credit for the assignment. Acts of plagiarism will be promptly report to the dean of students. Refer to the Students Code of Conduct at http://www.uidaho.edu/DOS/judicialaffairs/studentcodeofconduct.
1. C Programming
A. Elements of C programming
i. Program organization
ii. Creating variables
a. Auto versus static
b. Global versus local
B. Best practices.
i. Comments and documentation
ii. Magic numbers and constants
iii. Data hiding
C. Program format and styles
i. Design partitioning
ii. Software Modeling
a. Data flow diagrams
b. control flow diagrams
c. Finite State Machine (FMS) diagrams
2.
Integrated Development Design (MPLAB)
A.
Code Generation – context editors
B. Code Instrumentation
i. Variable observation (local / watch windows)
ii. Code execution control (single stepping / break points)
C. Hardware Instrumentation
i. The power of the LED
ii. Voltmeters (DVM with frequency counters)
iii. Oscilloscopes (screen capture)
iv. Logic Analyzers
D. Code Analysis
i. Execution timing
ii. Memory utilization
3.
Microprocessor Resource Management
A. Input / Output (I/O) - controlling bits
i. One hot code and value representation
ii. IO control and pin drive/loading characteristics
iii. Finite state machine implementation
a. "if-else" structures
b. "switch-case" structures
B. Timers and clocks
i. Configuration
a. Timer source clock
b. Prescale registers
c. Period register
ii. Reading Timer
a. Timer count values
b. Timer flags
C. Interrupts
i. Priority schemes - nested, non nested and hybrid
ii. Single vector implementation
iii. Multi vector implementation
D. Handshaking
ii. Explicate (hardware / software) based control
ii. Implicate (timing ) based control
E. Serial I/O - handshaking
i. Networking fundamentals
ii. Asynchronous
a. Signal characteristics
b. ASCII protocol
iii.
Synchronous
a. I2C
b. SPI
F. Capture and Compare
i. Pulse Width Modulation (PWM) - Timer compare
ii Event Timing / Frequency measurement
b. Time Capture - Pulse counting - speed sensing (tachometer)
4. Microprocessor Sensor Electronics
A. Fundamental Electronic Components
i. Op Amp
ii. Voltage Comparator
ii. R2R Ladder networks
B. Digital to Analog Conversion (DAC)
i. Single slope and dual slope conversion
ii. Delta-sigma converters
iii. Flash ADC
5. Embedded System Applications (time permitting)
A. Communications Protocols
i. Multichannel Proportional Control for RC servos
ii. High Level Communications Protocols
a. IrDA
b. USB
B. Applications
i. Precision Agriculture
ii. Traffic signals
iii. Autonomous vehicles