CMSIS Example - osMutex osMutexWait osMutexRelease

时间:2014-07-19 15:09:05   收藏:0   阅读:1099
osMutexDef( Mutex );
osMutexId mutex;

void Thread0( void * arg);
void Thread1( void * arg);

osThreadDef( Thread0, Thread0, osPriorityNormal, 512 );
osThreadDef( Thread1, Thread1, osPriorityAboveNormal, 512 );


void Thread0( void * arg)
{
  while(1)
  {
    osMutexWait( mutex, osWaitForever );
    osDelay( 10 );
    osMutexRelease( mutex );
    osDelay( 10 );
  }
}

void Thread1( void * arg)
{
  while(1)
  {
    osMutexWait( mutex, osWaitForever );
    osDelay( 10 );
    osMutexRelease( mutex );
    osDelay( 10 );
  }
}

int main( void )
{
  osKernelInitialize();

  osThreadCreate( osThread(Thread0), (void *)100 );
  osThreadCreate( osThread(Thread1), (void *)200 );

  mutex = osMutexCreate( osMutex(Mutex) );

  osKernelStart();

  return 0;
}

CMSIS Example - osMutex osMutexWait osMutexRelease,布布扣,bubuko.com

原文:http://www.cnblogs.com/shangdawei/p/3854191.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!