二維碼介紹:
二維碼又稱(chēng)QR Code,QR全稱(chēng)Quick Response,是一個(gè)近幾年來(lái)移動(dòng)設(shè)備上超流行的一種編碼方式,它比傳統(tǒng)的Bar Code條形碼能存更多的信息,也能表示更多的數(shù)據(jù)類(lèi)型:比如:字符,數(shù)字,日文,中文等等。
更多二維碼生成原理詳見(jiàn):https://coolshell.cn/articles/10590.html#jtss-tsina
二維碼編碼和顯示設(shè)計(jì)說(shuō)明:
這是基于戰(zhàn)艦STM32寫(xiě)的二維碼編碼和顯示。TFT是2.8寸的液晶,由于像素點(diǎn)的限制,我的矩陣只有57X57,二維碼的編碼程序是網(wǎng)上找的。抱著試試的心理,移植成功了,代碼里面做了一點(diǎn)處理,可以根據(jù)矩陣的大小來(lái)調(diào)節(jié)像素點(diǎn)。這個(gè)二維碼生成還有點(diǎn)不足,如果中文漢字在日本漢字之外,QQ和微信的掃描解析出的漢字是日文的單字,用淘寶天貓和支付寶可以正確識(shí)別中文(理解的不夠深,嘗試過(guò)中文,后面失敗告終),代碼里面沒(méi)注釋?zhuān)形淖⑨屖俏壹由先サ模械牡胤阶⑨屽e(cuò)誤的話(huà)還請(qǐng)見(jiàn)諒。
二維碼編碼和顯示程序展示:
這個(gè)是微信名片的二維碼輸入字符,下面生成的二維碼圖片:
這個(gè)是手機(jī)微信解析后的名片:
最后當(dāng)然是附上代碼,希望對(duì)二維碼生成有興趣的朋友來(lái)看看。也希望大神也把我沒(méi)解決的問(wèn)題解決掉。
有用的就是QR_Encode.c和QR_Encode.h,QRENCODE文件夾下還有另外一種寫(xiě)法,根據(jù)網(wǎng)上的大神,這個(gè)也可以用。