【北京迅为】《STM32MP157开发板嵌入式开发指南》- 第176章 通过逻辑分析仪认识I2C波形

news2024/10/12 14:43:35

iTOP-STM32MP157开发板采用ST推出的双核cortex-A7+单核cortex-M4异构处理器,既可用Linux、又可以用于STM32单片机开发。开发板采用核心板+底板结构,主频650M、1G内存、8G存储,核心板采用工业级板对板连接器,高可靠,牢固耐用,可满足高速信号环境下使用。共240PIN,CPU功能全部引出:底板扩展接口丰富底板板载4G接口(选配)、千兆以太网、WIFI蓝牙模块HDMI、CAN、RS485、LVDS接口、温湿度传感器(选配)光环境传感器、六轴传感器、2路USB OTG、3路串口,CAMERA接口、ADC电位器、SPDIF、SDIO接口等


第176章 通过逻辑分析仪认识I2C波形

在本章节将使用逻辑分析仪对前面章节编写的FT5X06 I2C驱动产生的波形进行分析,由于采集触摸芯片的波形需要飞线,操作较为复杂,所以同学们不需要自己实际进行采集,只需要看作者采集到的波形即可。

采集到的整体波形如下所示:

接下来对每一部分的波形进行分析。

176.1写操作

在数据传输之前,主机要先发送一个起始信号,起始信号为SDA线从高电平到低电平的跳变,同时SCL线保持高电平,就对应下图所示部分,逻辑分析仪软件也用一个绿色的远点进行了标注, 

然后传输了一个8位的数据,分别为7位的地址和读写方向,前七个时钟周期的值为0111000,转换为16进制就是0x38,也就是FT5X06的芯片地址,第8个时钟周期为0,表示读写方向为写入。 

然后是一个ACK应答信号,这里为0低电平表示I2C外设已发送应答,然后就要数据传输了,要操作的寄存器地址为0x80,要写入的数据为0x4b,具体波形图如下所示: 

发送完成之后主机会发送一个终止信号,终止信号为SDA线从低电平到高电平的跳变,同时SCL线保持高电平,具体波形图如下所示: 

可以将写操作分为以下步骤:

1.主机发送一个起始信号

2.主机发送I2C外设的地址和写操作,等待应答信号

3.从机发送应答信号

4.主机要发送寄存器的地址,等待应答信号

5.从机发送应答信号

6.主机发送要写入的寄存器的数据,等待应答信号

7.从机发送应答信号

8.主机要发送终止信号,如果写多个寄存器,重复6,7步骤。

176.2读操作

 

 无论是读操作还是写操作,都要先写入I2C外设地址,所以最开始的波形是相同的,如下图所示:

 

然后是发送要都读取的寄存器地址,也就是0x80,具体波形如下图所示: 

接下来主机就可以读取该寄存器地址的数据了,读取到的数据为0x4B,具体波形如下图所示:

可以将读操作分为以下步骤:

1.主机发送一个起始信号

2.主机要发送12C外设地址和写操作,等待应答信号

3.从机发送应答信号

4.主机要发送要读取的寄存器的地址,等待应答信号

5.从机发送应答信号

6.主机发送起始信号

7.主机发送要读取的12C外设的地址和读操作,等待应答信号

8.从机发送应答信号

9.从机发送数据,也就是要读取的寄存器的数据,等待应答或者非应答信号

10.主机如果不在读取数据,就要发送非应答信号,如果继续读取,就发送应答信号

 

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

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

相关文章

Win + R 快捷键

页面如下: 连接远程桌面(服务器) mstsc 打开计算机 calc 新建文本文档 notepad 设备管理器 wifi拉闸调驱动等 devmgmt.msc 计算机管理 调mysql服务等 compmgmt.msc 应用和程序 已安装应用查看、卸载 appwiz.cpl 注册表编辑器 鼠标右键菜单…

腾讯云SDK点播播放数据

点播播放质量监控提供点播播放全链路的数据统计、质量监控及可视化分析服务。支持实时数据上报、数据聚合、多维筛选和精细化定向分析,可帮助企业实时掌控大盘运营状况、了解用户习惯和行为特征,有效指导运营决策、驱动业务增长。 注意事项 点播播放质…

小红书日常实习一面凉经

小红书日常实习一面凉经 发面经,攒人品。 项目拷打: 1.实习中有没有对数据库表做强管控,听没听说过json schema。 2.Reactor响应式编程的基本原理。 3.黑名单功能为什么不用es去实现?你是基于怎样的考虑? 场景八股&am…

在使用商品详情 API 接口时需要注意什么?

在使用商品详情 API 接口时,需要注意以下几个方面: 一、API 使用规范方面 使用频率限制 许多 API 服务提供商都会对 API 的使用频率有所限制。这是为了防止某个用户过度使用 API 资源,影响其他用户的正常使用或者对服务器造成过大压力。例如…

移远通信受邀参展2024中国移动全球合作伙伴大会,以深厚实力全力迎接AI+时代

在中国科技迅速发展的今天,人工智能(AI)与物联网正在成为推动数字经济变革的重要力量。 为进一步推进AI技术与各领域的融合发展,10月11日至13日,第12届中国移动全球合作伙伴大会在广州市隆重举行,本次大会以…

merlion的dashboard打开方法

