源码是我在战舰STM32 F429平台上改写的OLED模块源码,以实现STM32驱动带GT20字库芯片和SSH1106驱动芯片OLED模块开发。使用带字库的OLED模块可以减少字模对内容的占用。分享出来提供参考。
单片机源程序如下:
- #include "sys.h"
- #include "delay.h"
- #include "usart.h"
- #include "led.h"
- #include "oled.h"
- int main(void)
- {
- u8 i;
- delay_init(168); //初始化延时函数
-
- LED_Init(); //初始化与LED连接的硬件接口
- OLED_Init(); //初始化液晶
- OLED_Clear();
-
-
-
- // OLED_Clear();
- //OLED_Bright();
- //OLED_Refresh_Gram();
- // delay_ms(1500);
- /*
- OLED_Clear();
- OLED_ShowGB2312String(0,0,"YFROBOT",1);//GB2312简体中文中字母,注意它的格式和ASCII
- OLED_ShowGB2312String(0,16,"YFROBOT",1); //在任意点显示8*16点ASCII字符串
- OLED_Show8X16BoldString(0,32,"YFROBOT",1); //在任意点显示8*16点ASCII粗体字符串
- OLED_Show7X8String(0,48,"YFROBOT",1); //在任意点显示7*8点ASCII字符串
- OLED_Show5X7String(0,57,"YFROBOT",1); //在任意点显示5*7点ASCII字符串
- OLED_Refresh_Gram();
- delay_ms(1500);
- */
- // OLED_Clear();
- OLED_ShowGB2312String(0,0,"峨眉山月半轮秋,",1);
- OLED_ShowGB2312String(0,16,"影入平羌江水流。",0);
- OLED_ShowGB2312String(0,32,"夜发清溪向三峡,",1);
- OLED_ShowGB2312String(0,48,"思君不见下渝州。",0);
- OLED_Refresh_Gram();
- //delay_ms(1500);
- //delay_ms(1500);
- /*
- OLED_Clear();
- OLED_ShowGB2312String(0,0,"12345",0); //在任意点显示8*16点ASCII字符串
- OLED_ShowNum(0,16,12345,3,1);
- OLED_ShowNum(0,32,12345,5,1);
- OLED_ShowNum(0,48,12345,7,1);
- OLED_Refresh_Gram();
- delay_ms(1500);
- OLED_Clear();
- OLED_Picture( 25, 0, 60, 64, "YFpicture", 1);
- OLED_Show5X7String(72,57,"YFROBOT",1);
- OLED_Refresh_Gram();
- delay_ms(1500);
- for(i=0;i<48;i++)
- {
- OLED_Clear();
- OLED_ShowGB2312String(127-i,47-i,"索尼大法好",1);
- OLED_ShowGB2312String(127-i,63-i,"买买买",1);
- OLED_Refresh_Gram();
- delay_ms(80);
- }
- for(i=0;i<81;i++)
- {
- OLED_ShowGB2312String(80-i,0,"索尼大法好",1);
- ……………………
- …………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码
所有资料51hei提供下载:
实验12 OLED显示实验.rar
(470.58 KB, 下载次数: 145)
|