I2C通信

news2025/1/31 3:14:36

一、理论上了解I2C时序

I2C写数据时序如图:

 通过解析器解析I2C通信如上图(SCL和SDA反了)。

1---起始信号        2、3---应答信号ACK       5---停止信号

起始信号:SCL线是高电平时,SDA线从高电平向低电平切换。

停止信号SCL线是高电平时,SDA线从低电平向高电平切换。

I2C通信的过程:

起始--->写NFC芯片的地址(NFC芯片确认地址给MCU响应)--->MUC发送想要写入的寄存器地址(NFC芯片收到给响应)--->给地址写入数据(写入完成给响应)--->结束

注意:写NFC芯片的地址,一般NFC芯片为七位,比如:1010111,第八位是读写操作位。

1代表读;0代表写。

例如:0xA0是想对应芯片地址写数据。

遇到的问题:

写NFC地址的时候,没有收到对应响应。

查找数据手册后发现,有的芯片需要把CSN引脚拉低,拉低后解决问题。

二、实战

有一款NFC芯片FM11NT081D,它是通过I2C写入或读取里面数据的。

1、细看数据手册

粗略浏览数据手册目录,找到重点细看。

如:I2C工作流程、主机向从机写入数据流程及读取数据流程,还有写入数据用户区等。

 2、测试读写数据

2、1写数据

看数据手册分析:

芯片地址是1010111,七位地址

流程应该是:

start--->写NFC芯片的地址(最后一位是0,写数据)--->MUC发送想要写入的寄存器地址1--->MUC发送想要写入的寄存器地址2(注意高字节在前,低字节在后)  --->写入数据--->stop

对应写入代码测试效果。

 从下图看到数据写入成功。

遇到的问题:

我在写完两个寄存器地址后,告诉芯片现在开始写数据(这一步多余的,因为人家数据手册上告诉你:写入两个寄存器地址就可以写数据了!),加入了这个代码,时序上有回应,但是芯片读数据是没有写入信息。

 2、2读数据

 读数据就比较有意思了。

数据手册这样写:流程应该是:

start--->写NFC芯片的地址(最后一位是1,读数据)--->MUC发送想要写入的寄存器地址1 --->读数据--->stop

但是按照这个流程测试,读不到数据。

查看数据手册,字节数超过256,经询问要写入寄存器地址两个,在读取。

 

然后,修改了一下读数据流程:

start--->写NFC芯片的地址(最后一位是0,写数据)--->MUC发送想要写入的寄存器地址1--->MUC发送想要写入的寄存器地址2(注意高字节在前,低字节在后)  --->告诉芯片开始读数据 --->读数据--->stop

以上流程可以读到数据。虽然不太懂,MCU终于可以读到数据了(开心~)。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/413431.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

一个大二学生送给大一学弟学妹的建议

博主简介:先简单的介绍一下我吧,本人是一名大二学生,来自四川。目前所学专业是人工智能,致力于在CSDN平台分享自己的学习内容。 我为什么要写这篇文章? 我来到CSDN也已经一年了,在这一年里面,我…

go binary包

binary包使用与详解 最近在看一个第三方包的库源码,bigcache,发现其中用到了binary 里面的函数,所以准备研究一下。 可以看到binary 包位于encoding/binary,也就是表示这个包的作用是编辑码作用的,看到文档给出的解释…

加密的本质:数学的不对称性

文章目录 引言I 预备知识1.1 加密和授权1.2 非对称的特性II 椭圆曲线加密的方法2.1 椭圆曲线2.2 椭圆曲线的性质引言 不对称有时却自有其妙处与美感,比如黄金分割就是不对称的。 可以通过加密和授权,兼顾保护信息不外泄,而且某些得到授权的人还能使用信息。 I 预备知识 …

2022年人民满意手机银行发展洞察

易观:商业银行积极践行“金融为民”,坚持“以用户为中心”的发展理念,从全客群、全服务、全渠道推动金融服务触达广大人民群众。其中,手机银行作为服务及经营主阵地,是人民群众获取金融服务的超级入口及服务平台。 “以…

键盘摄影:今天老李是一名动物摄影师

键摄,全称键盘摄影师。原本是一个贬义词,是指那些没有相机,没有实拍经验,仅凭一副鼠标键盘,在家里打字,在网上头头是道地分享摄影技巧,同时对别人的作品指指点点,然后又无法秀出自己…

中国上海人工智能企业中集飞瞳全球港航AI独角兽企业,成熟智慧港航AI产品,数字化港口自动化码头智慧港航智能化中国上海人工智能企业

中国上海人工智能企业中集飞瞳全球港航AI独角兽企业,成熟智慧港航AI产品,数字化港口自动化码头智慧港航。CIMCAI打造全球领先新一代集装箱管理方案,手机小程序随时随地AI验箱,自动化箱况检测信息识别,集装箱信息识别箱…

总线的控制

总线控制 目录总线控制总线的判优控制链式查询计数器定时查询独立请求小结总线通信控制同步通信异步通信半同步通信分离通信由于总线上连接着多个部件,什么时候由哪个部件发送信息,如何给传送信息定时,如何防止信息丢失,如何避免多…

