迪文DGUS屏利用os實現進度條功能

DGUS屏如何做進度條?
方法一:比如0-100 做100個圖標,下線0 ,上限100,用圖標的辦法解決,這種方法的缺點是圖標的長寬大小不能超過255x255,如果刻度需要精確,需要美工做很多圖片。這種方法能處理做圓形的進度條
方法二:圖片動畫顯示,也就是說要利用圖片切換的原理。
方法三:是基本圖形剪切,也就是吧其他頁面的進度條的依照座標剪切過來。另外的就是矩形填充等,這樣需要單片機發指令或者os處理,
等等

本文我們用os計算好座標畫矩形填充處理。我們先算好起始座標(20,)

指令:5A A5 +長度+ 82 0005 0004 0001 +左上角座標+左下角座標 + F800紅色
用戶如果不用os處理,串口發矩形填充指令也行

os程序設計實例如下:

;先取座標:右下角x/100就能隨着變化,設當0005H=100時 左上角座標(20.280)右下角座標(20,300)
;取x橫座標變化範圍420-20=400,分成100等分,則變化量爲4即隨着 0005的x 變化爲20+4x

CALL 進度條
END
進度條:
LDWR R0,0005H ;0005h是一個整數類型的數據顯示0-100,這裏可以利用控件設置帶好單位%
MOVXR R70,1,1
LDWR, R116,0004H ;加載變量命令及固定不變座標量
LDWR R118,0001H
LDWR R120,20
LDWR R122,280
LDWR R126,300
LDWR R128,F800H
LDWR R140,4
LDBR R142,0,30 ;清零變量
MOV R70,R142,2
SMAC R140,R142,R144 ;乘4
LDWR R150,20
ADD R144,R148,R152 ;加20
MOV R158,R124,2
LDWR R0,0020H ;基本圖形用來顯示矩形填充的地址0020H
MOVXR R116,0,7
RET

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章