Introduction to uCOS-II V2.6
About SwiftACT
• A Technology services startup company
o
Under establishment
• Areas of specialties:
o
o
Mobile telecommunication services development
Embedded systems development
• Types of services:
o
o
o
o
Consultation
Managed services
Sourcing
Training
Amr Ali Abdel-Naby@2010
Introduction to uCOS-II V2.6
About Me
• Graduated 2004
o
ECE, ASU: 5 yrs distinction
• 5+ years in embedded systems development
o
SDLC, Apps, MW, DD, Porting, ...
• 3+ years in SW engineering
o
PSP, CMMI, Systematic reuse, ...
• 3+ years in SW testing
o
IBM certified, ISTQB certified, ...
Amr Ali Abdel-Naby@2010
Introduction to uCOS-II V2.6
Copyright
• Materials in this course is the property of Amr Ali Abdel-Naby.
• Reproduction or transmission of the materials in any manner
without the copyright owner permission is a law violation.
Amr Ali Abdel-Naby@2010
Introduction to uCOS-II V2.6
Course References
• MicroC/OS-II The Real-Time Kernel, 2nd Edition, by Jean J.
Labrosse
Amr Ali Abdel-Naby@2010
Introduction to uCOS-II V2.6
Outline
•
•
•
•
•
•
•
•
•
•
Introduction to µC/OS-II
Kernel Structure
Task Management
Time Management
Semaphore Management
Mutual Exclusion Semaphores
Event Flag Management
Message Mailbox Management
Message Queue Management
Memory Management
Amr Ali Abdel-Naby@2010
Introduction to uCOS-II V2.6
Outline
•
•
•
•
•
•
•
•
•
•
Introduction to µC/OS-II
Kernel Structure
Task Management
Time Management
Semaphore Management
Mutual Exclusion Semaphores
Event Flag Management
Message Mailbox Management
Message Queue Management
Memory Management
Amr Ali Abdel-Naby@2010
Introduction to uCOS-II V2.6
Time Management APIs
• Available time operations are:
o
o
o
Delaying a task
Resuming a delayed task
System time getting & setting
Amr Ali Abdel-Naby@2010
Introduction to uCOS-II V2.6
Delaying a Task, OSTimeDly
void OSTimeDly (INT16U ticks)
•
ticks: The time delay that the task will be suspended in number of clock
ticks
10ms
time
OSTickISR()
All HPT
OSTimeDly(1)
LPT
5ms
Amr Ali Abdel-Naby@2010
Introduction to uCOS-II V2.6
Delaying a Task, OSTimeDlyHMSM
INT8U OSTimeDlyHMSM (INT8U hours, INT8U minutes, INT8U
seconds, INT16U milli)
•
•
•
•
•
hours: The number of hours that the task will be delayed
minutes: The number of minutes
seconds: The number of seconds
milli: The number of milliseconds
Return value:
o
o
o
No error
Zero delay
Invalid minutes, seconds, & milli seconds
Amr Ali Abdel-Naby@2010
Introduction to uCOS-II V2.6
Resuming a Delayed Task,
OSTimeDlyResume
INT8U OSTimeDlyResume (INT8U prio)
•
•
prio: Specifies the priority of the task to resume
Return value:
o
o
o
o
No error
Invalid priority
Task is not delayed.
Task does not exist.
Amr Ali Abdel-Naby@2010
Introduction to uCOS-II V2.6
System Time, OSTimeSet
void OSTimeSet (INT32U ticks)
•
ticks: Specifies the new value that OSTime needs to take
Amr Ali Abdel-Naby@2010
Introduction to uCOS-II V2.6
System Time, OSTimeGet
INT32U OSTimeGet (void)
•
Return value:
o
The current value of OSTime
Amr Ali Abdel-Naby@2010
Introduction to uCOS-II V2.6