React源码解析之createElement和render方法

参考资料 请注意,这是React16.8的源码解析,当然他完全可以作为你阅读源码的参考,他还没有落后。 Step1 开始之前,要先了解一个知识点⬇️ 我们都知道,要在JSX中写React语法,那为什么不能在js文件中写呢&am…

微搭使用笔记(六) 通过源码组件实现小程序端地图

前言 微搭官方提供了大量常用组件,但由于微搭本身也是在不断地完善过程中,有些组件还是没有提供,但同时微搭允许用户自定义组件并在应用中使用。 实际场景是这样的,我们需要一个地图页面在上面展示已知设备的信息和位置&#xf…

CentOS7 虚拟机 双网卡绑定

一、网卡绑定模式 模式类型特点mode0round-robin(平衡轮询策略)基于per packet方式,轮询往每条链路发送报文。提供负载均衡和容错的能力,当有链路出问题,会把流量切换到正常的链路上。交换机端需要配置聚合口。mode1a…

Linux网络编程(四)——UDP通信

目录 0x01 UDP协议 一、UDP通信简介以及接口 二、UDP的接口 三、UDP收发例程 0x02 广播 一、设置广播数据函数接口 二、广播代码实现 0x03 组播(多播) 一、组播地址 二、设置组播函数接口 三、代码实现 0x01 UDP协议 一、UDP通信简介以及接口…

《Netty》从零开始学netty源码(三十六)之ChannelConfig

ChannelConfig 在前面创建NioServerSocketChannel的 构造函数中,最后一步创建了channel属性的配置类NioServerSocketChannelConfig,本文详细分析下该类,先看下其类结构图。 类结构图 服务端使用的NioServerSocketChannelConfig,…

ELK日志分析系统+zookeeper

ELK日志分析系统zookeeper一、zookeeper简介1、zookeeper概念2、zookeeper数据结构二、zookeeper工作机制1、zookeeper特点2、zookeeper应用场景三、zookeeper集群部署1、安装前先关闭防火墙 核心防护2、安装JDK3、安装zookeeper4、修改配置文件5、创建数据目录和日志目录&…

JavaEE-网络原理之UDP协议

目录UDP报文结构UDP的特点无连接不可靠面向数据报缓冲区基于UDP的应用层协议UDP报文结构 报头大小为8个字节. 16位源端口号与16位目的端口号: 16个比特位可表示65536个端口号,分别为0-65535,其中1-1023为为专属端口号,用来为一些知名服务器提供服务,例如: HTTP服务器专属端口号…

【CSS】课程网站 网格商品展示 模块制作 ③ ( 清除浮动需求 | 没有设置高度的盒子且内部设置了浮动 | 使用双伪元素清除浮动 )

文章目录一、清除浮动需求 ( 没有设置高度的盒子且内部设置了浮动 )二、清除浮动代码示例一、清除浮动需求 ( 没有设置高度的盒子且内部设置了浮动 ) 如果盒子没有设置高度 , 并且盒子中还设置了浮动 , 如上一篇博客 【CSS】课程网站 网格商品展示 模块制作 ② ( 网格商品展示盒…

溯源反制(windows)

痛点: windows服务器被恶意入侵出现遭受挖矿,在没有专业的安全溯源反制的工具如何排查系统异常文件精准找出异常程序呢? 这样的吗 使用开源火绒、后门工具、D_盾_web查杀工具、360安全卫士进行全局查杀搜寻异常文件程序。 在应急响应中&am…

SpringBoot默认包扫描机制与默认配置文件

文章目录一、SpringBoot默认包扫描机制 - 示例二、SpringBoot默认扫描包机制 - 原理三、SpringBoot手动扫描包机制 - 原理&示例四、ComponentScan与MapperScan五、SpringBoot默认配置文件一、SpringBoot默认包扫描机制 - 示例 默认情况下,扫描启动类同级及其子…

护眼灯到底有没有用?盘点口碑销量好的护眼台灯

有一定的护眼作用。很多人认为护眼灯是智商税,想法并不正确,市面上品质好的护眼灯,光线是通过特殊处理过的,色温、亮度、光线均匀度、显色性都贴合人眼,并且能够护眼的效果。 我们在挑选护眼灯时,在室内环…

【MyBatis Plus】003 -- 配置(基本、进阶、DB策略) 条件构造器

目录 4、配置 4.1 基本配置 4.1.1 configLocation (MyBatis 配置文件位置) 4.1.2 mapperLocations(MyBatis Mapper 所对应的 XML 文件位置) 4.1.3 typeAliasesPackage (别名包扫描路径) 4.2 进阶配置 4.2.1…

代码随想录算法训练营第五十七天 | 647. 回文子串、516. 最长回文子序列、动态规划总结

647. 回文子串 动规五部曲 1、确定dp数组(dp table)以及下标的含义 在判断字符串S是否为回文时,如果知道 s[1],s[2],s[3] 这个子串是回文的,那么只需要比较 s[0]和s[4]这两个元素是否相同,如果…