二维码生成文件下载
链接:https://pan.baidu.com/s/1PTciVTu-K_cOR6QK9OPwkg 提取码:se5e
将下载好的文件解压并加入工程(以Keil平台为例)
#include "QR_Encode.h" #define QRCODE_WIDTH_HEIGHT 64 /** * @brieaf 绘制二维码 */ void draw_qrcode(uint8_t x1,uint8_t y1,char * content) { EncodeData(content); uint16_t size_num = QRCODE_WIDTH_HEIGHT / MAX_MODULESIZE; uint32_t x, y, i, j; for (y = 0; y < MAX_MODULESIZE; y++) { for (x = 0; x < MAX_MODULESIZE; x++) { uint8_t temp_x = x1+x * size_num; uint8_t temp_y = y1+y * size_num; uint16_t color = 0; if (!m_byModuleData[y][x]) color = 1; GRAM_Fill(temp_x,temp_y,temp_x+size_num,temp_y+size_num,color); } } }
- QRCODE_WIDTH_HEIGHT宏决定二维码的显示大小
- EncodeData函数生成二维码单色的二维数组显示数据
- 根据不同的LCD,需要一个填充单色的函数,这里使用的函数是GRAM_Fill, 函数原型是void GRAM_Fill(int x1,int y1,int x2,int y2,int color);
draw_qrcode(12,45,"http://www.baidu.com");
-
生成的二维码