STM32学习_OLED简介与汉字显示

STM32学习_OLED简介

在嵌入式开发中,OLED显示屏绝对是新手入门和项目实战的“常客”,尤其是搭配STM32、51单片机的0.96寸小屏,凭借小巧、清晰、易驱动的特点,成了很多开发者的首选。今天就简单聊聊这款实用的显示模块。

一、什么是OLED显示屏?

OLED(Organic Light-Emitting Diode)即有机发光二极管,核心特点是自发光——每个像素点都能独立发光,无需像LCD那样依赖背光板。这也是它和传统LCD最本质的区别。

二、嵌入式开发中最常用的OLED类型

新手接触最多的是0.96寸OLED模块,主要分两种通信方式:

  • I2C接口版:仅需4根线(VCC、GND、SDA、SCL)即可通信,接线简单,新手友好,缺点是速度稍慢;
  • SPI接口版:需要6~7根线,通信速度更快,适合需要快速刷新画面的场景。

此外,这类模块的分辨率多为128×64(128列、64行),能满足字符、数字、简单图形的显示需求。

三、OLED的核心优势(为啥嵌入式开发偏爱它?)

  1. 显示效果好:对比度极高,黑色纯粹,视角几乎达到180°,低光环境下也清晰可见;
  2. 功耗低:自发光特性使得仅点亮的像素消耗电能,静态显示时功耗远低于LCD;
  3. 体积小、易驱动:模块集成了驱动芯片(如SSD1306),单片机只需通过I2C/SPI发送指令即可控制,无需复杂的时序处理。

四、STM32使用小Tips

对于STM32开发者(尤其是用F103C8T6的新手),OLED的使用门槛很低:

  1. 只需初始化I2C/SPI对应的GPIO引脚;
  2. 移植现成的SSD1306驱动库(标准库/HAL库都有成熟实现);
  3. 调用库函数即可实现字符、数字、点阵图的显示,甚至简单的动画。

五、应用场景

小尺寸OLED常被用于智能手环、便携式检测仪、开发板调试显示、智能家居控制面板等场景,是嵌入式项目中实现“可视化”的首选方案。

简单来说,OLED显示屏就是嵌入式开发中“小巧而强大”的存在,上手快、效果好,是新手练手的绝佳模块~

main.c 主函数代码:

#include"stm32f10x.h"// Device header#include"Delay.h"#include"OLED.h"intmain(void){OLED_Init();OLED_ShowChar(1,1,'A');OLED_ShowString(1,3,"HelloWorld");OLED_ShowNum(2,1,12345,5);OLED_ShowSignedNum(2,7,-66,2);OLED_ShowHexNum(3,1,0xAA55,4);OLED_ShowBinNum(4,1,0xAA55,16);//OLED_Clear();while(1){}}

文件路径:C:\Users\Admin\Desktop\文件\STM32\程序源码\STM32Project-有注释版\1-4 OLED驱动函数模块\4针脚I2C版本

STM32学习_OLED显示汉字

取模软件
链接:https://pan.baidu.com/s/1sIu0_3q6so09Cu39xfaaIg?pwd=1234
提取码:1234
–来自百度网盘超级会员V2的分享

main.c 代码如下:

#include"stm32f10x.h"// Device header#include"Delay.h"#include"OLED.h"intmain(){OLED_Init();OLED_ShowChar(1,1,'A');//显示字符OLED_ShowString(1,5,"Hello");//显示字符串//最后一个参数,是显示长度,//小于最高位就依次没有,大于最高位补0OLED_ShowNum(2,1,12345,5);//显示无符号数OLED_ShowSignedNum(2,7,66,2);//显示符号OLED_ShowSignedNum(2,12,-66,2);//显示符号OLED_ShowHexNum(3,1,0xAA55,4);//显示16进制的数OLED_ShowCHinese(6,0,0);//杭OLED_ShowCHinese(6,16,1);//州// 测试用例,0.96显示屏(128 X 64) 最多显示4行汉子(0行开始),每个汉字位宽/高均为16像素//OLED_ShowCHinese(0, 0, 0);//OLED_ShowCHinese(2, 32, 0);//OLED_ShowCHinese(4, 0, 0); //杭//OLED_ShowCHinese(6, 16, 1); //州while(1){}}

OLED.c 代码如下:

