MDK-ARM Keil, MDK-ARM Datasheet - Page 36
![KIT REALVIEW MCU DEVELOPMENT](/photos/9/32/93274/mdk-arm_sml.jpg)
MDK-ARM
Manufacturer Part Number
MDK-ARM
Description
KIT REALVIEW MCU DEVELOPMENT
Manufacturer
Keil
Type
Compiler and IDEr
Specifications of MDK-ARM
For Use With/related Products
ARM MCUs
Lead Free Status / RoHS Status
Lead free / RoHS Compliant
- Current page: 36 of 156
- Download datasheet (3Mb)
36
Barrier Turnstile
Although a rendezvous is very
useful for synchronizing the
execution of code, it only works
for two functions. A barrier is a
more generalized form of
rendezvous, which works to
synchronize multiple tasks. A
barrier is shared between a
defined number of tasks. As
each task reaches the barrier it
will halt and de schedule. When
all of the tasks have arrive at the
barrier it will open and all of the tasks will resume execution simultaneously.
The barrier uses semaphores to build a code object called a turnstile. The
turnstile is like a gate. Initially the turnstile gate is locked. When all of the tasks
have arrived at the turnstile, it will open allowing all of the tasks to continue
‘simultaneously’. Once the critical code has been executed each task will pass
through a second exit turnstile. The exit turnstile is used to lock the first entry
turnstile and reset the barrier object so the barrier can be reused.
The barrier object is a sophisticated use of semaphores so it its worth spending
some time studying it. The barrier object uses three semaphores, the entry
turnstile, Entry_Turnstile, the exit turnstile, Exit_Turnstile, and a Mutex, which
ensures that only one task at a time executes the critical code section. The
general structure of the barrier is:
while(1)
}
Entry Turnstile code
Synchronised code section
Exit Turnstile code
{
Chapter 2. Developing With an RTOS
Related parts for MDK-ARM
Image
Part Number
Description
Manufacturer
Datasheet
Request
R
![MDK-ARM-B](/photos/28/43/284363/mdk-arm-basic_tmb.jpg)
Part Number:
Description:
KIT REALVIEW MCU DEVELOPMENT
Manufacturer:
Keil
Datasheet:
![MDK-ARM-B-SM](/photos/15/87/158780/keil_software_tmb.jpg)
Part Number:
Description:
Development Software SUPPORT EXTENSION FOR MDK-ARM-B
Manufacturer:
Keil Software
![MDK-ARM-SM](/photos/15/87/158780/keil_software_tmb.jpg)
Part Number:
Description:
Development Software SUPPORT EXTENSION FOR MDK-ARM
Manufacturer:
Keil Software
![MDK-ARM-BASIC](/photos/28/43/284363/mdk-arm-basic_tmb.jpg)
Part Number:
Description:
KIT REALVIEW MCU DEVELOPMENT
Manufacturer:
Keil
Datasheet:
![MDK-ARM-UF](/photos/15/87/158780/keil_software_tmb.jpg)
Part Number:
Description:
Development Software MCU DEV KIT FOR ARM UPG TO FLOATING LIC
Manufacturer:
Keil Tools
![MDK-ARM-F](/photos/15/87/158780/keil_software_tmb.jpg)
Part Number:
Description:
Development Software MCU DEV KIT FOR ARM W/ FLOATING LICENSE
Manufacturer:
Keil Software
![MDK-ARM3.1](/photos/26/86/268691/landingpagekeilrealviewarmkit_tmb.jpg)
Part Number:
Description:
Development Software MCU DEV KIT FOR ARM uVISION & C++ & RTX
Manufacturer:
Keil Tools
![MDK-ARM-SMB](/images/no-image3.png)
Part Number:
Description:
Development Software SUPP LICENSE RENEWAL 90+ DAYS NO TECH SUP
Manufacturer:
Keil Software
![KEIL-PK51-INTL](/images/manufacturer_photos/0/6/609/silicon_laboratories_inc_tmb.jpg)
Part Number:
Description:
KEIL C-COMPILER INTERNATIONAL
Manufacturer:
Silicon Laboratories Inc
![OM10045](/photos/9/21/92162/om10045_tmb.jpg)
Part Number:
Description:
BOARD EVAL FOR LPC213X ARM MCU
Manufacturer:
NXP Semiconductors
Datasheet:
![TWR-K60N512-KEIL](/images/manufacturer_photos/0/2/262/freescale_semiconductor_tmb.jpg)
Part Number:
Description:
K60N512 Keil Tower Kit
Manufacturer:
Freescale Semiconductor
Datasheet: