高职物联网屏幕二维码

高职物联网模拟4

题目

利用提供的 NBIOT 通用库项目工程,找一块 NB-IOT 模块进行开发。
**任务要求: **
1. 运行二维码识别生成具,在文本信息输入框中,输入“2021 年物联网高职赛项”+【工位号】+“号工位”,版本自动,模块大小 5,生成二维码并保存图片至“提交资料\模块 C\题 3”目录下。

2. 在 NB-IOT 节点盒模块的液晶屏上显示上面生成的二维码图片,要求最终液晶屏显示的二维码高度不小于液晶屏 1/2 高度。

image-20221012091040476

image-20221012091253011

分析

  • 液晶屏为64*128将图片设置为64 * 64
  • 直接调用OLED_DrawBMP(32,0,64,64,bmp);

代码

/**
  ******************************************************************************
  * File Name          : main.c
  * Description        : Main program body
  ******************************************************************************
  */
#include <string.h>
#include "board.h"
#include "hal_key.h"
#include "tim-board.h"
#include "timer_handles.h"




/*--------------------------------- 取模-----------------------------------------*/
/*二维码*/

uint8_t  bmp[] = {
0xFF,0xFF,0x03,0x03,0xF3,0xF3,0xF3,0xF3,0xF3,0xF3,0x03,0x03,0xFF,0xFF,0x00,0x00,
0x00,0xFC,0xFC,0xCF,0xCF,0xC0,0xC0,0x30,0x30,0xC0,0xC0,0x00,0x00,0xCF,0xCF,0x00,
0x00,0x33,0x33,0x0C,0x0C,0xC3,0xC3,0xFC,0xFC,0x3C,0x3C,0xFF,0xFF,0xC3,0xC3,0xC3,
0x00,0x00,0xFF,0xFF,0x03,0x03,0xF3,0xF3,0xF3,0xF3,0xF3,0xF3,0x03,0x03,0xFF,0xFF,
0x3F,0x3F,0x30,0x30,0x33,0x33,0x33,0x33,0x33,0x33,0x30,0x30,0x3F,0x3F,0x00,0x00,
0xF3,0xCC,0xCC,0xFF,0xFF,0xCC,0xCC,0x30,0x30,0x00,0x00,0xFC,0xFC,0xCF,0xCF,0xFF,
0xFF,0x03,0x03,0xF0,0xF0,0x0C,0x0C,0xFF,0xFF,0xC3,0xC3,0x3F,0x3F,0xC3,0xC3,0x33,
0x00,0x00,0x3F,0x3F,0x30,0x30,0x33,0x33,0x33,0x33,0x33,0x33,0x30,0x30,0x3F,0x3F,
0x1E,0x1E,0x9E,0x9E,0x19,0x19,0xE1,0xE1,0x66,0x66,0x80,0x80,0x99,0x99,0xFF,0xFF,
0xE7,0xF8,0xF8,0xE1,0xE1,0xE6,0xE6,0x7F,0x7F,0xFF,0xFF,0x19,0x19,0xFF,0xFF,0xE0,
0xE0,0x19,0x19,0xE0,0xE0,0x9F,0x9F,0x66,0x66,0x98,0x98,0x1E,0x1E,0x86,0x86,0xF9,
0x61,0x61,0x19,0x19,0x80,0x80,0x1F,0x1F,0x98,0x98,0x06,0x06,0x00,0x00,0x86,0x86,
0x78,0x78,0xE7,0xE7,0xF8,0xF8,0x19,0x19,0x9E,0x9E,0x79,0x79,0x99,0x99,0x67,0x67,
0x19,0xE1,0xE1,0x19,0x19,0x67,0x67,0x98,0x98,0xE1,0xE1,0x18,0x18,0xE7,0xE7,0x01,
0x01,0x60,0x60,0xFF,0xFF,0xE1,0xE1,0xE0,0xE0,0x1F,0x1F,0xE0,0xE0,0x67,0x67,0x01,
0x80,0x80,0x7E,0x7E,0x61,0x61,0xE0,0xE0,0xE1,0xE1,0x00,0x00,0x1E,0x1E,0xE1,0xE1,
0xE6,0xE6,0xF9,0xF9,0x81,0x81,0x86,0x86,0x81,0x81,0x66,0x66,0x99,0x99,0x06,0x06,
0xF8,0x61,0x61,0xE6,0xE6,0x1E,0x1E,0x87,0x87,0x9F,0x9F,0x00,0x00,0x9F,0x9F,0x7E,
0x7E,0xE0,0xE0,0xE1,0xE1,0x1F,0x1F,0x87,0x87,0x66,0x66,0x19,0x19,0x98,0x98,0x9E,
0x87,0x87,0x66,0x66,0x7E,0x7E,0x81,0x81,0xE1,0xE1,0x80,0x80,0x60,0x60,0x7F,0x7F,
0x87,0x87,0x67,0x67,0xF9,0xF9,0x81,0x81,0x79,0x79,0x66,0x66,0x99,0x99,0x7E,0x7E,
0x87,0x60,0x60,0x7F,0x7F,0xF8,0xF8,0x61,0x61,0xE1,0xE1,0x98,0x98,0x87,0x87,0xFE,
0xFE,0x79,0x79,0x1F,0x1F,0x60,0x60,0x81,0x81,0x7E,0x7E,0x78,0x78,0x19,0x19,0x87,
0x99,0x99,0xE0,0xE0,0xFE,0xFE,0x81,0x81,0x9F,0x9F,0x79,0x79,0xE6,0xE6,0x7E,0x7E,
0xFC,0xFC,0x0C,0x0C,0xCC,0xCC,0xCC,0xCC,0xCC,0xCC,0x0C,0x0C,0xFC,0xFC,0x00,0x00,
0x0F,0xC3,0xC3,0x0C,0x0C,0x0C,0x0C,0xCF,0xCF,0x33,0x33,0xFC,0xFC,0x3F,0x3F,0xC3,
0xC3,0xFF,0xFF,0xFC,0xFC,0xC3,0xC3,0xC0,0xC0,0x30,0x30,0x3F,0x3F,0x0F,0x0F,0xFF,
0xC0,0xC0,0xCC,0xCC,0xC0,0xC0,0xFF,0xFF,0xCF,0xCF,0xF0,0xF0,0x00,0x00,0x3F,0x3F,
0xFF,0xFF,0xC0,0xC0,0xCF,0xCF,0xCF,0xCF,0xCF,0xCF,0xC0,0xC0,0xFF,0xFF,0x00,0x00,
0x0F,0x3F,0x3F,0xCF,0xCF,0xC3,0xC3,0xCC,0xCC,0x33,0x33,0xCF,0xCF,0xF3,0xF3,0x33,
0x33,0xF3,0xF3,0x0F,0x0F,0x3F,0x3F,0x03,0x03,0x3C,0x3C,0x00,0x00,0x33,0x33,0x0C,
0xC0,0xC0,0x33,0x33,0x00,0x00,0xCF,0xCF,0x3C,0x3C,0x03,0x03,0x03,0x03,0x33,0x33};


