文本顯示篇
Q:文本亂碼。
A:①字庫命名沖突
a、數(shù)字和英文亂碼:請檢查0 號字庫是否命名沖突了。0號位置的一個字庫,他的大小占用了12個空間 ,0-12之間不能有其他的字庫占用。0號字庫,他的大小可以隨意調(diào)用,最大是 64*128。
b、錄入的過程亂碼:請重新刷新12 輸入法文件(13 是觸控14 是顯示15-21 是預(yù)留22 是初始值文件 )。
c、漢字字庫亂碼:用戶自定義字庫從24 開始,每個序號占用256k 的大小DWIN_SET 里面除圖片和config的文件都可以看做是是字庫,用戶自定義字庫的命名是24-127之間的數(shù)字,如字庫大小大于256KB,假設(shè)為257KB,那么將占用兩個字庫空間,假設(shè)我們的字庫40.HZK 大小為257KB,那么占用了 40,41兩個字庫空間,下一個圖標(biāo)庫不能寫為41.HZK,必須由42 開始;(DZK和HZK的格式都支持)漢字字庫通常可以用TS3字庫軟件生成,制作的時候:調(diào)節(jié)預(yù)覽至飽滿,漢字字庫y點陣也就是高不能為奇數(shù),寬高的點陣數(shù)即為xy大小點陣,建議命名的時候后面命名加以注釋,便于識別如:66_GBK24_宋體.HZK,GBK比GB2312編碼范圍廣些,占用體積大些。
②配置錯誤
a、編碼方式選02GBK 用于顯示文本ASCII碼。
b、X、Y點陣設(shè)置比如 x選 12,y選 12,優(yōu)先選用偶數(shù)。
c、漢字字庫選擇和生成的點陣寬高沒有對應(yīng)好。
Q:文本顯示不全,后面的字沒有顯示出來。
A:①文本框拖得不夠長,
②文本長度(軟件的單位是字節(jié))設(shè)置限制了。
DGUS II屏,文本顯示控件只能顯示第一個字符或漢字:文本的長度除了不能設(shè)置拖得過短,另外顯示高度要足夠大,否則會出現(xiàn)只顯示第一個字符或漢字的情況。
Q:以前用 MINI屏,現(xiàn)在用 DGUSII屏低分屏替換,發(fā)現(xiàn)有些文本顯示控件出現(xiàn)亂碼。
A:MINI 屏的文本顯示,編碼方式選擇8bit編碼可以正常顯示數(shù)字字母,但是DGUS 和DGUSII 屏一樣,要選擇GBK 或者GB2312 才能正常顯示字符。
Q:初始值如何顯示?
A:迪文屏需要設(shè)定了特定的 22字庫文件上電加載到變量地址顯示初始值,第一步:需要設(shè)置里面勾選初始值由22 文件加載。DGUS II屏產(chǎn)品配置CFG文件08位置。第二步:需要將22 文件拷入屏里面。DGUS 的軟件點擊保存,生成配置文件之后,13、14、22文件會重新生成,13是觸控配置文件, 14是顯示的配置文件,配置文件下載勾選13,14并沒有把初始值 22文件下進去,SD卡可以單獨下入,或者串口下載choose File 點擊否,選22 文件,改position 為22,下發(fā)也是很快捷的。
Q:GBK 錄入控件上傳的地址是55FF,但是如果單片機要控制它的顯示內(nèi)容,55FF的話顯示就會漏兩個字節(jié)?
A:GBK錄入控件勾選了輸入狀態(tài)返回,才會導(dǎo)致控件位置多出倆個字節(jié),取消掉就可以。
數(shù)據(jù)變量篇
Q:數(shù)據(jù)變量的左對齊是什么意義,為什么我的數(shù)據(jù)變量不能對其居中。
A:如果是左對齊就是:
0
10
100
如果是右對齊就是:
0
10
100
所以數(shù)據(jù)變量的對其方式是:數(shù)據(jù)從個位變成十位的一個漸變方式,不是往用戶的界面拖一個數(shù)據(jù)變量控件的的框 ,數(shù)據(jù)顯示就能跑到框中間了,數(shù)據(jù)變量控件坐標(biāo)只認(rèn)定左上角坐標(biāo)的框的位置,與大小沒有關(guān)系。
Q:數(shù)字和英文顯示,比如數(shù)據(jù)變量顯示05,而不是5,前面需要補齊一個0。
A:方法一,數(shù)據(jù)變量本身沒有這個功能,用文本顯示控件ASCII 碼代替;
方法二,用藝術(shù)字變量選擇右對齊(右對齊的意義參考問題1),左邊添加一個圖標(biāo)變量控件地址和藝術(shù)字變量設(shè)置一樣,下限上限分別對應(yīng)0-10,其中0-9的時候都指向圖標(biāo)0 的小圖片,也就是做 9個小圖片內(nèi)容寫0的生成的ICO 圖標(biāo)文件,當(dāng)?shù)刂分禐?0的時候圖標(biāo)控件地址指向不顯示的10 空圖標(biāo),那么就可以補齊0了。這種方法的優(yōu)勢在于不需要多發(fā)其他的指令代碼,用戶繁瑣的地方也只是需要做0-9 的圖標(biāo)顯示藝術(shù)字;
現(xiàn)在的T5L 新增功能可以補0。
Q:數(shù)據(jù)變量控件怎么顯示小數(shù)?
A:DGUS屏的數(shù)據(jù)變量是采用定點小數(shù)格式,也就是小數(shù)點的位置先設(shè)置好,發(fā)送的指令實際還是16進制的整數(shù),變量地址0001,控件數(shù)據(jù)變量顯示,整數(shù)類型,設(shè)置2位整數(shù) 1位小數(shù),發(fā)送指令5A A5 05 82 0001 007D 顯示12.5。T5L 系列支持浮點數(shù)。
Q:數(shù)據(jù)變量控件怎么顯示負(fù)數(shù)小數(shù)?
A:變量地址0001,控件數(shù)據(jù)變量顯示,整數(shù)類型,設(shè)置2 位整數(shù)1 位小數(shù),發(fā)送指令5A A5 05 82 0001 FF83 顯示-12.5,F(xiàn)F83是-125的16進制碼。顯示負(fù)整數(shù)則不需要設(shè)置小數(shù)位就行。
Q:數(shù)據(jù)變量上電不顯示 0實現(xiàn)方法?
A:①改用文本 ASCII顯示。
②圖標(biāo)遮蓋法:對于整數(shù)類型的變量的數(shù)據(jù)變量顯示,可以做一個圖標(biāo)變量地址和數(shù)據(jù)變量一樣,圖標(biāo)控件置前顯示,可以蓋住底下的數(shù)據(jù)變量控件,下限0顯示圖標(biāo)X,X圖標(biāo)是和底圖一樣的一個小塊區(qū)域圖標(biāo),上限65535指向的一個空白處圖標(biāo)不顯示。
③基本圖形置前顯示,用一個當(dāng)前頁面區(qū)域粘貼蓋住。
④利用切換頁面組合方法,如果數(shù)據(jù)變量很少,當(dāng)?shù)刂窋?shù)據(jù)為0 的情況,切換到?jīng)]有放置數(shù)據(jù)顯示的界面。也就是說底圖都一樣,只是沒有放置顯示控件,就不會有初始0 掛在上面了。
⑤利用描述指針隱藏、更改顏色和底圖一致、改變位置,請參考文檔描述指針的用法。
Q:數(shù)據(jù)變量的單位怎么顯示攝氏度符號℃?
A:①0號字庫里面沒有包含溫度的攝氏度符號,如果實在是想用數(shù)據(jù)錄入的控件的單位去顯示,那么只能是是修改0 號字庫里面的數(shù)據(jù)把某個不常用的ASCII字符修改為攝氏度的符號,設(shè)計到各個點陣,工作量比較大。
②把單位直接做在底圖,或者用圖標(biāo)貼。
Q:數(shù)據(jù)變量的單位怎么能用指令修改?
A:①通過描述指針是可以修改要顯示的單位的。
②用圖標(biāo)在旁邊貼一個,修改圖標(biāo)的地址調(diào)用不同的單位圖標(biāo)。
Q:數(shù)據(jù)變量顯示的字體有毛邊,怎么去掉?
A:點陣字體的毛邊無法去掉的,迪文有個版本的加粗的0號字庫是毛邊現(xiàn)象會少點,但是字體比較粗。解決方法可以參考如下:
①如果是數(shù)據(jù)變量顯示,用藝術(shù)字變量圖標(biāo)顯示。
②選用數(shù)碼管類型的字體制作字庫,因為數(shù)碼管字體本身是直線型的,比常規(guī)的宋體格式的數(shù)字有筆畫弧度的地方會少很多,看上去就不顯得有過于明顯的毛刺。
③DGUS II 全系列產(chǎn)品新增“DGUS II 文本顯示”功能,完美解決點陣字庫顯示的鋸齒難題。該功能在字庫文件上做了重要升級,使字符邊緣處理更加細膩平滑。字庫用“DGUS II 文本顯示功能專用灰度字庫生成軟件”制作后,用“DGUS II 文本顯示”配置顯示。效果對比如下:
基本圖形顯示篇
Q:為什么對著地址發(fā)了一個剪切圖形,我再對著地址剪切的時候第一個就消失了?
A:例如基本圖形地址設(shè)置0x1001,第二個幾基本圖形地址設(shè)置0x1002。地址就是內(nèi)存,迪文的82指令寫的地址都是起始地址,延續(xù)寫了多少字,后面的一個控件就應(yīng)該不要占用之前的地址。對于基本圖形控件,是底層調(diào)用基本圖形控件時根據(jù)用戶發(fā)的繪圖指令進行判斷,所以地址間隔、圖形數(shù)量是需要將地址和數(shù)據(jù)分配規(guī)劃清晰,對于多個圖形剪切,可以一條指令發(fā)送剪切指令的多個數(shù)據(jù)包個數(shù)用于多個圖片剪切,也可以做多個基本圖形的框,分多條指令不同地址剪切。
Q:可以同一個基本圖形控件操作不同的指令嗎?如畫了一個矩形和一個圓。
A:不可以這樣操作,如果是要畫不同類型的指令控件,可以疊加多個基本圖形地址用于顯示。
曲線顯示篇
Q:曲線怎么加粗?
A:需要用其他的通道,發(fā)送指令的時候取值坐標(biāo)的大小值相差一個像素點的刻度。但是對于彎曲的曲線,可能會像素點的間隙不是很平滑。
T5,T5L動態(tài)曲線控件支持曲線線寬設(shè)置。
Q:曲線怎么保存?
A:DGUS 屏的曲線控件是用84指令直接對著通道寫值,如果是要將數(shù)據(jù)保存起來,需要經(jīng)過82 指令將數(shù)據(jù)寫到變量地址,在用80指令寫到數(shù)據(jù)庫,從數(shù)據(jù)庫讀取操作后,再把歷史數(shù)據(jù)用84 指令發(fā)到另外的顯示通道進行處理。
Q:曲線如何設(shè)置?
A:圖解如下:曲線通道 0 1 2 3 4 5 6 7 對應(yīng)指令中的 01 02 04 08 10 20 40 80
圖標(biāo)變量顯示篇
Q:怎么過濾圖標(biāo)背景色?
A:過濾背景色原理是選取小圖片左上角第一個像素點,與之完全一樣的顏色都會被過濾掉,也就是說如果發(fā)現(xiàn)自己的圖片背景色過濾不掉,不妨用畫圖板放大到最大,一看像素點就知道, 背景圖肯定不是純凈的。
Q:怎么實現(xiàn)圖標(biāo)能循環(huán)點擊一個按鍵切換?
A:1、用增量調(diào)節(jié)的上下限和圖標(biāo)地址對應(yīng)。
2、用按鍵返回切換頁面組合,也就是點擊了按鍵之后實質(zhì)是界面切換了。
推薦用方法
Q:怎么簡單實現(xiàn)圖標(biāo)多個按鍵分別點擊,例如123 三個圖標(biāo)對應(yīng)ABC三個按鍵,每個按鍵點擊了只會顯示對應(yīng)的一個圖標(biāo)?
A:方法一,設(shè)置圖標(biāo)控件地址三個都為0x1001,小圖標(biāo)123,三個按鍵地址都為0x1001,鍵值分別為123,每個圖標(biāo)的設(shè)置分別上限和下限和鍵值圖片對應(yīng)整齊就行;方法二,用位變量圖標(biāo)設(shè)置。
Q:怎么簡單實現(xiàn)圖標(biāo)多個按鍵分別點擊,例如1個圖標(biāo)對應(yīng)ABC三個按鍵,每個按鍵點擊了只會顯示對應(yīng)的圖標(biāo)1?
A:例如設(shè)置圖標(biāo)控件地址若干個都為0x1001 小圖片1,按鍵返回多個 地址 0x1001 鍵值1 2 3 4 56.....上限下限分別都寫123456 但是選取的對應(yīng)的圖標(biāo)指向都為1。
Q:迪文屏如何做進度條?
A:方法一,比如0-100 做100 個圖標(biāo),下線0 ,上限100,用圖標(biāo)的辦法解決,這種方法的缺點是圖標(biāo)的長寬大小DGUS1 的圖標(biāo)區(qū)域范圍不能超過255x255 像素,(T5的DGUSII 屏最大1023x1023支持圖標(biāo))如果刻度需要精確,需要美工做很多圖片。這里通常適合用做圓形的進度條;
方法二,圖片動畫顯示,也就是說要利用圖片切換的原理;
方法三,是基本圖形剪切圖片,也就是把其他頁面的進度條的依照坐標(biāo)剪切過來。另外的就是矩形填充等。
指令:5AA5+長度+82 000500040001 +左上角坐標(biāo)+左下角坐標(biāo)+F800紅色。用戶如果不用os處理,串口發(fā)矩形填充指令也行,先取坐標(biāo):例如要實現(xiàn)0~100 的范圍值,更改右下角x/100 就能隨著變化,例如取x 橫坐標(biāo)變化范圍420-20=400,分成100 等分,則變化量為4,每增減1 值坐標(biāo)的值增減4。
動畫圖標(biāo)顯示篇
Q:怎樣控制動畫圖標(biāo)的播放速度?
A:DGUS屏只能做重復(fù)的幀數(shù)來控制動畫圖標(biāo)的快慢,每個圖標(biāo)進行播放的速度是固定的DGUS 屏周期,例如200ms、120ms、80ms每幀;DGUS II 屏的動畫圖標(biāo)控件則可以設(shè)置播放時間。
Q:動畫圖標(biāo)只能顯示出來 1個,用的同一個地址?
A:動畫圖標(biāo)不能和圖標(biāo)變量一樣都用一個地址來同步進行,動畫圖標(biāo)的變量地址的第二個地址要預(yù)留,相當(dāng)于輔助動畫播放的一個地址,也就是說動畫圖標(biāo)變量占用2個變量地址。例如10011003 1004 這樣地址排列,如果用同一個地址,只會顯示出來一個。
Q:動畫圖標(biāo)怎么發(fā)指令改變停止?fàn)顟B(tài)的圖片?
A:用描述指針+06H地址Icon_Stop,指令舉例:5AA5 05 82 5006 0002 停止圖標(biāo)2號,這個圖標(biāo)的序號可以取該基地址ICO圖標(biāo)的所有的小圖片圖標(biāo)序號范圍。
例如,下圖這個框左邊的那一列是14 文件里面的編譯后地址,比如0x5A01代表底層對這個控件的識別代碼,用戶只需要了解,中間紅框的那一排描述指針是可以訪問到修改的地址。
動畫圖標(biāo)顯示的描述指針設(shè)置5000,參考上表紅色框內(nèi)可以看做偏移地址。
控制停止?fàn)顟B(tài)地址就是 5006,對著5006地址發(fā)送圖標(biāo)的序號,就可以實現(xiàn)更改了停止圖標(biāo)的顯示了。
位變量圖標(biāo)顯示篇
注意事項:
1、移動模式一般不需要用,需要明白他的顯示模式有8 個,參考開發(fā)指南的表格,里面有各種
組合的,例如某個位為1的時候是顯示圖標(biāo)、不顯示、顯示動畫,所以組合就有8種,可以通過下圖的位控制設(shè)置分別做不同的單個位的控件進行顯示。
如果下圖都全部勾選,是需要用移動模式,設(shè)置固定的像素點進行自行排列。可以分成多個勾選選的控件進行自由排列。
2、額外注意輔助地址的定義,輔助地址一般占用2個,單片機指令不參與范圍,是屏上面輔助顯示用的,當(dāng)設(shè)置的每個位控件用到動畫的,輔助地址不能重復(fù)使用。如果沒有用動畫模式,可以統(tǒng)一設(shè)置為同樣的輔助地址。
3、為變量圖標(biāo)有7 個模式,對應(yīng)分別當(dāng)?shù)刂返哪硞€位寫入0 或者1 的狀態(tài)。ICON0S是指某個為寫0的開始的圖標(biāo),ICON1S是指某個為寫1的開始的圖標(biāo),ICON0E是指某個為寫0的結(jié)束的圖標(biāo),只有動畫模式才會用0E的選擇;ICON1E是指某個為寫1的結(jié)束的圖標(biāo),只有動畫模式才會用1E的選擇。
圖片動畫顯示篇
Q:怎么做開機動畫?
A:用圖片動畫控件,例如在首頁面00.bmp放置圖片動畫控件,設(shè)置起始圖片0,終止圖片10,開機自動實現(xiàn)00-10.bmp圖片的動畫,不需要任何單片機發(fā)指令,屏自動就實現(xiàn)。注意中間的圖片序號不能中斷,一定要連續(xù)。
對于已經(jīng)排版好的圖片,可以這樣修改:00.bmp放置圖片動畫控件,設(shè)置起始圖片10,終止圖片20,那么20 圖片就是主頁面了,01-09圖片這是非圖片動畫用的其他的界面圖片,這樣處理只需要更改0 頁面為動畫圖片界面。
對于 DGUSII屏,則可以在 CFG文件里設(shè)置最開始的起始顯示圖片。
文本滾動控件篇
Q:文本滾動設(shè)置初始值,為什么上電后,顯示不出來呢?
A:設(shè)置系統(tǒng)配置配置勾選初始值配置;文本框不要做很長,也就是框要比文字短;滾屏間距要設(shè)置。
Q:文本顯示發(fā)指令不正常,顯示不全?
A:發(fā)指令變量地址要+3了再發(fā)。
二維碼篇
Q:豎屏使用狀態(tài)下的二維碼控件怎么都調(diào)整不到合適的位置?
A:首先找到二維碼在豎屏中軟件上面左上角的點顯示的起始坐標(biāo)例如(157,463),然后修改下圖的把二維碼控件屬性框右邊的坐標(biāo)X,Y調(diào)換為(463,157)即可。
Q:二維碼顯示不出來、亂碼,不顯示?
A:①先用正確的指令測試:
發(fā)指令顯示舉例:
0x1000 地址演示
發(fā)指令顯示舉例:需要發(fā)送 ASCII碼或者漢字內(nèi)碼,13個漢字以上才能被掃出來
5A A5 23 82 1000 B1B1 BEA9 B5CF CEC4 BFC6 BCBC D3D0 CFDE B9AB CBBE A3AC BBB6 D3AD B9E2 C1D9 A3A1
北京迪文科技有限公司,歡迎光臨
發(fā)送指令,顯示網(wǎng)址http://zeishuo.com/能用微信掃描并打開網(wǎng)站
5aa5 1a 82 1000 68 74 74 70 3A 2F 2F 77 77 77 2E 64 77 69 6E 2E 63 6F 6D 2E 63 6E 2F
②如果指令也沒有顯示出來,再嘗試更新12 拼音輸入法bin文件,或許是之前這個文件被其他的文件覆蓋了或者格式化過屏。如果是DGUS屏,檢查下內(nèi)核版本是不是太早了,不支持這個功能。
(DGUS_V69版本以上內(nèi)核文件支持)。
Q:二維碼抖動跳動?
A:類似于文本的抖動,可能是屏本身flash原因,需要將屏格式化后再下載,有必要升級下內(nèi)核程序,如果還是抖動,檢查數(shù)據(jù)通信是否本身發(fā)送就有細微的變化導(dǎo)致。
Q:二維碼希望能顯示大一些?
A:DGUS 屏有專用的二維碼變大的內(nèi)核。支持最大像素點最大到15*15 的,可以讓整個8 寸屏就是1 個二維碼。
RTC篇
Q:RTC 時間怎么只顯示年月日?
A:RTC 顯示,在日期設(shè)置格式欄Y-M-D H:Q:S W 修改為Y-M-D,這樣就是顯示年月日。
Q:DGUS 屏的RTC 錄入修改退格鍵無效。
A:1、是的,k600+沒有退格的功能,建議用戶在鍵盤上面不要做那個功能。
2、T5/T5L系列的 RTC不是寄存器,寫 009c地址,具體看開發(fā)指南。
Q:DGUS 屏的RTC 錄入能否單獨修改年。
A:如果單獨修改需要用數(shù)據(jù)變量錄入,建議分為高低字節(jié),可以用迪文OS或者單片機發(fā)指令,對時間進行改寫,修改RTC時間的指令不要忘記是0x1F 寄存器寫入0x5A 進行改寫。
對于 DGUSII的屏修改RTC時間則方便很多:
0x9C DGUSII 屏RTC 時間:5A A5 0B 82 009C 5A A5 12 06 1B 15 15 15 (18年 6月 27號 21時21 分21 秒,16進制數(shù)據(jù)) 讀 RTC:5A A5 04 83 0010 04
0x9C DGUSII 屏RTC 錄入: RTC改寫占 009C、009D、009E、009F共 4個地址。009C寫 5AA5 啟動 RTC設(shè)置,009D高低字節(jié)對應(yīng)年月,009E高低字節(jié)對應(yīng)日時,009E高低字節(jié)對應(yīng)分秒。
①先做一個按鍵值返回,地址設(shè)置009C,鍵值設(shè)置5AA5。
②再做一個數(shù)據(jù)變量錄入,地址009D,變量類型設(shè)置變量指針高字節(jié),做一個數(shù)量變量顯示, 地址 009D,變量類型設(shè)置VP 高字節(jié);高字節(jié)改變年。
③然后再做一個數(shù)據(jù)變量錄入,地址009D,變量類型設(shè)置變量指針低字節(jié),做一個數(shù)量變量顯示,地址009D,變量類型VP低字節(jié);低字節(jié)改變月。后面日時分秒和年月一樣去做,一共6 個錄入6個顯示控鍵。 做完后點擊最開始的 009C按鍵值即可改變時間。
Q:DGUS 屏的RTC 錄入點擊后重啟?
A:鍵盤設(shè)置的顯示區(qū)域超過了鍵盤的范圍。
Q:DGUS 屏的RTC 顯示怎么修改字體大小?
A:修改x 方向點陣數(shù)即可。
???
Q:DGUS 屏的RTC 修改后能上傳嗎?
A:依賴 RTC控件本身是無法將數(shù)據(jù)上傳(控件的上傳勾選實質(zhì)是無效的),可以單獨做一個RTC時間修改的頁面,錄入修改完RTC時間后,旁邊做一個按鍵返回,按鍵返回按下了,告訴單片機,單片機再發(fā)一個 81指令讀時間?;蛘呃肈GUSII 的OS處理,做按鍵返回判斷也可以,也可以寫法判斷時間的變化超過了2 秒就說明時間修改了,用OS 發(fā)送時間到串口。
?