#include"stm32f10x.h"#include"OLED_Font.h"/*引脚配置*/#defineOLED_W_SCL(x)GPIO_WriteBit(GPIOB,GPIO_Pin_8,(BitAction)(x))#defineOLED_W_SDA(x)GPIO_WriteBit(GPIOB,GPIO_Pin_9,(BitAction)(x))/*引脚初始化*/voidOLED_I2C_Init(void){RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);GPIO_InitTypeDef GPIO_InitStructure;GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_OD;//开漏输出GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;GPIO_InitStructure.GPIO_Pin=GPIO_Pin_8;GPIO_Init(GPIOB,&GPIO_InitStructure);GPIO_InitStructure.GPIO_Pin=GPIO_Pin_9;GPIO_Init(GPIOB,&GPIO_InitStructure);OLED_W_SCL(1);OLED_W_SDA(1);}/** * @brief I2C开始 * @param 无 * @retval 无 */voidOLED_I2C_Start(void){OLED_W_SDA(1);OLED_W_SCL(1);OLED_W_SDA(0);OLED_W_SCL(0);}/** * @brief I2C停止 * @param 无 * @retval 无 */voidOLED_I2C_Stop(void){OLED_W_SDA(0);OLED_W_SCL(1);OLED_W_SDA(1);}/** * @brief I2C发送一个字节 * @param Byte 要发送的一个字节 * @retval 无 */voidOLED_I2C_SendByte(uint8_tByte){uint8_ti;for(i=0;i<8;i++){OLED_W_SDA(Byte&(0x80>>i));OLED_W_SCL(1);OLED_W_SCL(0);}OLED_W_SCL(1);//额外的一个时钟,不处理应答信号OLED_W_SCL(0);}/** * @brief OLED写命令 * @param Command 要写入的命令 * @retval 无 */voidOLED_WriteCommand(uint8_tCommand){OLED_I2C_Start();OLED_I2C_SendByte(0x78);//从机地址OLED_I2C_SendByte(0x00);//写命令OLED_I2C_SendByte(Command);OLED_I2C_Stop();}/** * @brief OLED写数据 * @param Data 要写入的数据 * @retval 无 */voidOLED_WriteData(uint8_tData){OLED_I2C_Start();OLED_I2C_SendByte(0x78);//从机地址OLED_I2C_SendByte(0x40);//写数据OLED_I2C_SendByte(Data);OLED_I2C_Stop();}/** * @brief OLED设置光标位置 * @param Y 以左上角为原点,向下方向的坐标,范围:0~7 * @param X 以左上角为原点,向右方向的坐标,范围:0~127 * @retval 无 */voidOLED_SetCursor(uint8_tY,uint8_tX){OLED_WriteCommand(0xB0|Y);//设置Y位置OLED_WriteCommand(0x10|((X&0xF0)>>4));//设置X位置低4位OLED_WriteCommand(0x00|(X&0x0F));//设置X位置高4位}/** * @brief OLED清屏 * @param 无 * @retval 无 */voidOLED_Clear(void){uint8_ti,j;for(j=0;j<8;j++){OLED_SetCursor(j,0);for(i=0;i<128;i++){OLED_WriteData(0x00);}}}/** * @brief OLED显示一个字符 * @param Line 行位置,范围:1~4 * @param Column 列位置,范围:1~16 * @param Char 要显示的一个字符,范围:ASCII可见字符 * @retval 无 */voidOLED_ShowChar(uint8_tLine,uint8_tColumn,charChar){uint8_ti;OLED_SetCursor((Line-1)*2,(Column-1)*8);//设置光标位置在上半部分for(i=0;i<8;i++){OLED_WriteData(OLED_F8x16[Char-' '][i]);//显示上半部分内容}OLED_SetCursor((Line-1)*2+1,(Column-1)*8);//设置光标位置在下半部分for(i=0;i<8;i++){OLED_WriteData(OLED_F8x16[Char-' '][i+8]);//显示下半部分内容}}/** * @brief OLED显示字符串 * @param Line 起始行位置,范围:1~4 * @param Column 起始列位置,范围:1~16 * @param String 要显示的字符串,范围:ASCII可见字符 * @retval 无 */voidOLED_ShowString(uint8_tLine,uint8_tColumn,char*String){uint8_ti;for(i=0;String[i]!='\0';i++){OLED_ShowChar(Line,Column+i,String[i]);}}/** * @brief OLED次方函数 * @retval 返回值等于X的Y次方 */uint32_tOLED_Pow(uint32_tX,uint32_tY){uint32_tResult=1;while(Y--){Result*=X;}returnResult;}/** * @brief OLED显示数字(十进制,正数) * @param Line 起始行位置,范围:1~4 * @param Column 起始列位置,范围:1~16 * @param Number 要显示的数字,范围:0~4294967295 * @param Length 要显示数字的长度,范围:1~10 * @retval 无 */voidOLED_ShowNum(uint8_tLine,uint8_tColumn,uint32_tNumber,uint8_tLength){uint8_ti;for(i=0;i<Length;i++){OLED_ShowChar(Line,Column+i,Number/OLED_Pow(10,Length-i-1)%10+'0');}}/** * @brief OLED显示数字(十进制,带符号数) * @param Line 起始行位置,范围:1~4 * @param Column 起始列位置,范围:1~16 * @param Number 要显示的数字,范围:-2147483648~2147483647 * @param Length 要显示数字的长度,范围:1~10 * @retval 无 */voidOLED_ShowSignedNum(uint8_tLine,uint8_tColumn,int32_tNumber,uint8_tLength){uint8_ti;uint32_tNumber1;if(Number>=0){OLED_ShowChar(Line,Column,'+');Number1=Number;}else{OLED_ShowChar(Line,Column,'-');Number1=-Number;}for(i=0;i<Length;i++){OLED_ShowChar(Line,Column+i+1,Number1/OLED_Pow(10,Length-i-1)%10+'0');}}/** * @brief OLED显示数字(十六进制,正数) * @param Line 起始行位置,范围:1~4 * @param Column 起始列位置,范围:1~16 * @param Number 要显示的数字,范围:0~0xFFFFFFFF * @param Length 要显示数字的长度,范围:1~8 * @retval 无 */voidOLED_ShowHexNum(uint8_tLine,uint8_tColumn,uint32_tNumber,uint8_tLength){uint8_ti,SingleNumber;for(i=0;i<Length;i++){SingleNumber=Number/OLED_Pow(16,Length-i-1)%16;if(SingleNumber<10){OLED_ShowChar(Line,Column+i,SingleNumber+'0');}else{OLED_ShowChar(Line,Column+i,SingleNumber-10+'A');}}}/** * @brief OLED显示数字(二进制,正数) * @param Line 起始行位置,范围:1~4 * @param Column 起始列位置,范围:1~16 * @param Number 要显示的数字,范围:0~1111 1111 1111 1111 * @param Length 要显示数字的长度,范围:1~16 * @retval 无 */voidOLED_ShowBinNum(uint8_tLine,uint8_tColumn,uint32_tNumber,uint8_tLength){uint8_ti;for(i=0;i<Length;i++){OLED_ShowChar(Line,Column+i,Number/OLED_Pow(2,Length-i-1)%2+'0');}}/********************************** 显示一个文字 输入数据: x----行 y----列 no----字库数组文字对应的位置 **********************************/voidOLED_ShowCHinese(u8 x,u8 y,u8 no){u8 t,adder=0;OLED_SetCursor(x,y);for(t=0;t<16;t++){OLED_WriteData(Hzk[2*no][t]);adder+=1;}OLED_SetCursor(x+1,y);for(t=0;t<16;t++){OLED_WriteData(Hzk[2*no+1][t]);adder+=1;}}/** * @brief OLED初始化 * @param 无 * @retval 无 */voidOLED_Init(void){uint32_ti,j;for(i=0;i<1000;i++)//上电延时{for(j=0;j<1000;j++);}OLED_I2C_Init();//端口初始化OLED_WriteCommand(0xAE);//关闭显示OLED_WriteCommand(0xD5);//设置显示时钟分频比/振荡器频率OLED_WriteCommand(0x80);OLED_WriteCommand(0xA8);//设置多路复用率OLED_WriteCommand(0x3F);OLED_WriteCommand(0xD3);//设置显示偏移OLED_WriteCommand(0x00);OLED_WriteCommand(0x40);//设置显示开始行OLED_WriteCommand(0xA1);//设置左右方向,0xA1正常 0xA0左右反置OLED_WriteCommand(0xC8);//设置上下方向,0xC8正常 0xC0上下反置OLED_WriteCommand(0xDA);//设置COM引脚硬件配置OLED_WriteCommand(0x12);OLED_WriteCommand(0x81);//设置对比度控制OLED_WriteCommand(0xCF);OLED_WriteCommand(0xD9);//设置预充电周期OLED_WriteCommand(0xF1);OLED_WriteCommand(0xDB);//设置VCOMH取消选择级别OLED_WriteCommand(0x30);OLED_WriteCommand(0xA4);//设置整个显示打开/关闭OLED_WriteCommand(0xA6);//设置正常/倒转显示OLED_WriteCommand(0x8D);//设置充电泵OLED_WriteCommand(0x14);OLED_WriteCommand(0xAF);//开启显示OLED_Clear();//OLED清屏}

