单片机实验2
一、IIC总线协议1.简介定义是一种广泛用于嵌入式系统的同步、串行、半双工通信协议用于在同一块电路板上的集成电路之间进行通信。I2C总线是一种物理通信架构用于连接多个设备实现设备之间的数据传输。I2C协议是一套规则定义了IIC总线上数据通信的过程包括如何启动通信、传输数据、应答信号、结束通信等。特点1.双线通信2.同步通信3.串行数据传输4.半双工传输5.主从架构6.支持多主多从7.从机地址唯一性8.速度灵活2.协议规则只能由主机产生a.起始信号SCL线高电平的时候SDA线产生下降沿b.终止信号SCL高电平的时候SDA线产生上升沿。主机和从机都能产生:a.应答信号:时钟线SCL高电平期间SDA低电b.非应答信号SCL高电平期间SDA高电平。总线空闲SCL和SDA一直为高电平数据有效在时钟线高电平期间只能读数据数据线电平不能变低电平期间可以写入数据数据线电平才能变数据的传输单元IIC线以字节为单位进行传输顺序为高位开始传输由主机发从机地址为7位左移1位加上数据传输方向位0写 1读3.数据手册从机地址计算公式精度选择指令通信方式主机先写发送设备地址写方向 寄存器/命令字节Command从机应答ACK。主机再读重新发起起始条件或重复起始发送设备地址读方向从机应答后返回 16 位数据MSB 在前。带校验数据之后跟随 CRC8用于检查读数据的完整性。终止主机接收 CRC8 后应答ACK最后以停止条件P结束。采集时间4.温湿度数据读取ioc配置二、SPI协议1.简介定义SPI通信是一种同步通信根据时钟信号设备得以在正确的时机发送和接收数据从而确保数据传输的有效性以及数据传输的速度。时钟信号由主设备产生通过SCK引脚输出主从设备的通信便根据SCK上的时钟信号进行数据收发。边沿触发总线接口 ( 引脚 ) SCK 、 MOSI master out slave in、 MISO master in slave out、 CS CS信号线进行从机的选择遵循一主多从或者一主一从的结构数据帧长度 8bit 或 16bit 数据传输的格式 MSB 或 LSB。 MSB表示先发送最高位LSB表示发送最低位。控制器可以自由配置先发高位还是低位指定当前要和哪一个设备通信只唤醒选中的那一个其他设备保持沉默不抢数据SPI 分离 GPIO 片选接法SCK、MOSI、MISO直接连通 MCU 硬件 SPI 外设引脚与从设备对应引脚属于 SPI 硬件专用功能脚。CS 片选不使用 SPI 外设自带 CS 引脚而是单独拿出一个普通的通用 GPIO 引脚软件控制高低电平来选中 / 释放从设备。优点一个 SPI 总线挂载多个从机时只需多分配几个普通 GPIO 做各自 CS大部分 MCU 硬件 SPI 的内置 NSS 引脚功能受限软件 GPIO 控制 CS 逻辑更可控适配绝大多数 SPI 传感器。缺点需要额外占用 一个普通 GPIO 引脚SPI 硬件自带 CS 引脚接法MCU 硬件 SPI 模块自带专用 CS 引脚直接连接到从设备 CS 脚由 SPI 硬件外设自动控制片选电平无需软件手动操作 GPIO。优点节省普通 GPIO 资源硬件自动管理 CS 时序发送数据时自动拉低、传输结束自动拉高简化代码适合高速连续传输。缺点一个 SPI 外设通常只有 1 个硬件 CS 脚只能挂载单个从设备时钟极性CPOLClock Polarity,简称CPOL,就是时钟极性,当主从设备之间没有数据传输的时候SCK时钟线的电平状态即空闲状态。当CPOL1时则SCK线空闲状态下是高电平当CPOLO时则SCK线空闲状态下是低电平。时钟相位CPHAClock Phase,简称CPHA,就是时钟相位。CPHA实际指的就是数据的采样时刻CPHA0时,则表示数据的采样是从时钟的第一个边沿CPHA1时则表示数据的采样是从时钟的第二个边沿。2.回环测试三、Modbus TCP 协议控制外设1.整体帧结构ADU 7 字节 MBAP 报文头 PDU功能码 数据一帧完整 Modbus TCP 由 7 字节 MBAP 头 至少 1 字节 PDU 功能码 组成a.MBAP 头部 7 字节固定结构字段长度作用说明事务处理标识符2 字节报文 ID客户端自增用于请求 - 应答配对服务器原样返回不参与运算协议标识符2 字节固定00 00代表 Modbus 协议长度2 字节后面所有字节总长度单元标识 PDU即 N2用于分包解析单元标识符1 字节等效 RTU 的从站地址以太网靠 IP 区分设备此字段可忽略常用默认值 01b.PDU 协议数据单元和 RTU 核心一致由1 字节功能码 N 字节数据组成读写线圈、寄存器的指令逻辑完全复用 Modbus RTU。对比 RTURTU 帧 从站地址 PDU CRC16 校验Modbus TCP无 CRC 校验。示例字节偏移内容名称详细说明0~100 01事务处理标识符 (Transaction ID)相当于请求的 “流水号”。客户端发的包 ID 是 0x0001服务器将来回复时必须带上同样的 0x0001这样单片机才能把 “回复” 和 “刚才的请求” 对上号。2~300 00协议标识符 (Protocol ID)固定为 0x0000代表这是 Modbus TCP 协议。如果收到非 0000 的值说明数据包不合法。4~500 06长度域 (Length)告诉服务器后面还有 6 个字节的数据需要读。后面 6 个字节就是 [01 03 00 00 00 01]。这一点极其关键单片机会根据这个数字去计算还要收多少包才算完整。601单元标识符 (Unit ID)相当于 Modbus RTU 里面的 “从机地址”。这里写 0x01代表告诉第 1 号设备“这包指令是发给你的”。703功能码 (Function Code)0x03 代表 “读保持寄存器”。告诉从机我要读取数据。8~900 00起始地址 (Starting Address)告诉从机“从你的第 0x0000 号寄存器开始读。”10~1100 01寄存器数量 (Quantity of Registers)告诉从机“我一共要读 1 个寄存器1 个寄存器占 2 个字节。”2.实验现象

