目录
前期准备:
- STM32CubeMX
- STM32C8T6核心板
- IDE Keil(MDK-ARM)
- 杜邦线×4
- 0.96寸OLED屏(4针脚)
一、IIC背景和接线
1.1 什么是IIC
IIC(Inter-Integrated Circuit)是一个
多主从的串行总线
,又叫I2C,是由飞利浦公司发明的通讯总线,属于半双工同步传输类型总线。IIC总线是非常常见的数据总线,仅仅使用两条线就能完成多机通讯,一条
SCL时钟线
,另外一条
双向数据线SDA
- 软件IIC:通过软件编写代码控制管脚按照IIC的原理进行工作,模拟IIC就是软件IIC
- 硬件IIC:有些单片机的管脚复用功能有IIC,即这些单片机内部集成了专门用于IIC工作的芯片,即硬件IIC
硬件I2C的效率要远高于软件的,而软件I2C由于不受管脚限制,接口比较灵活
1.2 如何接线
单片机 | OLED屏 |
---|---|
电源地 | GND |
电源3.3V~5V | VCC |
IIC_SDA | PB7 |
IIC_SCL | PB6 |
二、STM32CubeMX部分
2.1 配置时钟
选择STM32F103C8Tx系列芯片,配置时钟的同时会自动配置IO口引脚
将HCLK设置为最大频率72MHz
2.2 配置IIC
2.3 工程生成
工程管理依旧是这几个选项,然后GENERATE CODE,STM32CubeMX部分完成
三、MDK 5 部分
3.1 移植OLED文件
文末有工程链接
将
oled
文件放在如图位置
打开MDK 5 ,点击如图
添加
oled.c
文件
添加
oled.h
文件路径
3.2 修改main函数
-
添加头文件
#include "oled.h"
-
OLED初始化
-
while(1)函数
编译下载时需要选择相对应的下载器,勾选以下
效果如图
版权声明:本文为Qxiaofei_原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。