第2题:基本的显示(包括但不限于各种显示屏的驱动) 
1.完整硬件的照片、显示效果图片 
2.引脚连接图等电路图(如板卡和显示板的连接示意图) 
3.驱动芯片的手册资料等信息 
4.要求循环显示以下内容(如屏幕不支持,可跳过部分): 
——a.显示整数 2021 
——b.显示小数 8.4 
——c.显示字符 NUEDC Contest 
——d.显示汉字 全国大学生电子设计竞赛培训网 
——e.显示图片 电赛的徽章LOGO 
——f.根据屏幕显示特色信息(改成和电赛相关的) 
***************************************************************************** 
1.硬件 
开发板:MSP432P401R LaunchPad 
显示屏:1.3寸SSH1106 OLED显示屏 
 
 
 
 
 
2.硬件连接 
//              ---------------------------------------------------------------- 
//              GND    电源地 
//              VCC   接3.3v电源 
//              SCL   P4.0(时钟) 
//              SDA   P3.2(数据) 
//              ---------------------------------------------------------------- 
 
 
 
 
3.显示效果 
 * 初始状态,OLED黑屏, 
 * OLED循环显示 
 * “ 2021 ”, 
 
 
 * “ 8.4 ”, 
 
 
 * “ NUEDC Contest ”, 
 
 
 * “ 全国大学生电子设计竞赛培训网 ”, 
 
 
 * “ 全国大学生电子设计竞赛徽章 ”, 
 
 
 * “ https://www.nuedc-training.com.cn/ ”。 
 
 
 
 
 
4.代码 
 *main.c   循环显示内容 
 *oled.c   OLED用到的函数定义 
 *oled.h   OLED用到的头文件、宏定义和函数声明 
 *oledfont.h  OLED的字符库和汉字库 
 *bmp.h    OLED的图片库 
 *汉字和图片需自己用PCtoLCD.exe取模 
- main.c
 
 - #include <ti/devices/msp432p4xx/driverlib/driverlib.h>
 
 - #include <stdint.h>
 
 - #include <stdbool.h>
 
 - #include"oled.h"
 
 - #include"bmp.h"
 
  
- int main(void)
 
 - {
 
 -     init();                      //OLED端口定义
 
 -     OLED_Init();                 //OLED初始化
 
 -     MAP_SysCtl_enableSRAMBankRetention(SYSCTL_SRAM_BANK1);//Enabling SRAM Bank Retention
 
 -     MAP_WDT_A_holdTimer();     //关闭看门狗
 
  
-     //进入循环
 
 -     while (1)
 
 -     {
 
 -         OLED_Clear();                  //清屏
 
 -         OLED_ShowString(48,2,"2021");  //显示
 
 -         delay_ms(500);
 
  
-         OLED_Clear();
 
 -         OLED_ShowString(48,2,"8.4");
 
 -         delay_ms(500);
 
  
-         OLED_Clear();
 
 -         OLED_ShowString(16,2,"NUEDC Contest");
 
 -         delay_ms(500);
 
  
-         OLED_Clear();
 
 -         OLED_ShowCHinese(0,2,0);      //全
 
 -         OLED_ShowCHinese(18,2,1);     //国
 
 -         OLED_ShowCHinese(36,2,2);     //大
 
 -         OLED_ShowCHinese(54,2,3);     //学
 
 -         OLED_ShowCHinese(72,2,4);     //生
 
 -         OLED_ShowCHinese(90,2,5);     //电
 
 -         OLED_ShowCHinese(108,2,6);    //子
 
 -         OLED_ShowCHinese(0,4,7);      //设
 
 -         OLED_ShowCHinese(18,4,8);     //计
 
 -         OLED_ShowCHinese(36,4,9);     //竞
 
 -         OLED_ShowCHinese(54,4,10);    //赛
 
 -         OLED_ShowCHinese(72,4,11);    //培
 
 -         OLED_ShowCHinese(90,4,12);    //训
 
 -         OLED_ShowCHinese(108,4,13);   //网
 
 -         delay_ms(500);
 
  
-         OLED_Clear();
 
 -         OLED_DrawBMP(0,0,128,8,BMP1);  //电赛徽章LOGO显示
 
 -         delay_ms(500);
 
  
-         OLED_Clear();
 
 -         OLED_ShowString(8,0,"https://www.");
 
 -         OLED_ShowString(8,2,"nuedc-training.");
 
 -         OLED_ShowString(8,4,"com.cn/");
 
 -         delay_ms(500);
 
  
-     }
 
 - }
 
 
  复制代码 
 
 
 
 
5.工程文件及SSH1106资料 
 
SSH1106_OLED_display.zip
(5.16 MB, 下载次数: 535)
 
 
 
 |