testautimer.c

来自「以上三个程序是基于VxWorks嵌入式操作系统C源代码程序」· C语言 代码 · 共 51 行

C
51
字号

#include "vxWorks.h" 
#include "logLib.h"
#include "SemLib.h"
#include "TaskLib.h"
#include "wdLib.h"
#include "sysLib.h"
#include "stdio.h"

LOCAL SEM_ID semHighId;
int windDemoId;
int highPriId;
LOCAL void taskHighPri(void);

#define  AUX_CLK_MAX  1
int fre;
void windDemo(void)
{
 semHighId=semBCreate(SEM_Q_PRIORITY,SEM_FULL);
 fre=0;
 highPriId=taskSpawn("tHighPri",100,0x100,1000,(FUNCPTR)taskHighPri,0,0,0,0,0,0,0,0,0,0);
}
void InterISR(void)
{
 fre++;
 if(fre>=60)
 {
     semGive(semHighId);
     fre=0;
 }
}
void test(void)
{
 sysAuxClkDisable();                              
/* Disable system aux clock    */
 sysAuxClkConnect((FUNCPTR)InterISR, 0);
 sysAuxClkRateSet(AUX_CLK_MAX);       /* Set system aux clock rate   */
 sysAuxClkEnable(); 
}
LOCAL void taskHighPri(void)
{
 for(;;)
 {
  printf("this is from taskHighPri Task!\n");
  semTake (semHighId, WAIT_FOREVER);
 }
}
void testAuxStop()
{
sysAuxClkDisable();
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?