基于μCOS的預(yù)定義UI交互設(shè)計(jì)
3.3 預(yù)定義UI交互軟件流程
預(yù)定義的菜單設(shè)計(jì)針對(duì)的是多層次的菜單設(shè)計(jì),可以輕松實(shí)現(xiàn)多層次菜單顯示。根據(jù)操作界面設(shè)計(jì)各個(gè)菜單項(xiàng),即:在預(yù)定義的菜單項(xiàng)結(jié)構(gòu)體中定義菜單項(xiàng)的標(biāo)識(shí)符、坐標(biāo)、上下臨菜單項(xiàng)標(biāo)識(shí)符、父子菜單標(biāo)識(shí)符和可響應(yīng)按鍵集等等。用戶在當(dāng)前有效菜單項(xiàng)上點(diǎn)擊按鍵,系統(tǒng)根據(jù)動(dòng)作ID散轉(zhuǎn),在可響應(yīng)按鍵集中找出相應(yīng)的響應(yīng)動(dòng)作,圖5為按鍵響應(yīng)動(dòng)作類型散轉(zhuǎn)流程圖。本文引用地址:http://butianyuan.cn/article/149764.htm
各按鍵通過(guò)相似的響應(yīng)流程完成各自不同的響應(yīng)動(dòng)作,這里以單個(gè)按鍵為例,對(duì)按鍵動(dòng)作響應(yīng)流程進(jìn)行介紹。圖6是一個(gè)UI交互任務(wù)流程,完成對(duì)UP按鍵的響應(yīng)動(dòng)作,動(dòng)作類型為RT_MOVE_UP。
系統(tǒng)上電后,首先對(duì)系統(tǒng)硬件和各變量進(jìn)行初始化,屏幕顯示首屏菜單,由活動(dòng)表示符指明當(dāng)前活動(dòng)菜單項(xiàng)。當(dāng)UP按鍵按下,進(jìn)入鍵盤中斷,隨即向μCOS中發(fā)送按鍵消息隊(duì)列,執(zhí)行UI任務(wù),在UI任務(wù)中將中斷掛起,而后運(yùn)行鍵盤掃描代碼,判斷出鍵值UP。此時(shí),UI任務(wù)將根據(jù)當(dāng)前活動(dòng)菜單標(biāo)識(shí)符執(zhí)行RT_MOVE_UP功能。首先判斷菜單顯示區(qū)域內(nèi)的當(dāng)前活動(dòng)菜單項(xiàng)標(biāo)識(shí)符(CAID)是否等于它的上臨菜單(CAID.上臨ID),如果相等,不做任何操作;如果不等,再判斷CAID是否為當(dāng)前菜單顯示區(qū)域內(nèi)正在顯示的最頂端的菜單項(xiàng)標(biāo)識(shí)符(TMID)。如果CAID=TM ID,那么CAID=TMID=CAID.上臨ID,調(diào)用顯示菜單函數(shù),顯示此屏幕的上一屏菜單;如果CAID不是TMID,則CAID=CAID.上臨ID,調(diào)用顯示菜單函數(shù),活動(dòng)表示符指向CAID.上臨ID。
3.4 UI交互設(shè)計(jì)實(shí)物圖
UI交互設(shè)計(jì)實(shí)物圖如圖7所示。
4 結(jié)語(yǔ)
UI的廣泛應(yīng)用是當(dāng)今計(jì)算機(jī)發(fā)展的重大成就之一,它強(qiáng)調(diào)的是計(jì)算機(jī)對(duì)于人的反饋交互作用。嵌入式UI具有下面幾個(gè)方面的基本要求,輕型、占用資源少,高性能、高可靠性,便于移植、可配置。本項(xiàng)目設(shè)計(jì)的UI是基于預(yù)定義的文本菜單,具有菜單設(shè)計(jì)靈活、占用資源少的優(yōu)點(diǎn),同時(shí)支持多層次菜單,菜單功能豐富,適用于大量的中等規(guī)模的嵌入式系統(tǒng)應(yīng)用。
評(píng)論