網(wǎng)上有很多關(guān)于pos機刷卡顯示a8,proteus上基于stm32顯示儀表的知識,也有很多人為大家解答關(guān)于pos機刷卡顯示a8的問題,今天pos機之家(m.afbey.com)為大家整理了關(guān)于這方面的知識,讓我們一起來看下吧!
本文目錄一覽:
pos機刷卡顯示a8
這幾個月由于疫情影響,導(dǎo)致我也基本上沒有收入來源,基本上快要破產(chǎn)了。隔離期間,剛好能接個活,能解決點飯錢吧。
下面這個項目我以前也沒有接觸過,只是我一直在做嵌入式開發(fā),所以收悉起來也挺快的。
因為這個項目重點在圖形界面,圖形界面的庫我收集過,有像TouchGFx,littlevgl,emwin,ucgui,awtk,microwindows,guilite等等,最終還是選擇用littlevgl作為參考。
預(yù)備工作1.stm32f1 pack包下載:https://www.keil.com/dd2/Pack/#/eula-container
2.安裝proteus8.9版本
A.安裝P8.9.sp0.exe,安裝好license。
B.安裝PP8.9.exe。
3.字模軟件
字模軟件:PCtoLCD2002
圖形軟件:zimo221
4.Ampire12864資料
https://wenku.baidu.com/view/96a606a8a1c7aa00b42acb44.html
5.cpu選型與液晶選型
A.stm32f401+ili9341
B.stm32f103+ampire lcd12864
6.選型定為stm32f103
內(nèi)存為flash 25KB+sram 10KB,而圖只能使用預(yù)先制作好的機械圖表。
Zimo221工具使用因為我們使用的是這個工具來采集圖像,一般執(zhí)行的操作流程是,”打開圖像圖標(biāo)”--->”取模方式(C51)”--->”參數(shù)設(shè)置”--->”其他選項”--->橫向取模等等。
也就是說,一般使用的是橫向取模,那么一個這樣的數(shù)組:
0x01(A),0x02(B),0x03(C)...
它在屏幕上的排序方式就是從左到右排列,A的最高位是第一個像素點,依次而論。
ampire顯示原理要了解它的顯示原理,需要看一個圖:
可以看出來,y這一列表示的是列,總共有128個像素點,分為左右兩個半屏,剛好每個屏是64個像素點。
我們前面的zimo221工具生成的像素點是橫向排列的,而這里的ampire lcd12864則可以看出來是第一個字節(jié)豎向排列,第二個字節(jié)依次。因此,需要將zimo221的生成結(jié)果利用c語言做一下轉(zhuǎn)換。
用一段程序表示一下:
void generate_bitmap_for_lcd12864(int img_pos){int i,j,k;unsigned char ch,tmp;for(i = 0 ; i < 16 ; i ++){for(j = 0 ; j < 64 ; j ++){ch = bmps[img_pos][i+j*16];for(k = 0 ; k < 8 ; k ++){tmp = (ch >> (7-k)) & 1;bmp_tmp[img_pos][j/8][i*8+k] |= tmp<<(j%8);}}}}基于像素點
其實這個項目是基于這樣的圖片做的。
放到proteus之后,如下圖所示:
這個項目的代碼暫時為客戶保密,而把整個思路則描述出來。
如果大家有什么項目需要合作,也可以給我留言,我主要專做于嵌入式開發(fā)工作。
以上就是關(guān)于pos機刷卡顯示a8,proteus上基于stm32顯示儀表的知識,后面我們會繼續(xù)為大家整理關(guān)于pos機刷卡顯示a8的知識,希望能夠幫助到大家!
