小漏斗 小漏斗
首页 /  科技看点 / 内容详情

单片机oled姓名程序

科技看点 时间:2023-08-04 22:30:35

单片机OLED姓名程序

OLED是有机发光二极管 的简称。它具有自发光、对比度高、厚度薄、视角广、反应速度快、可用于挠曲性面板、使用温度范围广、构造及制程较简单等优异之特性,被认为是下一代的平面显示器新兴应用技术。而单片机则是一种集成了微处理器、存储器和各种输入/输出接口的芯片。单片机常用于控制电子设备,如OLED显示器。

如果想在OLED上显示中文,我们可以使用取模软件生成字库信息并将其放到一个单独的.h文件中,然后在代码中调用自定义字库的函数。具体来说,我们需要实现一个显示汉字的函数,其中x为第一个像素在行中的位置,范围为0-127;如果一行占8个像素,那么y代表行号,范围为0-7。no为自定义字库数组中的索引。下面是一个显示汉字的函数实现:

void OLED_ShowCHinese

;">,

uint8_t y

,

uint8_t no

)

{

uint8_t t

,

adder

=

;

OLED_Set_Pos

;">,

y

)

;

for

;">=

;

t

<

16

;

t

+

+

)

{

OLED_WR_Byte

;">[

2

*

no

]

[

t

]

,

OLED_DATA

)

;

adder

+=

1

;

}

OLED_Set_Pos

;">,

y

+

1

)

;

for

;">=

;

t

<

16

;

t

+

+

)

{

OLED_WR_Byte

;">[

2

*

no

+

1

]

[

t

]

,

OLED_DATA

)

;

adder

+=

1

;

}

}

我们还需要在main函数中调用自定义字库的函数,如下所示:

for

;">=

;

i

<

8

;

i

+

+

)

{

OLED_ShowCHinese

;">*

16

,

,

i

+

)

;

}

for

;">=

;

i

<

5

;

i

+

+

)

{

OLED_ShowCHinese

;">*

16

,

2

,

i

+

8

)

;

}

for

;">=

;

i

<

3

;

i

+

+

)

{

OLED_ShowCHinese

;">*

16

,

4

,

i

+

13

)

;

}

for

;">=

;

i

<

7

;

i

+

+

)

{

OLED_ShowCHinese

;">*

16

,

6

,

i

+

16

)

;

}

这段代码的作用是在OLED屏幕上显示姓名。其中i代表姓名的每个字的索引,0到7代表姓氏的每个字,8到12代表名字的每个字,13到15代表“的”字,16到22代表“程序”四个字。

需要注意的是,如果使用官方的u8g2 chinese编码库,会有一些字无法显示出来,因此需要自己生成字库信息。

除了使用取模软件生成字库信息外,还可以使用51单片机控制OLED显示多种字符(汉字+英文+数字)。具体来说,我们需要在代码中定义每个字符的像素点阵,然后将其写入到OLED屏幕上。

总之,要在单片机OLED上显示中文,我们可以使用取模软件生成字库信息,然后在代码中调用自定义字库的函数。除此之外,还可以使用51单片机控制OLED显示多种字符。

标签: #科技看点

郑重声明:图文由自媒体作者发布,我们尊重原作版权,但因数量庞大无法逐一核实,图片与文字所有方如有疑问可与我们联系,核实后我们将予以删除。

关于我们 广州小漏斗信息技术有限公司 版权所有 七百分 粤ICP备20006251号粤公网安备 44011302002346号