lab2
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
lab2 [2010/02/24 18:01] – natalia | lab2 [2014/01/21 05:07] (current) – allison | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ==== Background Information | + | ====== |
- | === μC/OS-II Overview | + | |
- | μC/OS-II (read as MicroC/ | + | |
- | μC/OS-II is an extremely detailed and highly readable design study which is particularly useful to the embedded systems student. While documenting the design and implementation of the kernel, the book also walks through the many related development issues such as how to adapt the kernel for a new microprocessor, | ||
- | === μC/OS-II Important Features | + | ==== Background ==== |
- | Important features of μC/OS-II are ((Based on a presentation by Enric Pastor http:// | + | |
- | * Highly portable, scalable and preemptive real-time multitasking kernel that you only build what you need. | + | |
- | * It can manage a predefined maximum number of tasks. | + | |
- | * It can be expanded and connected to addons such as μC/GUI and μC/FS which are GUI and File Systems for μC/OS-II | + | |
- | * It supports all type of processors from 8-bit to 64-bit | + | |
- | μC/OS-II like most modern operating systems has the following components: | + | [[ucos background|Background Information]] |
- | * Task Management (i.e. Create, Delete, Change Priority and Suspend/ | + | |
- | * Time and Timer Management | + | |
- | * Fixed Sized Memory Block management. | + | |
- | * Inter-Task Communication (i.e. Message Mailboxes and Message Queues) | + | |
- | * Semaphores, Mutual Exclusion Semaphores | + | |
- | * Many external modules are available as the real-time addons to the core (μC/GUI, μC/FS, μC/CAN, μC/USB, μC/TCP-IP and many more). | + | |
- | μC/ | + | |
+ | |||
+ | |||
+ | ==== Prelab studies ==== | ||
+ | Please make sure to read and understand the license agreements listed below: | ||
+ | * {{: | ||
+ | * {{: | ||
+ | * {{: | ||
+ | * {{: | ||
+ | |||
+ | |||
+ | Also reference the following study guides and application notes: | ||
+ | * {{: | ||
+ | * {{: | ||
+ | * {{: | ||
+ | * {{: | ||
+ | * {{: | ||
+ | * {{: | ||
+ | * {{: | ||
+ | * {{: | ||
+ | * {{: | ||
+ | * {{: | ||
+ | * {{: | ||
+ | * {{: | ||
+ | |||
+ | |||
+ | |||
+ | * 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: | ||
+ | * {{: | ||
+ | |||
+ | |||
+ | ==== Prelab Evaluation ==== | ||
+ | μC/ | ||
+ | |||
+ | By studying the source structure and Micrium/ | ||
+ | * 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 | ||
+ | |||
+ | |||
+ | ==== Procedure ==== | ||
+ | * Open the lab stationary using CodeWarrior located in: | ||
+ | < | ||
+ | * Recompile the project | ||
+ | * 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 | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ==== Resources ===== | ||
+ | * {{: | ||
+ | * {{: |
lab2.1267034480.txt.gz · Last modified: 2010/02/24 18:01 by natalia