<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于arm2210開(kāi)發(fā)板的移動(dòng)機器人人機界面設計

基于arm2210開(kāi)發(fā)板的移動(dòng)機器人人機界面設計

作者: 時(shí)間:2012-11-05 來(lái)源:網(wǎng)絡(luò ) 收藏


圖標菜單選擇
界面中還需實(shí)現對圖標菜單的選擇操作。i2c器件zlg7290提供了i2c接口功能和鍵盤(pán)中斷信號。i2c總線(xiàn)是philips推出的芯片間串行傳輸總線(xiàn),它以2根連線(xiàn)實(shí)現了完善的全雙工同步數據傳送,可以方便的構成多機系統和外圍器件擴展系統。i2c總線(xiàn)采用了器件地址的硬件設置方法,通過(guò)軟件尋址完全避免了器件的片選線(xiàn)尋址方法,從而使硬件系統具有最簡(jiǎn)單而靈活的擴展方法。i2c操作模式分為主模式i2c和從模式i2c,分別對應lpc2210作為主機和從機。
本文采用主模式i2c發(fā)送接收數據,從而控制三個(gè)按鍵s11、s12、s13的掃描并檢測其連擊次數。程序中先設置好默認菜單,再調用函數zlg7290_getkey()讀取被按下的鍵值。zlg7290_getkey()函數通過(guò)調用ircvstr (zlg7290,1,rece,1),直接讀取器件zlg7290上的按鍵值。若s11被按下,表示指向上一個(gè)圖標菜單;若s12被按下,表示選擇當前的圖標功能;若s13被按下,表示指向下一個(gè)圖標菜單。
key = zlg7290_getkey();
if(key==key_ok) break; // 點(diǎn)擊ok 鍵選擇
if(key==key_next)
{ mainmenu[select].state = 0; // 取消上一選擇
gui_menuicodraw(mainmenu [select]);
select++; // 指向下一菜單
if(select>2) select=0;
mainmenu[select].state = 1;
gui_menuicodraw(mainmenu [select]);
}
if(key==key_back)
{ mainmenu[select].state = 0; // 取消上一選擇
gui_menuicodraw(mainmenu [select]);
if(select==0) select=2;
else select--; // 指向下一菜單
mainmenu[select].state = 1;
gui_menuicodraw(mainmenu [select]);

行使軌跡及相關(guān)參數顯示
為了能實(shí)時(shí)更新顯示數據及行使軌跡,pc104將的速度,行駛方向,轉角等信息轉化為液晶屏上的坐標信息,并調用基本繪圖函數gui_line(uint32 x0, uint32 y0, uint32 x1, uint32 y1, tcolor color),畫(huà)出當前行駛軌跡;同時(shí),將新的速度值及與前方障礙物的距離值更新到相應位置。
顯示效果
圖3為實(shí)現效果圖,整個(gè)顯示窗口大小為240*128;圖標菜單大小為16*16,共有六個(gè)圖標;用戶(hù)可以根據自己需要添加圖標及對應功能。行駛軌跡顯示窗口大小為160*100;其他運動(dòng)參數顯示窗口大小為80*100,可以顯示當前的速度、障礙物的距離和機器人旋轉角度。圖中小車(chē)位置表示軌跡的起點(diǎn),左下角有坐標顯示和比例尺1:500。

基于arm2210開(kāi)發(fā)板的移動(dòng)機器人人機界面設計
圖3 實(shí)現效果圖

結語(yǔ)

隨著(zhù)嵌入式系統應用的飛速發(fā)展,人機交互系統的開(kāi)發(fā)將更加廣泛。本文闡述的基于嵌入式系統的移動(dòng)機器人人機界面的設計方法,這種方法設計簡(jiǎn)單,成本低,使操作者與機器人的交互更加友好。

參考文獻:

[1].t6963cdatasheethttp://www.dzsc.com/datasheet/t6963c_635050.html.
[2].zlg7290datasheethttp://www.dzsc.com/datasheet/zlg7290_734333.html.
[3].lpc2210datasheethttp://www.dzsc.com/datasheet/lpc2210_454566.html.
[4].tms320f2812datasheethttp://www.dzsc.com/datasheet/tms320f2812_1116432.html.
[5].arm7tdmi-sdatasheethttp://www.dzsc.com/datasheet/arm7tdmi-s_1231795.html.
[6].rs232datasheethttp://www.dzsc.com/datasheet/rs232_585128.html.
[7].s11datasheethttp://www.dzsc.com/datasheet/s11_1617658.html.
[8].s12datasheethttp://www.dzsc.com/datasheet/s12_1619040.html.


上一頁(yè) 1 2 3 下一頁(yè)

評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>