草庐IT

IIC_wr_eeprom

全部标签

嵌入式开发常用的三种通信协议串口通信、SPI和IIC

常用的三种通信协议串口通信、SPI和IIC文章目录常用的三种通信协议串口通信、SPI和IIC一、通信分类1.1.同步通信和异步通信1.2.单工通信、半双工通信和全双工通信1.3.串行通信与并行通信二、串口通信2.1.UART2.2.RS232通信2.3.RS485通信三、SPI通信四、IIC通信一、通信分类1.1.同步通信和异步通信发送方和接收方按照同一个时钟节拍工作就叫同步。发送方和接收方没有统一的时钟节拍、而各自按照自己的节拍工作就叫异步。同步通信:通信双方按照统一节拍工作,所以配合很好;一般需要发送方给接收方发送信息同时发送时钟信号,接收方根据发送方给它的时钟信号来安排自己的节奏。同步通

IIC通信协议详解 & PCF8591应用(Verilog实现FPGA)

IIC通信协议详解&PCF8591应用(Verilog实现/FPGA)该文章结合PCF85918-bitAD/DA模数/数模转换器来详细介绍IIC通信协议,尽量做到条理清晰,通俗易懂。该文图片均从PCF8591手册中截取,一定程度上引导读者学习阅读datasheet。之后可能会更新如何将IIC的Verilog实现变为一个IP核,并在pynq-Z2板子上使用。1.PCF8591引脚2.功能介绍2.1地址位在I2C总线系统中,每个PCF8591设备都通过发送一个有效地址来激活。地址由固定部分和可编程部分组成。可编程部分必须根据地址引脚A0、A1和A2进行设置。在I2C总线协议中,地址必须始终作为起

STM32的HAL库的IIC OLED驱动

        目前IICOLED屏幕是初学者常用的外设,本文将介绍STM32F407(所有STM32都大同小异)方面的oled驱动,下一篇文章将会介绍linux的IIC驱动。    OLED启动主要分为以下几步:①屏幕初始化②开启屏幕显示③清屏(不清屏的话屏幕将会出现一片雪花)④发送要显示的字符串、数字、汉字等一、工程建立首先利用Stm32CubeMX软件建立工程,因屏幕是i2c通信因此此工程只配置i2c和时钟即可。时钟配置:         i2c配置,本次选用的为i2c1:        然后生成工程即可。二、代码编写oled有写命令和写数据两种操作,写命令为配置某项功能时使用,写数据为

STM32的HAL库的IIC OLED驱动

        目前IICOLED屏幕是初学者常用的外设,本文将介绍STM32F407(所有STM32都大同小异)方面的oled驱动,下一篇文章将会介绍linux的IIC驱动。    OLED启动主要分为以下几步:①屏幕初始化②开启屏幕显示③清屏(不清屏的话屏幕将会出现一片雪花)④发送要显示的字符串、数字、汉字等一、工程建立首先利用Stm32CubeMX软件建立工程,因屏幕是i2c通信因此此工程只配置i2c和时钟即可。时钟配置:         i2c配置,本次选用的为i2c1:        然后生成工程即可。二、代码编写oled有写命令和写数据两种操作,写命令为配置某项功能时使用,写数据为

STM32单片机初学4-IIC通信(软件模拟)

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

IIC总线可以驱动很多器件,比较常见的有OLED、EEPROM存储器(AT24C02)、温度传感器(LM75A)、温湿度传感器(DHT11)等。有关IIC总线协议的基本原理可以看我之前的文章介绍。这一次总结一下IIC驱动OLED的实现过程,实现简单的中英文和图片显示。(有关IIC的时序基本函数参考我之前的博客)嵌入式开发中最常用的显示屏主要有一下几种:(1)TFTLCD,它的特点是屏幕可以做到很大,性价比高,而且色彩丰富,适合显示一些视觉方面的内容,比如手机屏幕,笔记本屏幕等。 (2)字符液晶屏,如LCD1206(12*6的像素),LCD12864(128*64像素),如下图,其特点是单色,像

FPGA开发(2)——IIC通信

1、IIC通信理论知识I2C通讯协议(Inter-IntegratedCircuit)是由Philips公司开发的一种简单、双向二线制同步串行总线,只需要两根线即可在连接于总线上的器件之间传送信息。I2C通讯协议和通信接口在很多工程中有广泛的应用,如数据采集领域的串行AD,图像处理领域的摄像头配置,工业控制领域的X射线管配置等等。除此之外,由于I2C协议占用引脚特别少,硬件实现简单,可扩展型强,现在被广泛地使用在系统内多个集成电路(IC)间的通讯。IIC物理层框图如下图所示。(1)它是一个支持多设备的总线。“总线”指多个设备共用的信号线。在一个I2C通讯总线中,可连接多个I2C通讯设备,支持多

STM32CubeMX配置STM32F407的硬件IIC采集AHT20的温湿度

文章目录前言一、ATH20手册连接与注意事项二、STM32CubeMX配置硬件IIC三、具体实现代码前言最近在使用奥松的AHT20对环境温湿度进行采集。本例程采用ST的硬件IIC进行通讯,具体操作如下。一、ATH20手册连接与注意事项手册连接:AHT20数据手册注意事项:1、手册中器件地址是错误的,如下图:此器件地址实际应该是0x70,而不是0x38。2、在使用模拟IIC读取温湿度数值时,一定注意在停止信号前发送“NACK”非应答信号,而中间读取完一个字节发送的是“ACK”应答信号。如下图所示:但是采用HAL库配置的硬件IIC,则直接使用如下两个相关函数即可,无需关注此应答信号。HAL_Sta

【STM32CubeMX+HAL库】I2C详解+读写EEPROM

在之前的标准库中,STM32的硬件IIC非常复杂,更重要的是它并不稳定,所以都不推荐使用。但是在我们的HAL库中,对硬件IIC做了全新的优化,使得之前软件IIC几百行代码,在HAL库中,只需要寥寥几行就可以完成 那么这篇文章将带你去感受下它的优异之处。本文将详细地讲解I2C协议,并基于I2C来读写EEPROM模块以达到练习的目的通过本篇博客您将学到:I2C的基本原理STM32CubeMX创建I2C例程I2C函数库(HAL)AT24C256芯片原理及读写方法I2C简介 IIC(Inter-Integrated Circuit)总线是一种由NXP(原PHILIPS)公司开发的两线式串行总线,用于连

caching - 超时执行 SET {Key}, inst : 0, mgr : Inactive, queue : 2, qu=1, qs=1, qc=0, wr=1/1, in=0/0

我正在尝试使用StackExchange.Redis客户端将一个90KB的pdf文件保存到AzureRedis缓存中。我已将该文件转换为字节数组并尝试使用stringSet方法保存它并收到错误。代码:byte[]bytes=File.ReadAllBytes("ABC.pdf");cache.StringSet(info.Name,bytes);-->此行抛出异常“执行SET{Key}超时,inst:0,mgr:Inactive,queue:2,qu=1,qs=1,qc=0,wr=1/1,in=0/0".请帮忙。 最佳答案 执行SE