| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123 |
- /****************************************Copyright (c)****************************************************
- **
- ** http://www.powermcu.com
- **
- **--------------File Info---------------------------------------------------------------------------------
- ** File name: uctsk_OSView.c
- ** Descriptions: The uctsk_OSView application function
- **
- **--------------------------------------------------------------------------------------------------------
- ** Created by: AVRman
- ** Created date: 2010-11-9
- ** Version: v1.0
- ** Descriptions: The original version
- **
- **--------------------------------------------------------------------------------------------------------
- ** Modified by:
- ** Modified date:
- ** Version:
- ** Descriptions:
- **
- *********************************************************************************************************/
- /* Includes ------------------------------------------------------------------*/
- #include <includes.h>
- #if (OS_VIEW_MODULE == DEF_ENABLED)
- /* Private variables ---------------------------------------------------------*/
- static OS_STK OSViewTerminalTaskStk[APP_TASK_OSVIEW_TERMINAL_STK_SIZE];
- static OS_EVENT *eventAppOSViewTerminalRxMbox;
- /* Private function prototypes -----------------------------------------------*/
- static void uctsk_OSViewTerminal(void *pdata);
- static void AppOSViewTerminalRx(CPU_INT08U rx_data);
- void App_OSViewTaskCreate (void)
- {
- CPU_INT08U os_err;
- os_err = os_err; /* prevent warning... */
-
- OSView_Init(OS_VIEW_BAUDRATE); /* OSView Init, baud rate = OS_VIEW_BAUDRATE */
- OSView_TerminalRxSetCallback(AppOSViewTerminalRx);
- OSView_RxIntEn(); /* Enable Rx Interrupts */
- eventAppOSViewTerminalRxMbox = OSMboxCreate((void *)0);
-
- os_err = OSTaskCreateExt((void (*)(void *)) uctsk_OSViewTerminal,
- (void * ) 0,
- (OS_STK * )&OSViewTerminalTaskStk[APP_TASK_OSVIEW_TERMINAL_STK_SIZE - 1],
- (INT8U ) APP_TASK_OSVIEW_TERMINAL_PRIO,
- (INT16U ) APP_TASK_OSVIEW_TERMINAL_PRIO,
- (OS_STK * )&OSViewTerminalTaskStk[0],
- (INT32U ) APP_TASK_OSVIEW_TERMINAL_STK_SIZE,
- (void * ) 0,
- (INT16U )(OS_TASK_OPT_STK_CLR | OS_TASK_OPT_STK_CHK));
- #if OS_TASK_NAME_EN > 0
- OSTaskNameSet(APP_TASK_OSVIEW_TERMINAL_PRIO, "Task OSView Terminal", &os_err);
- #endif
- }
- /*
- *********************************************************************************************************
- * AppTerminalRx()
- *
- * Description : Callback function for uC/OS-View
- *
- * Argument(s) : rx_data The received data.
- *
- * Return(s) : none.
- *********************************************************************************************************
- */
- static void AppOSViewTerminalRx (CPU_INT08U rx_data)
- {
- OSMboxPost(eventAppOSViewTerminalRxMbox, &rx_data);
- }
- static void uctsk_OSViewTerminal(void *pdata)
- {
- INT8U s[100];
- INT8U *key;
- INT8U err;
- (void)pdata; /* Prevent compiler warning */
- OSView_TxStr("\n?: Help (This menu)\n", 0);
- while (1) {
- key = (INT8U *)OSMboxPend(eventAppOSViewTerminalRxMbox, 0, &err);
- switch (*key) {
- case '1':
- sprintf((char *)s, "\nCPU Usage = %3u%%\n", OSCPUUsage);
- OSView_TxStr(s, 1);
- break;
- case '2':
- sprintf((char *)s, "\n#Tasks = %3u\n", OSTaskCtr);
- OSView_TxStr(s, 1);
- break;
- default:
- OSView_TxStr("\n\nMicrium, Inc.", 1);
- OSView_TxStr("\n1: CPU Usage (%)", 1);
- OSView_TxStr("\n2: #Tasks", 1);
- OSView_TxStr("\n?: Help (This menu)\n", 1);
- break;
- }
- }
- }
- #endif
- /*********************************************************************************************************
- END FILE
- *********************************************************************************************************/
|