拿到开发板后进行了进行蜂鸣器的使用以及ADC的测试,对开发板有了一定了解,接下使用IIC实现OLED的使用,可以用做人机交互使用。
本次使用的是IIC0,首先查看硬件设计,根据引脚分配表得到IIC0的引脚编号
查看原理图设计,查找IIC0输出的排针,板子上没有设计OLED,需要使用杜邦线的连接。
继续查找
对应开发板的脚位
实物连接
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/ioctl.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#define OLED_COMMEND_ADDR 0x00
#define OLED_DATA_ADDR 0x40
#define OLED_ADDRESS 0x3C
/* 主函数 */
int main(int argc, char *argv[])
{
int i = 0; //用于循环
OLED_Init(); //初始化oled
usleep(1000 * 100);
OLED_Fill(0xff); //全屏填充
while (1)
{
OLED_Fill(0xff); //全屏填充
sleep(1);
OLED_CLS(); //清屏
sleep(1);
OLED_ShowStr(0, 3, (unsigned char *)"HD-G2UL", 1); //测试6*8字符
OLED_ShowStr(0, 4, (unsigned char *)"Hello DZFSY", 2); //测试8*16字符
sleep(1);
OLED_CLS(); //清屏
}
close(fd);
}
本次OLED屏幕已经驱动完成,整体使用感受还好,就是通过排针引出的IO没使用常用的排针,导致OLED的连线不紧,效果如下:
更多回帖