User Tools

Site Tools


start

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

start [2022/01/31 12:09]
scott
start [2023/01/10 01:39] (current)
scott [Project Setup]
Line 6: Line 6:
  
   * [[Milestone 1]]: (Queues and Analog Board Verification)   * [[Milestone 1]]: (Queues and Analog Board Verification)
-  * [[Milestone 2]]: (Implementing ​Filters in Matlab) +  * [[Milestone 2]]: (Implement ​Filters in Matlab) ​[[milestone_2_task_1|Task 1]], [[milestone_2_task_2|Task 2]], [[milestone_2_task_3|Task 3]] 
-  * [[Milestone 3]]: (Implementing ​Filtering Code, State Machines, in C) [[milestone_3_task_1|Task 1]], [[milestone_3_task_2|Task 2]], [[milestone_3_task_3|Task 3]]. +  * [[Milestone 3]]: (Implement ​Filtering Code, State Machines, in C) [[milestone_3_task_1|Task 1]], [[milestone_3_task_2|Task 2]], [[milestone_3_task_3|Task 3]] 
-  * [[Milestone 4]]: (Adding ​the Guns and Analog Boards with Testing, with Statistics)+  * [[Milestone 4]]: (Add the Guns and Analog Boards with Testing ​and Statistics)
   * [[Milestone 5]]: (Implement a Complete Laser Tag Game with Sound)   * [[Milestone 5]]: (Implement a Complete Laser Tag Game with Sound)
-  * [[Milestone 6]]: (Creative Project: Augment or Modify the Laser Tag System).  +  * [[Milestone 6]]: (Creative Project: Augment or Modify the Laser Tag System)
-  * [[http://​byu-cpe.github.io/​ecen330/​|Link to 330 Web Page]]+
  
 ---- ----
Line 17: Line 16:
 ===== Class Overview ===== ===== Class Overview =====
  
-In this course you will construct a complex, multi-player laser-tag system that will help to integrate your knowledge and experience from the other three Junior-Core courses: ECEn 340 (Analog Circuit Design), ECEn 380 (Signal Processing),​ and ECEn 330 (Programming Embedded Systems). The theories, concepts and lab exercises from these three courses combine to complete an entire system. The analog designs from ECEn 340 provide the shot-firing LED, shot-detecting photo-diode and associated analog electronics to interface with the ECEn 330 board. The theories and algorithms that you learned about in ECEn 380 provide the signal-processing necessary to detect **when** a player has been shot and also to determine **which** player was the shooter. Finally, the programming exercises and experience ​with the ECEn 330 board from ECEn 330 will help you write the necessary '​C'​ code to create a final working system.+In this course you will construct a complex, multi-player laser-tag system that will help to integrate your knowledge and experience from the other three Junior-Core courses: ECEn 340 (Analog Circuit Design), ECEn 380 (Signal Processing),​ and ECEn 330 (Programming Embedded Systems). The theories, concepts and lab exercises from these three courses combine to complete an entire system. The analog designs from ECEn 340 provide the shot-firing LED, shot-detecting photo-diode and associated analog electronics to interface with the ZYBO board. The theories and algorithms that you learned about in ECEn 380 provide the signal-processing necessary to detect **when** a player has been shot and also to determine **which** player was the shooter. Finally, the programming exercises and embedded system ​experience from ECEn 330 will help you write the necessary '​C'​ code to create a final working system.
  
 The process of creating the laser-tag system is broken into several milestones. This helps students to schedule their effort and to focus on specific portions of the system during implementation. Please see the [[milestones|milestones page]] for more details. The process of creating the laser-tag system is broken into several milestones. This helps students to schedule their effort and to focus on specific portions of the system during implementation. Please see the [[milestones|milestones page]] for more details.
Line 37: Line 36:
 ===== Linux Requirement ===== ===== Linux Requirement =====
  
-The embedded software for the laser tag system builds upon the environment and code base used in ECEN 330. You will need access to a Linux system with an attached ZYBO board to implement and test the software you will write. Unlike 330, it is not possible to use the 330 emulator to test your code in this project class. One major reason for this is the current lack of support for emulating the ADC converter. For a list of possible build environments,​ please see the [[linux_options|Linux options page]].+The embedded software for the laser tag system builds upon the environment and code base used in ECEN 330. You will need access to a Linux system with an attached ZYBO board to implement and test the software you will write. Unlike 330, it is not possible to use the 330 emulator to test your code in this project class. One major reason for this is the current lack of support for emulating the analog-to-digital ​converter ​(ADC). For a list of possible build environments,​ please see the [[linux_options|Linux options page]].
  
 ---- ----
Line 43: Line 42:
 ===== Project Setup ===== ===== Project Setup =====
  
-Clone the current student repo from the [[http://byu-cpe.github.io/​ecen330/​setup/​step-2/ | 330 Setup Step #2 page]]. The repo contains everything necessary to work on the lasertag system. ​If you are re-cloning and want to keep your old ecen330 directoryplease rename it to something different and clone the current 330 repo as instructed on the 330 setup pageAfter cloning the repository, make sure you run "make setup" ​from within ​the top-level ​directory. This will install the necessary programming tools for the ZYBO board.+Download this archive file ({{:ecen390.tgz|ecen390.tgz}}) and extract it into your home directory (or another project directory if you prefer). After extracting it, you will have a new directory called ecen390. The command to extract the archive is: 
 + 
 +<​code>​ 
 +tar -xzf ecen390.tgz 
 +</​code>​ 
 + 
 +The ecen390 project directory ​contains everything necessary to work on the lasertag system. ​To setup the CMake build systemtype the following commands: 
 + 
 +<​code>​ 
 +cd ecen390/​build 
 +cmake .
 +</​code>​ 
 + 
 +To build your projecttype ''​make'' ​from the ecen390/​build ​directory
 + 
 +<​code>​ 
 +make 
 +</​code>​ 
 + 
 +To download and run your project on the ZYBO board, type the following from the ecen390/​build directory:​ 
 + 
 +<​code>​ 
 +make run 
 +</​code>​
  
 ---- ----
start.1643656165.txt.gz · Last modified: 2022/01/31 12:09 by scott