Нет описания

朱天龙 (Armink) ff5f274d90 Merge pull request #7 from mysterywolf/master 4 лет назад
figures 4dd157e275 优化二维码在中断的显示图案 4 лет назад
inc b122446824 【添加】qrcode package 7 лет назад
samples 4dd157e275 优化二维码在中断的显示图案 4 лет назад
src cd0297314e 更新官方提交的pr 5 лет назад
.gitignore b122446824 【添加】qrcode package 7 лет назад
LICENSE b4a195b2a2 Initial commit 7 лет назад
README.md 9043271785 移除没有用的语句 4 лет назад
README_ZH.md 9043271785 移除没有用的语句 4 лет назад
SConscript b122446824 【添加】qrcode package 7 лет назад

README.md

qrcode

中文页 | English

1 Introduction

qrcode is a software package used to generate a QR code from a string. This software package is a port of RT-Thread based on ricmoo/QRCode open source library.

1.1 Directory structure

Name Description
examples Examples directory, and some corresponding instructions
inc Header file directory
src Source Code Directory

1.2 License

The qrcode software package extends the QRCode software package license agreement, please see the qrcode/LICENSE file.

1.3 Dependency

  • RT-Thread 3.0+

2. How to open qrcode

To use qrcodepackage, you need to select it in the package manager of RT-Thread. The specific path is as follows:

RT-Thread online packages
    tools packages --->
        [*] qrcode: A simple library for generating QR codes in C
            [*] Enable qrcode sample
  • Enable qrcode sample: Enable QR code sample;

Then let RT-Thread's package manager automatically update, or use the pkgs --update command to update the package to the BSP.

3. Use qrcode

Generate QR code

When using the qrcode software package, you must first define a structure to manage the QR code.

QRCode qrcode;

Then apply for dynamic memory according to the version number to save the generated QR code,

uint8_t *qrcodeBytes = (uint8_t *)rt_calloc(1, qrcode_getBufferSize(DEFAULT_QR_VERSION));

Finally, use the QR code generation function to generate the QR code.

qrcode_initText(&qrcode, qrcodeBytes, DEFAULT_QR_VERSION, ECC_LOW, "HELLO WORLD");

Print QR code

The generated two-dimensional code is dot matrix data, 8 dots constitute a Byte. The following codes can be used to display the QR code

for (uint8_t y = 0; y <qrcode.size; y++) {
    for (uint8_t x = 0; x <qrcode.size; x++) {
        if (qrcode_getModule(&qrcode, x, y)) {
            rt_kprintf("**");
        } else {
            rt_kprintf(" ");
        }
    }
    Serial.print("\n");
}

4. Demo

In this example, the QR code routine needs to be opened in the qrcode software package.

Enter the command qrcode RT-Thread in MSH, you can print out a QR code on the serial port assistant, scan it with the mobile phone code scanning software, you can see the result is RT-Thread.

qrcode

How to run this package on the Arduino platform: https://github.com/onelife/RTT-QRCode

5. Matters needing attention

  • When generating a QR code, the higher the version used, the larger the dynamic memory that needs to be applied for.

6. Contact & Thanks