首页 » 互联网 » RISC-V单片机快速入门07-板载LCD显示ESP8266数据_字模_字库

RISC-V单片机快速入门07-板载LCD显示ESP8266数据_字模_字库

雨夜梧桐 2024-11-09 19:15:49 0

扫一扫用手机浏览

文章目录 [+]

本节,我们利用GD32VF103掌握ESP-01S启动TCP Server,然后让多个网络调试助手连接ESP-01S并与之通信,并通过LCD显示TCP网络助手发来的数据。

一、根本知识

RISC-V单片机快速入门07-板载LCD显示ESP8266数据_字模_字库 互联网

1.LCD简介

本实验利用的LCD为龙眼开拓板板载LCD,是一个0.96英寸的屏,利用ST7735S驱动驱动,硬件引脚解释如下

本实验终极实现效果如下图:

图中设置中文显示须要利用字库软件设置,本实验采取字模Ⅲ这款字库软件,已经连同代码推送到云端,可以下载后利用。

2.字库软件安装

字模Ⅲ安装也比较大略,点击Zimo3InstallFULL.exe,一贯下一步默认安装即可,破解利用fontreg.exe工具

打开后,按照下图步骤进行注册即可。

注册成功后如下图所示

二、实例

2.1 制作字符

打开上文注册号的字模Ⅲ软件,按如下办法设置字体大小以及字符集格式

设置天生的字模格式如下

常规设置如下

输入要转换的字符串,点击字库智能天生按钮

将天生的字库复制到打开的工程oledfont.h文件中

同理导出"吸收"两个汉字,设置大小为1616,不在演示步骤。

2.2 驱动程序解释

gd32vf103单片机利用spi接口驱动LCD,硬件连接如下:

SPI初始化

void spi_config(void){ spi_parameter_struct spi_init_struct; / deinitilize SPI and the parameters / OLED_CS_Set(); spi_struct_para_init(&spi_init_struct); / SPI0 parameter config / spi_init_struct.trans_mode = SPI_TRANSMODE_FULLDUPLEX; spi_init_struct.device_mode = SPI_MASTER; spi_init_struct.frame_size = SPI_FRAMESIZE_8BIT; spi_init_struct.clock_polarity_phase = SPI_CK_PL_HIGH_PH_2EDGE; spi_init_struct.nss = SPI_NSS_SOFT; spi_init_struct.prescale = SPI_PSC_8; spi_init_struct.endian = SPI_ENDIAN_MSB; spi_init(SPI0, &spi_init_struct); spi_crc_polynomial_set(SPI0,7); spi_enable(SPI0);}

LCD写数据函数

/ Function description: LCD serial data write function Entry data: serial data to be written to dat Return value: None/void LCD_Writ_Bus(u8 dat){ OLED_CS_Clr(); while(RESET == spi_i2s_flag_get(SPI0, SPI_FLAG_TBE)); spi_i2s_data_transmit(SPI0, dat); while(RESET == spi_i2s_flag_get(SPI0, SPI_FLAG_RBNE)); spi_i2s_data_receive(SPI0); OLED_CS_Set();}

2.3 程序主函数逻辑

增加处理代码,区分是不是http数据,如果是普通TCP数据,直接返回

while(1){ if (STA_DATA_ARRIVED == system_context->event) { // send back// ESP8266_SendString ( DISABLE, system_context->data_buf, rt_strlen(system_context->data_buf), system_context->sock_id ); if (rt_strstr(system_context->data_buf, "/getdata")) { rt_kprintf("ready to send data………. %s\r\n", response); ESP8266_SendString ( DISABLE, response, rt_strlen(response), system_context->sock_id ); system_context->event = STA_CONNECTED; }else if(rt_strstr(system_context->data_buf, "/index")) { rt_kprintf("ready to send data………. %s\r\n", response_index); ESP8266_SendString ( DISABLE, response_index, rt_strlen(response_index), system_context->sock_id ); system_context->event = STA_CONNECTED; }else {// send back ESP8266_SendString ( DISABLE, system_context->data_buf, rt_strlen(system_context->data_buf), system_context->sock_id ); LCD_ShowString(24 + 48, 40, (u8 )(system_context->data_buf), RED); } } rt_thread_mdelay(10); }

三、运行

下载程序完毕后,重启设备,ESP01S启动一个WIFI热点,并启动TCP Server,log如下:

电脑连接模块热点,然后启动网路助手,连接模块起来的AP热点,发送111,会收到返回的数据111

LCD显示如下:

灯光效果不好,手机太渣,大家姑息着看哈,功能是OK了。

一叶孤沙出品:一沙一天下,一叶一菩提

标签:

相关文章

我们迎来两个佳音……_美国_华为

·第一个佳音,华为宣告将于2024年全面停用高通芯片,转而采取自主研发的麒麟芯片。这意味着美国发起的科技战以失落败告终。随着华为、...

互联网 2025-01-10 阅读0 评论0

仪表及控制装配_暗记_谜底

384.热工仪表在正式投入前应检讨哪些项目?(10.0分 答案:热工仪表在正式投入前应检讨下列项目:(1)各热工仪表的标牌、编号应...

互联网 2025-01-10 阅读0 评论0