CH571F 開(kāi)啟藍(lán)牙運(yùn)行速度變慢

工程師好:

????我現(xiàn)在有一個(gè)需求,在CH571F上動(dòng)態(tài)刷新數(shù)碼管,刷新時(shí)間為1ms,使用TMOS新建一個(gè)1ms的任務(wù)循環(huán)執(zhí)行,未初始化藍(lán)牙時(shí)數(shù)碼管使用正常,沒(méi)有閃屏,但是初始化藍(lán)牙庫(kù)以后數(shù)碼管有微微閃屏,連接藍(lán)牙后閃屏很?chē)?yán)重,并且在開(kāi)啟10個(gè)TOMS taskID后藍(lán)牙找不到,感覺(jué)藍(lán)牙任務(wù)壓根就沒(méi)有執(zhí)行,這時(shí)候其他任務(wù)正常,請(qǐng)問(wèn)閃屏和找不到藍(lán)牙是什么情況?程序是直接在Peripheral例程上修改

正常:

??? //GAPRole_PeripheralInit();
??? //Peripheral_Init();
??? Display_Task_Init();

非正常:

??? GAPRole_PeripheralInit();
??? Peripheral_Init();

????Display_Task_Init();


數(shù)碼管刷新任務(wù):


void Display_Task_Init(void)
{
??? Led_GPIO_Init();
??? Display_TaskID = TMOS_ProcessEventRegister(Display_ProcessEvent);
??? tmos_start_reload_task(Display_TaskID, DISPLAY_TEST_EVT, 1);
??? Display_Numx(9999);
}


??? if ( events & DISPLAY_TEST_EVT )
??? {
??????? //Led_Display_Scan(Rope_Status.Led_Status);
??????? Led_Display_Scan(1);

????? return (events ^ DISPLAY_TEST_EVT);
??? }


你可以把刷數(shù)碼管的操作, 放在定時(shí)器中斷中運(yùn)行, 這種可以保證實(shí)時(shí)性.


中斷函數(shù)中,盡量不要有耗時(shí)操作,

通常情況下, 對(duì)于以ms為單位的定時(shí)中斷中運(yùn)行數(shù)個(gè)us的代碼, ,對(duì)ble的影響,可以忽略不計(jì).


另外為加快代碼運(yùn)行速度,你可以把對(duì)應(yīng)的函數(shù) 放到ram里, 比如上面你的刷數(shù)碼管的函數(shù).



只有登錄才能回復(fù),可以選擇微信賬號(hào)登錄

国产91精品新入口,国产成人综合网在线播放,九热这里只有精品,本道在线观看,美女视频a美女视频,韩国美女激情视频,日本美女pvp视频