User Tools

Site Tools


lab2

Differences

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

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
lab2 [2014/01/20 02:59] allisonlab2 [2014/01/21 05:07] (current) allison
Line 1: Line 1:
 ====== Lab 2 ====== ====== Lab 2 ======
- 
-[[ucos background|Background Information]] 
- 
-==== Evaluation ==== 
-μC/OS-II source code is divided into platform dependent and platform independent files. Platform independent files can be found in Micrium/Software/uCOS-II/Source/. Platform independent files can be found in Micrium/Software/uCOS-II/Ports/HCS12/Paged/Metrowerks/SerialMonitor/ 
- 
-By study the source structure and Micrium/ReadMe/uCOS-II-RefMan.pdf briefly answer the following questions: 
-  - Write a pseudo code using μC/OS-II to create two tasks and protect their critical sections that is accessing a common variable called XYZ. 
-  - In your own words, explain how multitasking is achieved in the μC/OS-II (pay special attention to os_cpu_a.s)? 
- 
- 
- 
- 
- 
- 
- 
- 
- 
- 
- 
- 
- 
- 
- 
  
  
 +==== Background ====
  
 +[[ucos background|Background Information]]
  
  
Line 32: Line 10:
  
 ==== Prelab studies ==== ==== Prelab studies ====
-  * Please make sure to read and understand the license agreements: +Please make sure to read and understand the license agreements listed below
-    * {{:legalnotice_os_only.pdf}} +  * {{:legalnotice_os_only.pdf}} 
-    * {{:micrium-sla-cpu.pdf}} +  * {{:micrium-sla-cpu.pdf}} 
-    * {{:micrium-sla-p1.pdf}} +  * {{:micrium-sla-p1.pdf}} 
-    * {{:micrium-sla-pl.pdf}} +  * {{:micrium-sla-pl.pdf}}
-  * Make sure you fully understand the previous labs ([[lab1|Lab 1]] and [[lab2|Lab 2]]). +
-  * Also read the application note 1456 which provides a general information about Lab 3 stationary project: +
-    * {{:an-1456_c_os-ii_dragon12_development_board_.pdf}}+
  
-==== Evaluation ==== 
-Demonstrate the uploaded program to your T.A. Provide brief answers to the following questions: 
-  * What is the process of creating a new task in μC/OS-II? Provide a pseudo sample code by study “KeypadTask” code block used in the lab. 
-  * Explain how OSFlagPend function and how it prevents the “KeypadTask” from accessing the critical LCD resource? 
  
-==== Procedure ==== +Also reference the following study guides and application notes:
-  * Open the lab stationary using CodeWarrior located in: +
-<code>LAB03/Micrium/Software/EvalBoards/Freescale/MC9S12DG256B/WytecDragon12/Metrowerks/Paged/ +
-   OS-Probe-LCD/OS-Probe-LCD.mcp</code> +
-  * Recompile the project and transfer the binaries to Dragon12 board as explained in [[lab1|Lab 1]]. {{:icon3.jpg}} +
- +
-==== Reference Manuals =====+
   * {{:an1004_the_10-minute_guide_to_rtos_.pdf}}   * {{:an1004_the_10-minute_guide_to_rtos_.pdf}}
   * {{:ucos-ii-refman.pdf}}   * {{:ucos-ii-refman.pdf}}
Line 66: Line 31:
   * {{:releasenotes.pdf}}   * {{:releasenotes.pdf}}
  
-==== Resources ===== 
-  * {{:lab3.zip}} 
  
  
 +  * Make sure you fully understand the previous labs ([[lab1|Lab 1]]).
 +  * Also read the application note 1456 which provides a general information about the stationary project used in the lab:
 +    * {{:an-1456_c_os-ii_dragon12_development_board_.pdf}}
  
  
 +==== Prelab Evaluation ====
 +μC/OS-II source code is divided into platform dependent and platform independent files. Platform independent files can be found in Micrium/Software/uCOS-II/Source/. Platform independent files can be found in Micrium/Software/uCOS-II/Ports/HCS12/Paged/Metrowerks/SerialMonitor/
 +
 +By studying the source structure and Micrium/ReadMe/uCOS-II-RefMan.pdf briefly answer the following questions:
 +  * What is the process of creating a new task in μC/OS-II? Provide sample pseudo code by studying the “KeypadTask” code block used in the lab.
 +  * Explain how OSFlagPend function works and how it prevents the “KeypadTask” from accessing the critical LCD resource.
 +  * Prepare a version of the demo program that guards the LCD resource using semaphores instead of OSFlag (see {{:an1005_inter-process_communication_.pdf}})
 +
 +
 +==== Procedure ====
 +  * Open the lab stationary using CodeWarrior located in:
 +<code>LAB03/Micrium/Software/EvalBoards/Freescale/MC9S12DG256B/WytecDragon12/Metrowerks/Paged/OS-Probe-LCD/OS-Probe-LCD.mcp</code>
 +  * Recompile the project and transfer the binaries to Dragon12 board as explained in [[lab1|Lab 1]]. Try the program and ensure you know how it works {{:icon3.jpg?30}}
 +  * Do the same for the program you developed in the prelab to use semaphores to protect the critical code segments in the LCD access. Test and debug. 
 +  * Demonstrate the working program to your T.A.
 +
 +Submit the source code and prelab answers using the command: //submit 4352 lab2 filename// to submit your prelab report and and code. (Use “man submit” for details on how to use the submit command. The “course” is “4352”, the “assignment” is “lab2”.)
  
  
Line 77: Line 60:
  
 ==== Resources ===== ==== Resources =====
 +  * {{:lab02.zip}}
   * {{:serialmonitor.zip}}   * {{:serialmonitor.zip}}
lab2.1390186786.txt.gz · Last modified: 2014/01/20 02:59 by allison

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki