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