OLED.h 代码如下:

#ifndef__OLED_H#define__OLED_H#include"stm32f10x.h"// Device headervoidOLED_Init(void);voidOLED_Clear(void);voidOLED_ShowChar(uint8_tLine,uint8_tColumn,charChar);voidOLED_ShowString(uint8_tLine,uint8_tColumn,char*String);voidOLED_ShowNum(uint8_tLine,uint8_tColumn,uint32_tNumber,uint8_tLength);voidOLED_ShowSignedNum(uint8_tLine,uint8_tColumn,int32_tNumber,uint8_tLength);voidOLED_ShowHexNum(uint8_tLine,uint8_tColumn,uint32_tNumber,uint8_tLength);voidOLED_ShowBinNum(uint8_tLine,uint8_tColumn,uint32_tNumber,uint8_tLength);voidOLED_ShowCHinese(u8 Line,u8 Column,u8 no);#endif

OLED_Font.h 代码如下:

#ifndef__OLED_FONT_H#define__OLED_FONT_H#include"stm32f10x.h"// Device header/*OLED字模库,宽8像素,高16像素*/constuint8_tOLED_F8x16[][16]={0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,// 00x00,0x00,0x00,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x33,0x30,0x00,0x00,0x00,//! 10x00,0x10,0x0C,0x06,0x10,0x0C,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,//" 20x40,0xC0,0x78,0x40,0xC0,0x78,0x40,0x00,0x04,0x3F,0x04,0x04,0x3F,0x04,0x04,0x00,//# 30x00,0x70,0x88,0xFC,0x08,0x30,0x00,0x00,0x00,0x18,0x20,0xFF,0x21,0x1E,0x00,0x00,//$ 40xF0,0x08,0xF0,0x00,0xE0,0x18,0x00,0x00,0x00,0x21,0x1C,0x03,0x1E,0x21,0x1E,0x00,//% 50x00,0xF0,0x08,0x88,0x70,0x00,0x00,0x00,0x1E,0x21,0x23,0x24,0x19,0x27,0x21,0x10,//& 60x10,0x16,0x0E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,//' 70x00,0x00,0x00,0xE0,0x18,0x04,0x02,0x00,0x00,0x00,0x00,0x07,0x18,0x20,0x40,0x00,//( 80x00,0x02,0x04,0x18,0xE0,0x00,0x00,0x00,0x00,0x40,0x20,0x18,0x07,0x00,0x00,0x00,//) 90x40,0x40,0x80,0xF0,0x80,0x40,0x40,0x00,0x02,0x02,0x01,0x0F,0x01,0x02,0x02,0x00,//* 100x00,0x00,0x00,0xF0,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x1F,0x01,0x01,0x01,0x00,//+ 110x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xB0,0x70,0x00,0x00,0x00,0x00,0x00,//, 120x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x01,0x01,0x01,0x01,//- 130x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,0x00,0x00,//. 140x00,0x00,0x00,0x00,0x80,0x60,0x18,0x04,0x00,0x60,0x18,0x06,0x01,0x00,0x00,0x00,/// 150x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x00,0x0F,0x10,0x20,0x20,0x10,0x0F,0x00,//0 160x00,0x10,0x10,0xF8,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00,//1 170x00,0x70,0x08,0x08,0x08,0x88,0x70,0x00,0x00,0x30,0x28,0x24,0x22,0x21,0x30,0x00,//2 180x00,0x30,0x08,0x88,0x88,0x48,0x30,0x00,0x00,0x18,0x20,0x20,0x20,0x11,0x0E,0x00,//3 190x00,0x00,0xC0,0x20,0x10,0xF8,0x00,0x00,0x00,0x07,0x04,0x24,0x24,0x3F,0x24,0x00,//4 200x00,0xF8,0x08,0x88,0x88,0x08,0x08,0x00,0x00,0x19,0x21,0x20,0x20,0x11,0x0E,0x00,//5 210x00,0xE0,0x10,0x88,0x88,0x18,0x00,0x00,0x00,0x0F,0x11,0x20,0x20,0x11,0x0E,0x00,//6 220x00,0x38,0x08,0x08,0xC8,0x38,0x08,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,//7 230x00,0x70,0x88,0x08,0x08,0x88,0x70,0x00,0x00,0x1C,0x22,0x21,0x21,0x22,0x1C,0x00,//8 240x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x00,0x00,0x31,0x22,0x22,0x11,0x0F,0x00,//9 250x00,0x00,0x00,0xC0,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,//: 260x00,0x00,0x00,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x60,0x00,0x00,0x00,0x00,//; 270x00,0x00,0x80,0x40,0x20,0x10,0x08,0x00,0x00,0x01,0x02,0x04,0x08,0x10,0x20,0x00,//< 280x40,0x40,0x40,0x40,0x40,0x40,0x40,0x00,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x00,//= 290x00,0x08,0x10,0x20,0x40,0x80,0x00,0x00,0x00,0x20,0x10,0x08,0x04,0x02,0x01,0x00,//> 300x00,0x70,0x48,0x08,0x08,0x08,0xF0,0x00,0x00,0x00,0x00,0x30,0x36,0x01,0x00,0x00,//? 310xC0,0x30,0xC8,0x28,0xE8,0x10,0xE0,0x00,0x07,0x18,0x27,0x24,0x23,0x14,0x0B,0x00,//@ 320x00,0x00,0xC0,0x38,0xE0,0x00,0x00,0x00,0x20,0x3C,0x23,0x02,0x02,0x27,0x38,0x20,//A 330x08,0xF8,0x88,0x88,0x88,0x70,0x00,0x00,0x20,0x3F,0x20,0x20,0x20,0x11,0x0E,0x00,//B 340xC0,0x30,0x08,0x08,0x08,0x08,0x38,0x00,0x07,0x18,0x20,0x20,0x20,0x10,0x08,0x00,//C 350x08,0xF8,0x08,0x08,0x08,0x10,0xE0,0x00,0x20,0x3F,0x20,0x20,0x20,0x10,0x0F,0x00,//D 360x08,0xF8,0x88,0x88,0xE8,0x08,0x10,0x00,0x20,0x3F,0x20,0x20,0x23,0x20,0x18,0x00,//E 370x08,0xF8,0x88,0x88,0xE8,0x08,0x10,0x00,0x20,0x3F,0x20,0x00,0x03,0x00,0x00,0x00,//F 380xC0,0x30,0x08,0x08,0x08,0x38,0x00,0x00,0x07,0x18,0x20,0x20,0x22,0x1E,0x02,0x00,//G 390x08,0xF8,0x08,0x00,0x00,0x08,0xF8,0x08,0x20,0x3F,0x21,0x01,0x01,0x21,0x3F,0x20,//H 400x00,0x08,0x08,0xF8,0x08,0x08,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00,//I 410x00,0x00,0x08,0x08,0xF8,0x08,0x08,0x00,0xC0,0x80,0x80,0x80,0x7F,0x00,0x00,0x00,//J 420x08,0xF8,0x88,0xC0,0x28,0x18,0x08,0x00,0x20,0x3F,0x20,0x01,0x26,0x38,0x20,0x00,//K 430x08,0xF8,0x08,0x00,0x00,0x00,0x00,0x00,0x20,0x3F,0x20,0x20,0x20,0x20,0x30,0x00,//L 440x08,0xF8,0xF8,0x00,0xF8,0xF8,0x08,0x00,0x20,0x3F,0x00,0x3F,0x00,0x3F,0x20,0x00,//M 450x08,0xF8,0x30,0xC0,0x00,0x08,0xF8,0x08,0x20,0x3F,0x20,0x00,0x07,0x18,0x3F,0x00,//N 460xE0,0x10,0x08,0x08,0x08,0x10,0xE0,0x00,0x0F,0x10,0x20,0x20,0x20,0x10,0x0F,0x00,//O 470x08,0xF8,0x08,0x08,0x08,0x08,0xF0,0x00,0x20,0x3F,0x21,0x01,0x01,0x01,0x00,0x00,//P 480xE0,0x10,0x08,0x08,0x08,0x10,0xE0,0x00,0x0F,0x18,0x24,0x24,0x38,0x50,0x4F,0x00,//Q 490x08,0xF8,0x88,0x88,0x88,0x88,0x70,0x00,0x20,0x3F,0x20,0x00,0x03,0x0C,0x30,0x20,//R 500x00,0x70,0x88,0x08,0x08,0x08,0x38,0x00,0x00,0x38,0x20,0x21,0x21,0x22,0x1C,0x00,//S 510x18,0x08,0x08,0xF8,0x08,0x08,0x18,0x00,0x00,0x00,0x20,0x3F,0x20,0x00,0x00,0x00,//T 520x08,0xF8,0x08,0x00,0x00,0x08,0xF8,0x08,0x00,0x1F,0x20,0x20,0x20,0x20,0x1F,0x00,//U 530x08,0x78,0x88,0x00,0x00,0xC8,0x38,0x08,0x00,0x00,0x07,0x38,0x0E,0x01,0x00,0x00,//V 540xF8,0x08,0x00,0xF8,0x00,0x08,0xF8,0x00,0x03,0x3C,0x07,0x00,0x07,0x3C,0x03,0x00,//W 550x08,0x18,0x68,0x80,0x80,0x68,0x18,0x08,0x20,0x30,0x2C,0x03,0x03,0x2C,0x30,0x20,//X 560x08,0x38,0xC8,0x00,0xC8,0x38,0x08,0x00,0x00,0x00,0x20,0x3F,0x20,0x00,0x00,0x00,//Y 570x10,0x08,0x08,0x08,0xC8,0x38,0x08,0x00,0x20,0x38,0x26,0x21,0x20,0x20,0x18,0x00,//Z 580x00,0x00,0x00,0xFE,0x02,0x02,0x02,0x00,0x00,0x00,0x00,0x7F,0x40,0x40,0x40,0x00,//[ 590x00,0x0C,0x30,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x06,0x38,0xC0,0x00,//\ 600x00,0x02,0x02,0x02,0xFE,0x00,0x00,0x00,0x00,0x40,0x40,0x40,0x7F,0x00,0x00,0x00,//] 610x00,0x00,0x04,0x02,0x02,0x02,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,//^ 620x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,//_ 630x00,0x02,0x02,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,//` 640x00,0x00,0x80,0x80,0x80,0x80,0x00,0x00,0x00,0x19,0x24,0x22,0x22,0x22,0x3F,0x20,//a 650x08,0xF8,0x00,0x80,0x80,0x00,0x00,0x00,0x00,0x3F,0x11,0x20,0x20,0x11,0x0E,0x00,//b 660x00,0x00,0x00,0x80,0x80,0x80,0x00,0x00,0x00,0x0E,0x11,0x20,0x20,0x20,0x11,0x00,//c 670x00,0x00,0x00,0x80,0x80,0x88,0xF8,0x00,0x00,0x0E,0x11,0x20,0x20,0x10,0x3F,0x20,//d 680x00,0x00,0x80,0x80,0x80,0x80,0x00,0x00,0x00,0x1F,0x22,0x22,0x22,0x22,0x13,0x00,//e 690x00,0x80,0x80,0xF0,0x88,0x88,0x88,0x18,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00,//f 700x00,0x00,0x80,0x80,0x80,0x80,0x80,0x00,0x00,0x6B,0x94,0x94,0x94,0x93,0x60,0x00,//g 710x08,0xF8,0x00,0x80,0x80,0x80,0x00,0x00,0x20,0x3F,0x21,0x00,0x00,0x20,0x3F,0x20,//h 720x00,0x80,0x98,0x98,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00,//i 730x00,0x00,0x00,0x80,0x98,0x98,0x00,0x00,0x00,0xC0,0x80,0x80,0x80,0x7F,0x00,0x00,//j 740x08,0xF8,0x00,0x00,0x80,0x80,0x80,0x00,0x20,0x3F,0x24,0x02,0x2D,0x30,0x20,0x00,//k 750x00,0x08,0x08,0xF8,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00,//l 760x80,0x80,0x80,0x80,0x80,0x80,0x80,0x00,0x20,0x3F,0x20,0x00,0x3F,0x20,0x00,0x3F,//m 770x80,0x80,0x00,0x80,0x80,0x80,0x00,0x00,0x20,0x3F,0x21,0x00,0x00,0x20,0x3F,0x20,//n 780x00,0x00,0x80,0x80,0x80,0x80,0x00,0x00,0x00,0x1F,0x20,0x20,0x20,0x20,0x1F,0x00,//o 790x80,0x80,0x00,0x80,0x80,0x00,0x00,0x00,0x80,0xFF,0xA1,0x20,0x20,0x11,0x0E,0x00,//p 800x00,0x00,0x00,0x80,0x80,0x80,0x80,0x00,0x00,0x0E,0x11,0x20,0x20,0xA0,0xFF,0x80,//q 810x80,0x80,0x80,0x00,0x80,0x80,0x80,0x00,0x20,0x20,0x3F,0x21,0x20,0x00,0x01,0x00,//r 820x00,0x00,0x80,0x80,0x80,0x80,0x80,0x00,0x00,0x33,0x24,0x24,0x24,0x24,0x19,0x00,//s 830x00,0x80,0x80,0xE0,0x80,0x80,0x00,0x00,0x00,0x00,0x00,0x1F,0x20,0x20,0x00,0x00,//t 840x80,0x80,0x00,0x00,0x00,0x80,0x80,0x00,0x00,0x1F,0x20,0x20,0x20,0x10,0x3F,0x20,//u 850x80,0x80,0x80,0x00,0x00,0x80,0x80,0x80,0x00,0x01,0x0E,0x30,0x08,0x06,0x01,0x00,//v 860x80,0x80,0x00,0x80,0x00,0x80,0x80,0x80,0x0F,0x30,0x0C,0x03,0x0C,0x30,0x0F,0x00,//w 870x00,0x80,0x80,0x00,0x80,0x80,0x80,0x00,0x00,0x20,0x31,0x2E,0x0E,0x31,0x20,0x00,//x 880x80,0x80,0x80,0x00,0x00,0x80,0x80,0x80,0x80,0x81,0x8E,0x70,0x18,0x06,0x01,0x00,//y 890x00,0x80,0x80,0x80,0x80,0x80,0x80,0x00,0x00,0x21,0x30,0x2C,0x22,0x21,0x30,0x00,//z 900x00,0x00,0x00,0x00,0x80,0x7C,0x02,0x02,0x00,0x00,0x00,0x00,0x00,0x3F,0x40,0x40,//{ 910x00,0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x00,0x00,0x00,//| 920x00,0x02,0x02,0x7C,0x80,0x00,0x00,0x00,0x00,0x40,0x40,0x3F,0x00,0x00,0x00,0x00,//} 930x00,0x06,0x01,0x01,0x02,0x02,0x04,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,//~ 94};//汉字charHzk[][32]={// 杭(0) 州(1){0x10,0x10,0xD0,0xFF,0x90,0x10,0x08,0xC8,0x49,0x4E,0x48,0xC8,0x08,0x08,0x00,0x00},{0x04,0x03,0x00,0xFF,0x00,0x83,0x60,0x1F,0x00,0x00,0x00,0x3F,0x40,0x40,0x78,0x00},/*"杭",0*/{0x00,0xE0,0x00,0xFF,0x00,0x20,0xC0,0x00,0xFE,0x00,0x20,0xC0,0x00,0xFF,0x00,0x00},{0x81,0x40,0x30,0x0F,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0xFF,0x00,0x00},/*"州",1*/};#endif

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1014384.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2025年宝宝取名机构推荐:榜TOP5机构深度解析 - 十大品牌推荐

