专栏
前言
基于CCS平台,采用驱动芯片为SSD1306的7脚0.96寸OLED,使用MSP432P401R的SPI接口进行通信。SPI协议内容可参阅SPI协议。
硬件连接及显示
MSP432P401R LAUNCHPAD+SSD1306 0.96寸OLED显示屏
硬件连接:
GND 接电源地
VCC 接5V或3.3v电源
SCL(D0) 接P40
SDA(D1) 接P32
RES 接P61
DC 接P60
CS 接P15
显示效果:
OLED上循环显示如下内容,每项内容显示5s。
“ 2021 8.4 NUEDC Contest 全国大学生电子设计竞赛培训网”
全国大学生电子设计竞赛徽章
“ 欢迎大家报名参加电赛!”
主程序代码
要想调用函数,比较重要的四个驱动文件:
- bmp.h(OLED的图片库)
- oled.c(OLED有关的各种函数)
- oled.h(OLED用到的头文件和函数声明)
- oledfont.h(OLED的字符库和汉字库)
将四个文件放到工程目录下,打开CCS并添加到工程里:
打开main.c文件,包含头文件oled.h和bmp.h并编写主函数:
#include"oled.h"
#include"bmp.h"
int main(void)
{
init(); //初始化
OLED_Init();
MAP_WDT_A_holdTimer();
while(1)
{
OLED_Clear();
delay_ms(5);
OLED_ShowString(0,0," 2021 8.4");
OLED_ShowString(0,2," NUEDC Contest ");
OLED_ShowCHinese(0,4,0); //全
OLED_ShowCHinese(18,4,1); //国
OLED_ShowCHinese(36,4,2); //大
OLED_ShowCHinese(54,4,3); //学
OLED_ShowCHinese(72,4,4); //生
OLED_ShowCHinese(90,4,5); //电
OLED_ShowCHinese(108,4,6); //子
OLED_ShowCHinese(0,6,7); //设
OLED_ShowCHinese(18,6,8); //计
OLED_ShowCHinese(36,6,9); //竞
OLED_ShowCHinese(54,6,10); //赛
OLED_ShowCHinese(72,6,11); //培
OLED_ShowCHinese(90,6,12); //训
OLED_ShowCHinese(108,6,13); //网
delay_ms(500);
OLED_Clear();
delay_ms(5);
OLED_DrawBMP(0,0,128,8,BMP1); //图片显示
delay_ms(500);
OLED_Clear();
delay_ms(5);
OLED_ShowCHinese(0,4,14); //欢
OLED_ShowCHinese(18,4,15); //迎
OLED_ShowCHinese(36,4,16); //大
OLED_ShowCHinese(54,4,17); //家
OLED_ShowCHinese(72,4,18); //报
OLED_ShowCHinese(90,4,19); //名
OLED_ShowCHinese(0,6,20); //参
OLED_ShowCHinese(18,6,21); //加
OLED_ShowCHinese(36,6,22); //电
OLED_ShowCHinese(54,6,23); //赛
OLED_ShowCHinese(72,6,24); //!
delay_ms(500);
}
}
编译下载程序,完成。