I2C基本概念 I2C (芯片间)总线接口连接微控制器和串行I2C总线。它提供多主机功能,控制所有I2C总线特定的时序、协议、仲裁和定时。支持标准和快速两种模式,同时与SMBus 2.0兼容。I2C模块有多种用途,包括CRC码的生成和校验、 SMBus(系统管理总线—System ...
最近一段时间在做I C通信协议,需要在两块STM 之间做I C通信,定的是主机用IO口模拟,从机用的是STM 的硬件I C,我的项目要求是需要主从机之间能够进行一串数据收发而不出错,实验时在主机方面,利用IO口模拟主机,只需要理解时序就够了,同时将速度能够控制在 K 标准 左右,基本的时序理解网上大把的资料,所以主机这一块几个小时就搞定了,而在做从机时,遇到了困难,本来从机也想用IO口模拟的,但是 ...
2017-11-10 11:02 1 6382 推荐指数:
I2C基本概念 I2C (芯片间)总线接口连接微控制器和串行I2C总线。它提供多主机功能,控制所有I2C总线特定的时序、协议、仲裁和定时。支持标准和快速两种模式,同时与SMBus 2.0兼容。I2C模块有多种用途,包括CRC码的生成和校验、 SMBus(系统管理总线—System ...
主从通信】中STM32作为从机的例子。 在学习本问内容之前,如果对I2C协议还不太了解的朋友请先去了 ...
软件模拟协议:使用CPU直接控制通讯引脚(GPIO)的电平,产生出符合通讯协议标准的逻辑。 硬件实现协议:由STM32的I2C片上外设专门负责实现I2C通讯协议,只要配置好该外设,它就会自动根据协议要求产生通讯信号,收发数据并缓存起来,CPU只要检测该外设的状态 ...
一、什么是I2C? I2C是串行数据总线,有两根信号线组成,一根是SDA(数据线),一根是SCL(时钟线)。I2C总线是多主从总线,当有两个主机或多个主机同时初始化传输数据时,可以通过冲突检测和仲裁防止数据被破坏,每个连接到总线上的设备都有唯一的地址,任何器件既可以作为主机也可以作为从机 ...
/** ****************************************************************************** * @author ...
上一篇博客是使用I2C读写EERPOM的初级版本,这次在上次的基础上添加中断,使用DMA传输控制,新添加两个读写函数 采用中断方式和DMA可以充分利用单片机强大的硬件外设,提高整体运行效率,而且,在编程上也更为便捷 新的页写函数如下 代码中注释掉的部分是原来的设计,在它下面是新 ...
调试情况1 现象:主I2C发送数据而没有收到应答,则下一次不能正常发送数据 背景:主I2C每次应该都能正常发送数据 硬件:野火STM32-MINI,1主0从,SCL和SDA直接上拉 软件:按键触发中断,主I2C发送一次数据,中断优先级,按键最低,I2C最高,且主I2C中有 ...
开发板:野火指南者(STM32F103VE) STM32库版本:STM32F10x_StdPeriph_Lib_V3.5.0 IDE:KEIL5(代码编写很不方便,只在编译的时候用到) 代码编写工具:Source Insight 4.0(跟读代码、编写代码的最佳工具) 使用到的串口 ...