据《2025年中国姓名文化服务与咨询行业白皮书》数据显示,在宝宝取名这一细分领域,头部10%的专业机构贡献了全行业超过55%的高满意度服务案例,其客户推荐意愿是行业平均值的4.8倍。与此同时,选择不同层级服务机构所…

5个ComfyUI Manager在实际项目中的创新应用案例

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 构建一个展示ComfyUI Manager实战应用的演示项目&#xff0c;包含5个不同场景的子项目&#xff1a;1) 游戏角色装备生成&#xff1b;2) 电商产品多角度展示图生成&#xff1b;3) 影…

告别人工硬憋!开题报告 “自造机” 虎贲等考 AI,凭实力领跑学术起航新赛道

一、人工硬憋开题&#xff1a;一场耗时耗力的 “学术渡劫”​ “对着空白文档熬 3 夜&#xff0c;只写了半页研究背景”“框架改了 5 版&#xff0c;导师仍说逻辑混乱”“文献看了 40 篇&#xff0c;创新点还是一片空白”—— 对于无数学生而言&#xff0c;开题报告撰写堪称学…

学术启航正当时!虎贲等考 AI:不止是开题生成器,更是你的专属 “开题战略家”

一、开题报告的 “伪效率” 陷阱&#xff1a;生成器解决不了的战略难题 “一键生成开题报告&#xff0c;却被导师批‘缺乏研究价值’”“模板化内容看似省心&#xff0c;实则埋下换题隐患”—— 在学术研究的起步阶段&#xff0c;不少人陷入 “工具依赖” 的误区。市面上多数 …