相关新闻

C++23 <stacktrace>库实战:跨平台调试与异常处理新利器

C++23 <stacktrace>库实战:跨平台调试与异常处理新利器

1. 项目概述:为什么我们需要一个标准化的栈踪迹库?调试,大概是每个C开发者又爱又恨的环节。爱的是,当程序在你面前崩溃,而你通过蛛丝马迹最终定位到那个深藏不露的bug时,那种成就感无与伦比;恨的…

2026/8/20 7:24:39 阅读更多 →
Spring框架@RequestAttribute注解详解与应用实践

Spring框架@RequestAttribute注解详解与应用实践

1. RequestAttribute 注解深度解析在Spring框架中,RequestAttribute注解是一个相对小众但非常实用的注解。它主要用于从请求作用域(request scope)中获取预先存在的属性值。与大家更熟悉的RequestParam不同,RequestAttribute不是用来获取请求参数的&…

2026/8/20 23:34:37 阅读更多 →
MATLAB 2025a学习版安装与核心功能解析

MATLAB 2025a学习版安装与核心功能解析

1. MATLAB 2025a学习版安装体验与核心变化解析作为一名长期使用MATLAB进行科学计算的工程师,最近我成功安装了MATLAB 2025a学习版。这个版本带来了令人惊喜的界面革新和功能升级,完全不同于以往任何版本的使用体验。本文将详细分享我的安装过程、新版本的…

2026/8/20 2:21:45 阅读更多 →

最新新闻

AI提示词工程(高阶)第22课:构建提示词框架

AI提示词工程(高阶)第22课:构建提示词框架

📚前言 系统学习提示词,内容大纲如下: 【预告】AI提示词工程从入门到精通教程大纲-CSDN博客 前导课程: AI提示词工程:初阶6课合集-CSDN博客 --*-*-*-- 进阶--*-*-*-- AI提示词工程(进阶)第…

2026/8/21 9:04:49 阅读更多 →
DeepSeek Harness插件开发:dsh-tool-autoexpand自动展开工具调用结果

DeepSeek Harness插件开发:dsh-tool-autoexpand自动展开工具调用结果

如果你用过 DeepSeek Harness(简称 dsh),可能会遇到一个看似微小但极其影响效率的问题:当 AI 助手返回一个包含代码、JSON 或复杂文本的结果时,你需要手动点击那个小小的“展开”按钮,才能看到完整内容。在…

2026/8/21 9:04:49 阅读更多 →
ORB-SLAM3 Optimizer::PoseOptimization

ORB-SLAM3 Optimizer::PoseOptimization

以下对 ORB-SLAM3 中 Optimizer::PoseOptimization 函数的逐行注释,并补充数学模型与公式说明。 函数功能 该函数以当前帧的初始位姿为起点,通过仅优化相机位姿(地图点固定)来最小化所有匹配点的重投影误差,并迭代剔除离群点,最终得到更精确的帧位姿。 int Optimizer:…

