目前IICOLED屏幕是初学者常用的外设,本文将介绍STM32F407(所有STM32都大同小异)方面的oled驱动,下一篇文章将会介绍linux的IIC驱动。 OLED启动主要分为以下几步:①屏幕初始化②开启屏幕显示③清屏(不清屏的话屏幕将会出现一片雪花)④发送要显示的字符串、数字、汉字等一、工程建立首先利用Stm32CubeMX软件建立工程,因屏幕是i2c通信因此此工程只配置i2c和时钟即可。时钟配置: i2c配置,本次选用的为i2c1: 然后生成工程即可。二、代码编写oled有写命令和写数据两种操作,写命令为配置某项功能时使用,写数据为
目前IICOLED屏幕是初学者常用的外设,本文将介绍STM32F407(所有STM32都大同小异)方面的oled驱动,下一篇文章将会介绍linux的IIC驱动。 OLED启动主要分为以下几步:①屏幕初始化②开启屏幕显示③清屏(不清屏的话屏幕将会出现一片雪花)④发送要显示的字符串、数字、汉字等一、工程建立首先利用Stm32CubeMX软件建立工程,因屏幕是i2c通信因此此工程只配置i2c和时钟即可。时钟配置: i2c配置,本次选用的为i2c1: 然后生成工程即可。二、代码编写oled有写命令和写数据两种操作,写命令为配置某项功能时使用,写数据为
IIC(Inter-IntegratedCircuit)又称I2C(习惯读“I方C”),是IICBus简称,中文名为集成电路总线,它是一种串行通信总线,使用多主从架构,由飞利浦公司在1980年代为了让主板、嵌入式系统或手机用以连接低速周边设备而发展。适用于IC间的短距离数据传输。最初的IIC通信速率只有100Kbps(12.5KB/s),后来又发展到400Kbps(50KB/s),再后来发展到1Mbps和3.4Mbps(高速模式)。速度越快,对通信设备的要求就越高,所以很多IIC通信设备并不支持高速模式。IIC是单片机最常用的通讯方式之一,如果单片机需要扩展EEPROM存储芯片,就会用到IIC
IIC总线可以驱动很多器件,比较常见的有OLED、EEPROM存储器(AT24C02)、温度传感器(LM75A)、温湿度传感器(DHT11)等。有关IIC总线协议的基本原理可以看我之前的文章介绍。这一次总结一下IIC驱动OLED的实现过程,实现简单的中英文和图片显示。(有关IIC的时序基本函数参考我之前的博客)嵌入式开发中最常用的显示屏主要有一下几种:(1)TFTLCD,它的特点是屏幕可以做到很大,性价比高,而且色彩丰富,适合显示一些视觉方面的内容,比如手机屏幕,笔记本屏幕等。 (2)字符液晶屏,如LCD1206(12*6的像素),LCD12864(128*64像素),如下图,其特点是单色,像
1、IIC通信理论知识I2C通讯协议(Inter-IntegratedCircuit)是由Philips公司开发的一种简单、双向二线制同步串行总线,只需要两根线即可在连接于总线上的器件之间传送信息。I2C通讯协议和通信接口在很多工程中有广泛的应用,如数据采集领域的串行AD,图像处理领域的摄像头配置,工业控制领域的X射线管配置等等。除此之外,由于I2C协议占用引脚特别少,硬件实现简单,可扩展型强,现在被广泛地使用在系统内多个集成电路(IC)间的通讯。IIC物理层框图如下图所示。(1)它是一个支持多设备的总线。“总线”指多个设备共用的信号线。在一个I2C通讯总线中,可连接多个I2C通讯设备,支持多
文章目录前言一、ATH20手册连接与注意事项二、STM32CubeMX配置硬件IIC三、具体实现代码前言最近在使用奥松的AHT20对环境温湿度进行采集。本例程采用ST的硬件IIC进行通讯,具体操作如下。一、ATH20手册连接与注意事项手册连接:AHT20数据手册注意事项:1、手册中器件地址是错误的,如下图:此器件地址实际应该是0x70,而不是0x38。2、在使用模拟IIC读取温湿度数值时,一定注意在停止信号前发送“NACK”非应答信号,而中间读取完一个字节发送的是“ACK”应答信号。如下图所示:但是采用HAL库配置的硬件IIC,则直接使用如下两个相关函数即可,无需关注此应答信号。HAL_Sta
目录一、IIC原理1.1概述1.2写操作1.3读操作1.4总线数据传输时间二、项目设计2.1概述2.2状态机2.3波形仿真2.3效果演示本文内容:本文主要基于一篇外文手册24AA04/24LC04B设备,采用IIC协议进行数据传输,用FPGA模拟从机24AA04/24LC04B,PC为主机进行数据传输,深入学习IIC协议一、IIC原理1.1概述根据24AA04/24LC04B手册,可以知晓该设备采用100kHz或者400kHz的速度进行数据传输,同时有一个16字节的缓存器,所以项目中要定义一个16字节的缓存器同时需要定义两块256×8的数据块管脚种类:VCC、GND、SCL、SDAVCC:电源
文章目录一、I2C协议简介I2C物理层I2C协议层I2C架构通讯过程二、STM32CubeMX配置三、I2CHAL库函数一、I2C协议简介I2C通讯协议(Inter-IntegratedCircuit)也就是IIC;由Phiilps公司开发的,它引脚少,硬件实现简单,可扩展性强,不需要USART、CAN等通讯协议的外部收发设备。I2C协议分为物理层和协议层。物理层规定通讯系统中具有机械、电子功能部分的特性,确保原始数据在物理媒体的传输。协议层主要规定通讯逻辑,统一收发双方的数据打包、解包标准。简单来说物理层规定我们用嘴巴还是用肢体来交流,协议层则规定我们用中文还是英文来交流。I2C物理层I2C
简介I2C是飞利浦公司设计的,一种很常见的总线协议,I2C使用两条线在主控制器和从机之间进行数据通信。一条是SCL(串行时钟线),另外一条是SDA(串行数据线),这两条数据线需要接上拉电阻,总线空闲的时候SCL和SDA处于高电平。I2C总线标准模式下速度可以达到100Kb/S,快速模式下可以达到400Kb/S。I2C总线工作是按照一定的协议来运行的,接下来就看一下I2C协议。I2C是支持多从机的,也就是一个I2C控制器下可以挂多个I2C从设备,这些不同的I2C从设备有不同的器件地址,因而I2C主控制器可以通过I2C设备的器件地址访问指定的I2C设备。主从机的接线图如下图所示:其中SDA和SCL
IIC的基本介绍IIC总线的发展: 芯片间总线(InterInterfaceCircuit,IIC),是应用广泛的芯片间串行扩展总线。目前世界上采用的IIC总线一共有两个规范,分别由荷兰飞利浦公司和日本索尼公司提出的,现在基本采用荷兰飞利浦的IIC总线的技术规范。IIC总线的优点: 1、IIC总线优点中最主要的优点是其简单性(IIC只有两条信号线)和有效性(根据SCL线上的时钟线来判断)。带有IIC总线的接口的单片机都可直接与具有IIC总线接口的各种扩展器件(如存储器、I/O芯片、A/D、D/A、键盘、显示器、时钟、日历等)连接。由于IIC总线采用纯软件的寻址方法,无须