零基础玩转RAG:小白也能搭建智能问答系统

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个简单的RAG入门教学项目&#xff0c;要求&#xff1a;1. 使用最简化的架构&#xff08;如FAISSGPT&#xff09;&#xff1b;2. 提供step-by-step的教程文档&#xff1b;3. 包…

1小时验证创意:用Pigx+AI构建电商原型系统

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 快速生成一个Pigx电商系统原型&#xff0c;最低可行功能包括&#xff1a;1. 商品分类展示 2. 购物车功能 3. 模拟支付流程 4. 基础订单管理。要求&#xff1a;1. 使用最简技术实现 …

摄影师必看:如何批量重命名数千张照片

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个专为摄影师设计的批量照片重命名工具。能够读取照片的EXIF信息&#xff08;拍摄时间、相机型号、GPS位置等&#xff09;&#xff0c;并据此自动生成文件名。提供多种命名模…

贾子战略理论体系(一套兵法、两个七十二、三大定律)的全面研究:从传统智慧到现代应用的理论重构与实践验证

贾子战略理论体系&#xff08;一套兵法、两个七十二、三大定律&#xff09;的全面研究&#xff1a;从传统智慧到现代应用的理论重构与实践验证引言在全球战略格局深度调整、人工智能技术日新月异的 2025 年&#xff0c;传统战略理论面临着前所未有的挑战与机遇。贾子战略理论体…

