基于μCOS的預定義UI交互設計
3.1 操作界面
根據電能計量終端的監控內容,設計菜單窗口和各菜單項對應的監控界面。設備上電后,將顯示版本號,接著(zhù)進(jìn)入菜單窗口。菜單窗口有4行,其中前2行顯示菜單項,后2行顯示實(shí)時(shí)時(shí)間。菜單項共有4個(gè),分別為交流電(包括市電和油電)、風(fēng)電和光電參數。通過(guò)上下按鍵在主窗口的前兩行進(jìn)行菜單項切換。菜單窗口設計如圖3所示。本文引用地址:http://dyxdggzs.com/article/149764.htm
在選擇的菜單項上點(diǎn)擊enter鍵進(jìn)入該菜單項對應的監控界面,監控內容分屏顯示。交流電子菜單分7屏來(lái)顯示交流電接入類(lèi)型(市電/油電)、交流電壓、交流電量、有功功率、市電/油電停電時(shí)間、市電/油電來(lái)電時(shí)間、功率因數等,圖4(a)為其中一屏;光電/風(fēng)電子菜單分2屏來(lái)顯示光電/風(fēng)電電壓、光電/風(fēng)電電流、光電/風(fēng)電電量、光電/風(fēng)電功率等,圖4(b)為其中一屏。用戶(hù)可通過(guò)up,down鍵和esc鍵來(lái)切屏和返回至菜單窗口。
3.2 預定義菜單設計
μCOS是一個(gè)源碼公開(kāi)、可移植、可固化、可裁剪、搶占式、支持多任務(wù)的實(shí)時(shí)操作系統,運行于沒(méi)有MMU的嵌入式微處理器上,采用可剝奪型內核進(jìn)行任務(wù)調度,實(shí)時(shí)性好,小巧且移植方便,適合工業(yè)控制領(lǐng)域使用。在μCOS中,設置一個(gè)UI任務(wù),完成響應用戶(hù)的鍵盤(pán)輸入、選擇菜單和根據用戶(hù)選擇的菜單執行相應操作。菜單設計成多層次形式。菜單設計采用預定義的集中描述,由程序解析菜單定義形式??身憫陌存I集也以數組的形式在菜單數組中定義。鍵盤(pán)服務(wù)設計成中斷級任務(wù),通過(guò)專(zhuān)用的消息隊列發(fā)送鍵值到UI任務(wù),實(shí)現實(shí)時(shí)信息顯示。
預定義的菜單由3部分控制:
①菜單顯示區域坐標。用來(lái)定義菜單顯示區域左上角字符坐標(符號常量MENU_AREA_LT_X,MENU_AREA_LT_Y,)和右下角字符坐標(符號常量MENU_AREA_RB_X,MENU_AREA_RB_Y),顯示的菜單要限制在這個(gè)區域中。
②菜單定義。設計一個(gè)結構體數組,數組中的每個(gè)結構體描述一個(gè)菜單項的各項設置,這個(gè)結構體數組稱(chēng)為“菜單定義結構體數組”(Menu Deftne Structure,MDS),在C代碼中命名為Menu_Define[]。
③當前有效菜單項指針。定義一個(gè)整型變量,稱(chēng)為“菜單指針”(Menu Pointer,MP),MP的值與MDS的數組下標相對應,指明了當前有效的菜單項。菜單定義采用枚舉類(lèi)型標識,以提高代碼的可讀性。
評論