安装好merlion包后,在anaconda prompt中进行如下图操作: 先进入创建好的虚拟环境:conda activate merlion再执行命令:python -m merlion.dashboard在浏览器中手动打开图中的地址: http://127.0.0.1:8050 打开后的界面…

云手机与传统手机的区别是什么?

随着科技的快速进步,云手机逐渐成为手机市场的热门选择。与传统的智能手机相比,云手机具有许多独特的功能和优势,尤其在多账号管理和高效操作方面备受关注。那么,云手机究竟与普通手机有哪些区别呢? 1. 更灵活的操作与…

图片怎么转为pdf?1分钟学会图片转为pdf!

图片怎么转为pdf?在现今这个以视觉元素为核心的信息时代,图像已无缝嵌入我们的日常之中,从轻巧的智能手机显示屏到画质超清的大屏电视,各类图像素材犹如万花筒般绚烂多彩,广泛涉及摄影美学、创新设计、知识传播以及科研…

强化学习笔记之【SAC算法】

强化学习笔记之【SAC算法】 前言: 本文为强化学习笔记第三篇,第一篇讲的是Q-learning和DQN,第二篇DDPG,第三篇TD3 TD3比DDPG少了一个target_actor网络,其它地方有点小改动 CSDN主页:https://blog.csdn.n…

Android Studio 和 MATLAB 中 gradle无法下载或下载过慢问题的解决 2024-10-08

系统环境: win10 64bit , MATLAB 2022b 1.从第三方镜像下载gradle包 如 腾讯镜像站 : 腾讯软件源gradle 选择需要的版本进行下载: 这里我选择首图中需要的 gradle-7.0.2-all.zip 2.完成 将下载好的文件放置下列路径 C:\Users\Administrator(这里替换成你所使用的用户名)\…

vscode显示.vscode文件

对于我这样的vscode新手来说,刚开始,都不知道如何生成.vscode文件,敢肯定的是,有很多同学和我一样,也不知道如何生成.vscode文件。 这个的话,我选择了第一个 然后提示报错也没事,因为已经生成…

月之暗面推出 Kimi 探索版:搜索量暴增 10 倍,精读 500 页信息,开启 AI 搜索新纪元

月之暗面推出 Kimi 探索版:搜索量暴增 10 倍,精读 500 页信息,开启 AI 搜索新纪元 作者: 猫头虎 最近,国产 AI 独角兽公司月之暗面再度刷新了我们的认知,其推出的Kimi 探索版凭借自主 AI 搜索能力&#…

【寄存器开发速成】半小时入门寄存器开发(基于STM32的寄存器开发简明教程)

一.认识寄存器 寄存器(register)是CPU(中央处理器)的组成部分,是一种直接整合到cpu中的有限的高速访问速度的存储器,它是有一些与非门组合组成的,分为通用寄存器和特殊寄存器。 寄存器是CPU的最…

产品经理,真有35岁这道坎吗?

前言 在职场生涯的某个阶段,产品经理们往往会面临一个普遍的疑问:是否存在一个35岁的门槛,一旦跨过,职业发展就会遭遇瓶颈?尤其是在技术迭代迅速的互联网行业,这样的担忧尤为明显。然而,对于有…

教你如何2小时从零开始搭建一套完整的性能测试环境

文章目录 一、前言1.1 准备工作1.2 最终目标 二、安装步骤2.1 购买云服务器和NAS存储2.2 kubekey方式安装k8s集群2.2.1 环境检查及安装基础包2.2.2 kubekey安装k8s集群2.2.3 压测机环境准备2.2.4 中间件部署2.2.4.1 部署NFS远程共享存储2.2.4.2 部署MySQL2.2.4.3 部署Redis2.2.…

spring 启动失败 active: @env@

参考:SpringBoot启动失败报错,spring.profiles.active:env中环境变量无法识别报错_active: env_profileactive启动报错 ine 3, column 13:-CSDN博客

通义灵码-----阿里巴巴推出的 AI 编程助手,一站式安装使用教程。 我自己就是在用,感觉写代码会高效很多

"通义灵码"(Tongyi Lingma),这是阿里巴巴推出的 AI 编程助手。通义灵码是基于阿里云的通义大模型,为开发者提供代码补全、代码生成等智能辅助功能。 启用和使用通义灵码 以下是如何在 IntelliJ IDEA 中安装和使用通义灵…

VSCode的常用插件(持续更新)

点击左边工具栏的“扩展”,在搜索栏中查找对应插件,点击“安装”,安装完成后右边界面的插件会显示“卸载”按钮。 1、中文(简体)语言包 2、Auto Rename Tag 修改开始标签,结束标签也会随之自动变化。 3、O…

ClickHouse的原理及使用,

1、前言 一款MPP查询分析型数据库——ClickHouse。它是一个开源的,面向列的分析数据库,由Yandex为OLAP和大数据用例创建。ClickHouse对实时查询处理的支持使其适用于需要亚秒级分析结果的应用程序。ClickHouse的查询语言是SQL的一种方言,它支…

Python 情感分析与词向量

Python 情感分析与词向量 在现代数据驱动的世界中,情感分析成为了一种重要的文本分析技术,它帮助我们理解和挖掘用户对产品、服务或事件的情感倾向。Python 作为一种强大的编程语言,提供了丰富的工具和库来支持情感分析的实现,其…