2026/8/21 9:04:49 阅读更多 →
DeepSeek Harness 开源 45 小时 14 万 Star:一句 npx 跑起你的第一个 Agent

DeepSeek Harness 开源 45 小时 14 万 Star:一句 npx 跑起你的第一个 Agent

DeepSeek Harness 开源 45 小时 14 万 Star:一句 npx 跑起你的第一个 Agent2026 年 8 月 13 日,DeepSeek 在发布 V4-Pro 正式版的同时,一并开源了自己的第一款 Agent 运行框架 —— DeepSeek Harness(dsh)。上线 45 小…

2026/8/21 9:04:49 阅读更多 →
【JMeter 学习打卡 Day 4】多用户登录 + 动态 token 关联

【JMeter 学习打卡 Day 4】多用户登录 + 动态 token 关联

一、学习总览天数主题核心产出Day 1JMeter 入门与基础概念弄清 JMeter 是什么、能干什么、不能干什么Day 2第一个测试计划 HTTP 请求能独立搭出一个最小可运行的 HTTP 测试计划Day 3断言:让测试结果有意义理解为什么没有断言,错误率永远是 0Day 4参数化…

2026/8/21 9:04:49 阅读更多 →
MA-VLCM:多模态融合如何革新多智能体策略价值评估

MA-VLCM:多模态融合如何革新多智能体策略价值评估

1. 从单智能体到多智能体:价值评估的范式转变在强化学习领域,评估一个策略的好坏,或者说预测一个状态或状态-动作对的长期回报,是核心任务之一。传统的价值函数,无论是状态价值函数V(s)还是动作价值函数Q(s, a)&#x…

2026/8/21 9:03:49 阅读更多 →

日新闻

机场边检旅客定位系统国产化白皮书:算法、硬件、底座平台全程自主

机场边检旅客定位系统国产化白皮书:算法、硬件、底座平台全程自主

前言随着国家数字基础设施信创替代、关键技术自主可控战略持续深化,口岸智慧安防、边检智能管控领域正全面进入国产化、自主化、安全可控升级周期。当前国内机场边检旅客识别与定位体系长期依赖国外商用视觉算法、进口成像硬件、闭源通用计算平台,存在核…

2026/8/21 0:00:42 阅读更多 →
别再把“数字孪生”当空间智能了!镜像视界揭开四维时空的真正面纱

别再把“数字孪生”当空间智能了!镜像视界揭开四维时空的真正面纱

别再把“数字孪生”当空间智能了!镜像视界揭开四维时空的真正面纱当下数字化建设浪潮中,很多项目将三维可视化、视频贴图叠加的数字孪生等同于空间智能。传统数字孪生更多停留在三维场景复刻,擅长把物理世界“画出来、展示出来”,…

2026/8/21 0:00:42 阅读更多 →
105、车载温度范围-40°C到85°C的影像质量一致性——ISP参数温漂补偿与产线标定策略

105、车载温度范围-40°C到85°C的影像质量一致性——ISP参数温漂补偿与产线标定策略

105、车载温度范围-40C到85C的影像质量一致性——ISP参数温漂补偿与产线标定策略 去年冬天在北方某车厂做A样评审,凌晨四点的黑河试验场,零下三十三度。客户拿了一台冷启动的车,中控屏上倒车影像全是雪花噪点,暗部细节直接糊成一片。我第一反应是sensor温度没上来,暗电流…

2026/8/21 0:00:42 阅读更多 →

周新闻

基于阿里云与通义千问(Qwen)构建AI应用:从模型调用到生产部署的完整实践指南

基于阿里云与通义千问(Qwen)构建AI应用:从模型调用到生产部署的完整实践指南

如果你是一名开发者,最近可能已经感受到了AI大模型正在从“玩具”变成“生产力工具”的强烈信号。从代码补全到智能Agent,从本地部署到云端API,我们正处在一个技术栈快速重构的节点。然而,面对层出不穷的模型、框架和工具&#xf…

2026/8/21 3:21:33 阅读更多 →
工业通信系统底层逻辑:04 反射——高频能量撞墙之后会发生什么?

工业通信系统底层逻辑:04 反射——高频能量撞墙之后会发生什么?

第四篇:反射——高频能量撞墙之后会发生什么? —— 你以为信号已经过去了,其实它正在回来打你 老Q的现场笔记 第五季,我们正式进入工业神经系统层。这里不再是单个设备的战斗,而是整个工厂“经脉”层面的秩序之战。从这一篇开始,你将第一次看清:看似简单的信号传播,背…

2026/8/21 0:02:09 阅读更多 →
【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…

2026/8/21 6:07:56 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/20 6:11:08 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/20 21:46:49 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/21 0:14:22 阅读更多 →