博客
关于我
基于SPI/IIC接口的OLED数据显示
阅读量:565 次
发布时间:2019-03-09

本文共 1242 字,大约阅读时间需要 4 分钟。

基于SPI/IIC接口的OLED数据显示实验报告


1. 实验任务

本次实验旨在通过STM32F103开发板和基于SPI/IIC接口的0.96寸OLED显示屏,完成以下功能的实现:

  • 显示学号和姓名:利用OLED屏显的汉字点阵编码原理,实现固定位置显示个人信息。
  • 显示AHT20温湿度数据:通过SPI接口读取AHT20传感器的温度和湿度数据,并在OLED屏上进行显示。
  • 实现长字符滚动显示:采用硬件刷屏模式,实现字符的上下或左右滚动显示。

  • 2. 实验环境

  • 开发工具:Keil5 IDE
  • 开发板:野火mini开发板
  • OLED显示屏:基于SPI接口的0.96寸OLED屏

  • 3. 资源与工具

    • 字模工具:用于生成和编辑OLED显示字符的字模文件。
    • 开发资源:包含OLED驱动程序、字模文件及相关示例代码。

    4. 引脚连接

    根据开发板和OLED屏的引脚表进行连接,确保以下接口正确对齐:

    • SPI接口:包括数据线(SDI)、钟信号(SCK)、卡线(CS)和片选信号。
    • IIC接口:包括数据线(SDA)和时钟信号(SCL)。

    连接完成后,系统应通过串口监控工具验证各接口是否正常工作。


    5. 字模工具使用

  • 字模生成:使用字模软件将目标字符(如姓名和学号)转换为对应的8-bit字模数据。
  • 字模导入:将生成的字模文件导入到OLED显示程序中,确保字符显示位置和格式正确。

  • 6. 显示代码修改

    在主程序中完成以下设置:

    int main(void){    delay_init();        // 初始化延时功能    NVIC_Configuration(); // 设置中断配置    OLED_Init();         // 初始化OLED屏    OLED_Clear(0);       // 清屏(全黑显示)    OLED_WR_Byte(0x2E, OLED_CMD); // 关闭滚动    OLED_WR_Byte(0x27, OLED_CMD); // 设置水平滚动方向(如左或右)    OLED_WR_Byte(0x00, OLED_CMD); // 设置起始页    OLED_WR_Byte(0x07, OLED_CMD); // 设置滚动时间间隔    TEST_MainPage();      // 调用主界面显示函数    while(1)    {    }}

    7. 滚动显示功能

  • 字符优化:确保字模文件中的字符完整性,避免截断或错误显示。
  • 滚动设置:在OLED初始设置中,启用滚动功能并调整滚动速度和方向。
  • 测试显示:通过串口监控工具,验证滚动显示效果,确保字符顺序正确无间断。

  • 8. 烧录与测试

  • 程序烧录:将修改好的代码通过Keil5 IDE烧录到野火mini开发板。
  • 结果验证:通过OLED屏查看显示效果,确保学号、姓名及温湿度数据正确显示。

  • 本次实验通过以上步骤,成功实现了OLED屏显的基本功能,包括静态显示和滚动显示,为后续实验奠定了基础。

    转载地址:http://fetpz.baihongyu.com/

    你可能感兴趣的文章
    poj 2112 最优挤奶方案
    查看>>
    Qt编写自定义控件12-进度仪表盘
    查看>>
    poj 2186 Popular Cows :求能被有多少点是能被所有点到达的点 tarjan O(E)
    查看>>
    POJ 2186:Popular Cows Tarjan模板题
    查看>>
    POJ 2229 Sumsets(递推,找规律)
    查看>>
    poj 2236
    查看>>
    POJ 2243 Knight Moves
    查看>>
    POJ 2262 Goldbach's Conjecture
    查看>>
    POJ 2362 Square DFS
    查看>>
    poj 2386 Lake Counting(BFS解法)
    查看>>
    poj 2387 最短路模板题
    查看>>
    POJ 2391 多源多汇拆点最大流 +flody+二分答案
    查看>>
    POJ 2403
    查看>>
    poj 2406 还是KMP的简单应用
    查看>>
    POJ 2431 Expedition 优先队列
    查看>>
    Qt笔记——获取位置信息的相关函数
    查看>>
    POJ 2484 A Funny Game(神题!)
    查看>>
    POJ 2486 树形dp
    查看>>
    POJ 2488:A Knight's Journey
    查看>>
    SpringBoot为什么易学难精?
    查看>>