/*----------------------------------------------------------------------------------*/






/**********************************************************************************************
*函数:void Init( void )
*功能:平台初始化
*输入:无
*输出:无
*特殊说明:无
**********************************************************************************************/
void Init() {
    // 开发板平台初始化
    BoardInitMcu();
    BoardInitPeriph();
    keys_init();//按键初始化
    setTimer2Callback(Time2Handler);
    Tim2McuInit(1);//定时器初始化,设置定时中断1ms中断一次
	 
}

/**********************************************************************************************
*函数:void KeyDownHandler( void )
*功能:按钮事件监听
*输入:无
*输出:无
*特殊说明:无
**********************************************************************************************/




void KeyDownHandler(void) {
}

/**********************************************************************************************
*函数:void handlerPre10Ms( void )
*功能:10毫秒循环
*输入:无
*输出:无
*特殊说明:循环处理总时长300ms
**********************************************************************************************/
void handlerPre10Ms(void) {
    for (int delay = 0; delay < 30; delay++) {
        HAL_Delay(10);
        
    }
}




/**
 * Main application entry point.
 */
int main(void)
{
    Init();
    OLED_Init();
    OLED_Clear();

OLED_DrawBMP(32,0,64,64,bmp);


    while( 1 )
    {


    }
}

posted @ 2022-10-17 10:16  ~内个臣呐~  阅读(202)  评论(0)    收藏  举报