K60笔记-OLED显示

本程序使用山外库:http://git.oschina.net/chenxuuu/vcan-K60-V5.3

OLED使用12864屏幕,SPI串口

必要文件:oled.coled.h

引脚定义:

  #define OLED_SCL  PTA15_OUT
  #define OLED_SDA  PTA17_OUT
  #define OLED_RST  PTA19_OUT
  #define OLED_DC   PTA16_OUT
  #define OLED_CS   PTA14_OUT
/*
4线SPI使用说明:
VBT 供内部DC-DC电压,3.3~4.3V,如果使用5V电压,为保险起见串一个100~500欧的电阻
VCC 供内部逻辑电压 1.8~6V
GND 地

BS0 低电平
BS1 低电平
BS2 低电平

CS  片选管脚
DC  命令数据选择管脚
RES 模块复位管脚
D0(SCLK) ,时钟脚,由MCU控制
D1(MOSI) ,主输出从输入数据脚,由MCU控制

D2 悬空
D3-D7 , 低电平 , 也可悬空,但最好设为低电平
RD  低电平 ,也可悬空,但最好设为低电平
RW  低电平 ,也可悬空,但最好设为低电平
RD  低电平 ,也可悬空,但最好设为低电平
*/

显示中文测试:

#include "common.h"
#include "include.h"
#include "oled.h"
uint8 testbmp[]={};//省略

void main()
{
  OLED_Init();
    while(1)
    {
       OLED_Print(0,0,"双车追不上-启动中");
       Draw_BMP(50,3,77,6,testbmp);
       while(1)
       {
       OLED_P6x8Str(10,7,"loading.  ");
       DELAY_MS(500);
       OLED_P6x8Str(10,7,"loading..  ");
       DELAY_MS(500);
       OLED_P6x8Str(10,7,"loading...");
       DELAY_MS(500);
       OLED_P6x8Str(10,7,"loading   ");
       DELAY_MS(500);
       }
    }
}

效果如下:

显示图片测试:

#include "common.h"
#include "include.h"
#include "oled.h"
uint8 bmp1[]={};//省略
uint8 bmp2[]={};//省略
uint8 bmp3[]={};//省略
uint8 bmp4[]={};//省略
void main()
{
  OLED_Init();
    while(1)
    {
       Draw_BMP(0,0,73,6,bmp1);
       DELAY_MS(500);
       Draw_BMP(0,0,73,6,bmp3);
       DELAY_MS(500);
       Draw_BMP(0,0,73,6,bmp1);
       DELAY_MS(500);
       Draw_BMP(0,0,73,6,bmp2);
       DELAY_MS(500);
       Draw_BMP(0,0,73,6,bmp1);
       DELAY_MS(500);
       Draw_BMP(0,0,73,6,bmp3);
       DELAY_MS(500);
       Draw_BMP(0,0,73,6,bmp2);
       DELAY_MS(500);
       Draw_BMP(0,0,73,6,bmp1);
       DELAY_MS(500);
       Draw_BMP(0,0,73,6,bmp4);
       DELAY_MS(500);
       Draw_BMP(0,0,73,6,bmp1);
       DELAY_MS(500);
    }
}

效果如下:

测试代码:http://git.oschina.net/chenxuuu/K60-test/tree/master/OLED

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注