STM32的SPI显示功能

开发板:stm32指南者开发板
在OLED官网上下载相应的代码:http://www.lcdwiki.com/zh/0.96inch_SPI_OLED_Module

显示自己的学号和姓名

打开需要的文件代码,如使用指南者则打开这个:
在这里插入图片描述
按照main文件里的提示连接开发板
在这里插入图片描述
使用PCtoLCD软件,将需要输出的字转为16进制的点
在这里插入图片描述
将汉字子模保存到下列文件中
在这里插入图片描述

修改text.c,改成需要的功能
在这里插入图片描述
main中的while函数仅保留需要的函数
在这里插入图片描述
将程序烧进开发板,运行如下
在这里插入图片描述

显示AHT20的温度和湿度

user中加入先前AHT20实验的i2c.c,i2c.h,usart.c,usart.h几个文件

然后向HARDWARE加入stm32f10x_usart.c,该文件在STM32F10x_FWLib\src中
在这里插入图片描述
将温湿度和:的子模加入到oledfont中

main函数修改为:

#include "delay.h"
#include "sys.h"
#include "oled.h"
#include "gui.h"
#include "test.h"
#include "usart.h"
#include "i2c.h"
int main(void)
{	
	int *H,*T;
	int H1=0,T1=0;
	int a,b,c,d;
	H=&H1;
	T=&T1;
	delay_init();	    	       //ÑÓʱº¯Êý³õʼ»¯	  
	NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);	 //ÉèÖÃNVICÖжϷÖ×é2:2λÇÀÕ¼ÓÅÏȼ¶£¬2λÏìÓ¦ÓÅÏȼ¶	
	OLED_Init();			         //³õʼ»¯OLED  
	OLED_Clear(0);             //ÇåÆÁ£¨È«ºÚ£©
	uart_init(115200);	 //´®¿Ú³õʼ»¯Îª115200
	IIC_Init();
	while(1) 
	{	
		read_AHT20_once();
		GUI_ShowCHinese(16,10,16,"ζÈ:",1);
		a=*T/10;
		b=*T%10;
		GUI_ShowNum(60,10,a,2,16,1);
    GUI_ShowString(80,10,".",16,1);
		GUI_ShowNum(82,10,b,2,16,1);
		GUI_ShowCHinese(16,30,16,"ʪ¶È:",1);
		c=*H/10;
		d=*H%10;
		GUI_ShowNum(60,30,c,2,16,1);
    GUI_ShowString(80,30,".",16,1);
		GUI_ShowNum(82,30,d,2,16,1);
	}
}

结果如下:在这里插入图片描述

上下或左右的滑动显示长字符

在old.c加入滚动代码

void roll(void)
{
        OLED_WR_Byte(0x2e,OLED_CMD);       
        OLED_WR_Byte(0x29,OLED_CMD);       
        OLED_WR_Byte(0x00,OLED_CMD);       
        OLED_WR_Byte(0x00,OLED_CMD);        
        OLED_WR_Byte(0x07,OLED_CMD);        
        OLED_WR_Byte(0x07,OLED_CMD);        
        OLED_WR_Byte(0x01,OLED_CMD);       
        OLED_WR_Byte(0x2F,OLED_CMD); 
}       

将main改为如下:

#include "delay.h"
#include "sys.h"
#include "oled.h"
#include "gui.h"
#include "test.h"
int main(void)
{	
	delay_init();	    	     
	NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);	 
	OLED_Init();			 
	OLED_Clear(0);         
	while(1) 
	{	
			GUI_ShowCHinese(20,25,16,"学到昏厥",1);
			delay_ms(50);
		  roll();
	}
}

结果如下:在这里插入图片描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值