MM32L系列M0/M3内核产品移植HuaweiLite OS源码PCB抄板
单片机源程序如下:
- PCB抄板
- /*
- 本程序适配MM32 MiniBoard /MCU-MM32L373PF
- */
- #include "los_sys.h"
- #include "los_tick.h"
- #include "los_task.ph"
- #include "los_config.h"
- #include "los_bsp_led.h"
- #include "los_bsp_key.h"
- #include "los_bsp_uart.h"
- #include "los_inspect_entry.h"
- #include "los_demo_entry.h"
- #include <string.h>
- #include "delay.h"
- extern void FunctionInit(void);
- //----------------------- First event -------------------------------//
- static UINT32 g_uwboadTaskID;
- LITE_OS_SEC_TEXT VOID LOS_BoadExampleTskfunc(VOID)
- {
- while (1)
- {
- LOS_EvbLedControl(LOS_LED1, LED_ON);
- LOS_EvbLedControl(LOS_LED2, LED_OFF);
- LOS_EvbUartWriteStr("Board Test\n");
- LOS_TaskDelay(500);
- LOS_EvbLedControl(LOS_LED1, LED_OFF);
- LOS_EvbLedControl(LOS_LED2, LED_ON);
- LOS_TaskDelay(500);
- }
- }
- void LOS_BoadExampleEntry(void)
- {
- UINT32 uwRet;
- TSK_INIT_PARAM_S stTaskInitParam;
- (VOID)memset((void *)(&stTaskInitParam), 0, sizeof(TSK_INIT_PARAM_S));
- stTaskInitParam.pfnTaskEntry = (TSK_ENTRY_FUNC)LOS_BoadExampleTskfunc;
- stTaskInitParam.uwStackSize = LOSCFG_BASE_CORE_TSK_IDLE_STACK_SIZE;
- stTaskInitParam.pcName = "BoardDemo";
- stTaskInitParam.usTaskPrio = 10;
- uwRet = LOS_TaskCreate(&g_uwboadTaskID, &stTaskInitParam);
- if (uwRet != LOS_OK)
- {
- return;
- }
- return;
- }
- //---------------------------Second event -------------------------//
- static UINT32 g_uwboadTaskID2;
- LITE_OS_SEC_TEXT VOID LOS_BoadKeyExampleTskfunc(VOID)
- {
- u8 t = 0;
- while (1)
- {
- t = KEY_Scan(0);
- switch(t)
- {
- case KEY3_PRES:
- LED3=!LED3;
- break;
- case KEY4_PRES:
- LED4=!LED4;
- break;
- default:
- LOS_TaskDelay(100);
- }
- }
- }
- void LOS_BoadKeyExampleEntry(void)
- {
- UINT32 uwRet;
- TSK_INIT_PARAM_S stTaskInitParam;
- (VOID)memset((void *)(&stTaskInitParam), 0, sizeof(TSK_INIT_PARAM_S));
- stTaskInitParam.pfnTaskEntry = (TSK_ENTRY_FUNC)LOS_BoadKeyExampleTskfunc;
- stTaskInitParam.uwStackSize = LOSCFG_BASE_CORE_TSK_IDLE_STACK_SIZE;
- stTaskInitParam.pcName = "BoardDemo";
- stTaskInitParam.usTaskPrio = 10;
- uwRet = LOS_TaskCreate(&g_uwboadTaskID2, &stTaskInitParam);
- if (uwRet != LOS_OK)
- {
- return;
- }
- return;
- }

芯片解密