根据OLED屏显和汉字点阵编码原理,用STM32在显示器显示内容

文章目录

  • 一、显示自己的名字和学号
  • 二、温度显示

理解OLED屏显和汉字点阵编码原理,使用STM32F103的SPI或IIC接口实现以下功能:

  1. 显示自己的学号和姓名;
  2. 显示AHT20的温度和湿度;
  3. 上下或左右的滑动显示长字符,比如“Hello,欢迎来到重庆交通大学物联网205实训室!”或者歌词、诗词。(最好使用硬件刷屏模式)

一、显示自己的名字和学号

首先可以在野火官网中下载字库工具,将汉字变成点阵的形式
打开软件之后,设置如下
根据OLED屏显和汉字点阵编码原理,用STM32在显示器显示内容_第1张图片
根据OLED屏显和汉字点阵编码原理,用STM32在显示器显示内容_第2张图片
然后找到官方的例程代码,
根据OLED屏显和汉字点阵编码原理,用STM32在显示器显示内容_第3张图片
可以看到有连线的说明。
之后就可以根据代码的提示找到输出中文与输出数字的代码
在这里插入图片描述
进入到函数内部,对函数里面的内容进行简单的理解之后就会知道如何更改显示的内容
根据OLED屏显和汉字点阵编码原理,用STM32在显示器显示内容_第4张图片
显示内容的前面代表的就是显示出来的坐标位置
然后找到oledfont.h这个文件,这里面的就是各个汉字或者数字的点阵表示,我们就可以将自己要显示的汉字的点阵的字模添加进去就可以了。
根据OLED屏显和汉字点阵编码原理,用STM32在显示器显示内容_第5张图片
然后在主函数中将自己不需要的带代码注释掉就可以了。
根据OLED屏显和汉字点阵编码原理,用STM32在显示器显示内容_第6张图片

二、温度显示

将之前的读取温度的实验代码添加到现在的这个工程之中
根据OLED屏显和汉字点阵编码原理,用STM32在显示器显示内容_第7张图片
再将主函数中的代码改写一下
部分代码如下

  float P,T,ALT;
    uint32_t CT_data[2];
	int  c1,t1;
		delay_init();	    	 //延时函数初始化	  
		NVIC_Configuration(); 	 //设置NVIC中断分组2:2位抢占优先级,2位响应优先级 	LED_Init();			     //LED端口初始化
		OLED_Init();			//初始化OLED  
		OLED_Clear(0) ; 
		RCC_Configuration();					   	//设置系统时钟
    GPIO_Configuration();					    //IO口设
I2C_Bus_Init();
    ret = ATH20_Init();
    if(ret == 0)
		while(1)
    {   OLED_Clear(0);
         OLED_ShowString(0,11,"631807030616",16);  
		  delay_ms(2500);
       printf("ATH20传感器初始化错误\n");
    }

根据OLED屏显和汉字点阵编码原理,用STM32在显示器显示内容_第8张图片

你可能感兴趣的:(stm32)