数据分析 “手工匠” VS “智能魔方”!虎贲等考 AI:凭什么重塑论文写作新范式?

一、论文数据分析的 “手工困境”&#xff1a;耗时耗力的低效魔咒​ “Excel 表格翻到眼酸&#xff0c;数据整理花了 10 天”“公式输错重算 3 遍&#xff0c;答辩前发现数据误差”“图表制作反复调整&#xff0c;仍达不到学术规范”—— 在论文写作中&#xff0c;数据分析环节…

2025年宝宝取名机构推荐:榜单TOP5机构深度解析 - 十大品牌推荐

最新更新:12月 阅读摘要 文档类型:宝宝取名机构深度解析评测维度:文化专业度(25%) / 服务可靠性(25%) / 方案适配性(20%) / 流程透明度(15%) / 用户口碑(15%)Top Pick:舜缘居(山东舜缘居文化传媒有限公司)其它上…

理解DMA双缓冲的原理和意义(CPU和DMA:并发并行和回调函数)

这篇文章弄懂了 &#xff0c; 对计算机硬件包括软件编程会上一个很大的台阶引子回调函数在函数调用时 &#xff0c; 是并行计算吗&#xff1f;计算单元这个系统里有很多个计算单元 &#xff0c; CPU 、 FPU 、 ADC 都是计算单元 &#xff0c; 计算单元的本质就是些门电路 &…

