====== Milestone 3 ====== In this milestone you will implement most of the 'C' code that implements the laser-tag system. ===== Goal ===== Demonstrate the system working with a feedback connection (built into the ECEn Development Board) connecting the output of the transmitter to the input of the ADC. You will demonstrate the ability of your system to: * detect hits on each of the 10 frequencies, * no false detects, * no bouncing of the trigger switch, i.e., register one hit for each push/release of the trigger, * display the computed power of each of the channels on the TFT with the provided histogram package. ===== Organization ===== This milestone will be divided into three tasks that will be due and passed off as recorded in Learning Suite. - [[Milestone 3 Task 1 | Task 1]]. Implementation and verification of the FIR and IIR filters (filter.c). Demonstrate all sets of IIR coefficients. - [[Milestone 3 Task 2 | Task 2]]. Implementation of the transmitter state-machine (transmitter.c), the trigger state-machine (trigger.c), the hitLedTimer state-machine (hitLedTimer.c), the lockoutTimer state-machine (lockoutTimer.c), and the code to compute the power in the output from each IIR band-pass filter. - [[Milestone 3 Task 3 | Task 3]]. Implementation of the detector (detector.c) and integration with all other parts of the project in order to perform the final pass-off for the overall milestone using the feedback provided by the development board. ===== Software Coding Standard ===== All of the tasks comprising Milestone 3 are software tasks and must adhere to the [[https://byu-cpe.github.io/ecen330/other/coding-standard/|coding standard]]. **Exception: clang-format is not required. Ignore any clang-format rules.** See learning suite for a breakdown of the credit that you receive for pass-off and source-code submission.