xiii
Examples
Examples
2-1 Creating and Referencing Dynamic Objects ................................................................ 2-17
2-2 Deleting a Dynamic Object .......................................................................................... 2-17
2-3 Sample Makefile for a DSP/BIOS Program.................................................................. 2-21
2-4 Declaring Functions in an Extern C Block .................................................................... 2-29
2-5 Function Overloading Limitation................................................................................... 2-29
2-6 Wrapper Function for a Class Method.......................................................................... 2-30
3-1 Gathering Information About Differences in Values ..................................................... 3-24
3-2 Gathering Information About Differences from Base Value.......................................... 3-25
3-3 The Idle Loop................................................................................................................ 3-30
4-1 Interrupt Behavior for C28x During Real-Time Mode ................................................... 4-14
4-2 Code Regions That are Uninterruptible........................................................................ 4-18
4-3 Constructing a Minimal ISR on C6000 Platform .......................................................... 4-23
4-4 HWI Example on C55x Platform .................................................................................. 4-23
4-5 HWI Example on C28x Platform .................................................................................. 4-24
4-6 Creating a Task Object................................................................................................. 4-45
4-7 Time-Slice Scheduling.................................................................................................. 4-46
4-8 Creating and Deleting a Semaphore ............................................................................ 4-59
4-9 Setting a Timeout with SEM_pend ............................................................................... 4-60
4-10 Signaling a Semaphore with SEM_post ....................................................................... 4-60
4-11 SEM Example Using Three Writer Tasks..................................................................... 4-61
4-12 Creating a Mailbox........................................................................................................ 4-65
4-13 Reading a Message from a Mailbox............................................................................. 4-65
4-14 Posting a Message to a Mailbox................................................................................... 4-66
4-15 MBX Example With Two Types of Tasks ..................................................................... 4-67
4-16 Using the System Clock to Drive a Task ...................................................................... 4-75
5-1 Linker Command File (C6000 Platform) ......................................................................... 5-4
5-2 Linker Command File (C5000 and C28x Platforms)....................................................... 5-4
5-3 Using MEM_alloc for System-Level Storage.................................................................. 5-5
5-4 Allocating an Array of Structures.................................................................................... 5-5
5-5 Using MEM_free to Free Memory .................................................................................. 5-6