电商库存系统实战:SpringAI MCP的工业级应用

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 开发电商库存管理微服务系统&#xff0c;功能要求&#xff1a;1. 使用SpringAI MCP自动生成库存核心模块&#xff1b;2. 实现分布式事务管理&#xff08;库存扣减与订单创建&#x…

传统vsAI:解决status_invalid_image_hash效率对比

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 开发一个性能对比工具&#xff0c;功能&#xff1a;1) 传统方式手动检测图像哈希的模拟 2) AI自动检测的实现 3) 计时功能对比两者耗时 4) 生成可视化对比图表。使用Python的time模…

sqli-labs靶场通关详细讲解(附php源码分析Less-11-16)

Less-11发现该题为post注入&#xff0c;测试注入点发现为 ,开始写注入语句&#xff0c;使用burpsuite抓包分析在数字1处进行sql注入1 --1 order by 2 --1 union select 11,22 --1 union select 11,database()--uname1 union select 11,group_concat(table_name) from informat…

leetcode 752. Open the Lock 打开转盘锁

Problem: 752. Open the Lock 打开转盘锁 解题过程 队列&#xff0c;两种可能的&#xff0c;某个字符1取模或者-110取模&#xff0c;共4个字符&#xff0c;所以共4*2种可能&#xff0c;而且0000到9999共10000种可能&#xff0c;所以集合不大的&#xff0c;可以用广度优先搜索&a…

贪吃蛇图片

贪吃蛇bodydownfoodleftrightup

2025年女孩取名机构推荐:权威榜单TOP5机构深度解析 - 十大品牌推荐

古人云:赐子千金,不如教子一艺,教子一艺,不如赐子好名。在文化自信回归与个性化需求并重的当下,为新生儿尤其是女孩选择一个寓意美好、音律和谐且契合命理的名字,已成为越来越多家庭的深切期盼。2025年,国内专业…

告别代码与手册!虎贲等考 AI 让 SPSS+ChatGPT 合体,“对话式分析” 颠覆学术研究

一、学术数据分析的 “双重困境”&#xff1a;SPSS 的难与 ChatGPT 的浅​ “对着 SPSS 代码熬到凌晨&#xff0c;还是没跑通回归分析”“ChatGPT 给的分析思路太空泛&#xff0c;缺乏专业统计支撑”—— 在学术研究中&#xff0c;数据分析环节始终存在 “专业工具难操作&…

AI如何帮你快速解决Python模块调用错误

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个Python代码示例&#xff0c;展示常见的模块调用错误场景&#xff0c;并利用AI自动分析错误原因&#xff0c;提供修复建议。代码应包含错误示例和修正后的版本&#xff0c;解…

HR实战进阶:人力资源管理五本必看好书推荐

很多HR朋友想提高自己的专业能力但又不知从何下手。今天为大家推荐几本人力资源管理方面的专业、经典书籍&#xff0c;或许正是HR朋友所需要的。1、《经理人参阅&#xff1a;人力资源管理》首先要推荐的第一本是《经理人参阅&#xff1a;人力资源管理》。这本书相较与市面上的其…