江协科技STM32学习-1 购买24Mhz采样逻辑分析仪
前言:
本文是根据哔哩哔哩网站上“江协科技STM32”视频的学习笔记,在这里会记录下江协科技STM32开发板的配套视频教程所作的实验和学习笔记内容。本文大量引用了江协科技STM32教学视频和链接中的内容。
引用:
STM32入门教程-2023版 细致讲解 中文字幕_哔哩哔哩_bilibili
逻辑分析仪的简单使用介绍(附带i2c、串口、spi数据分析)_逻辑分析仪使用方法-CSDN博客
SaleaeLogic 16 逻辑分析仪的安装及使用【对 I2C、SPI、串口的信号进行测量】_saleae logic-CSDN博客
六叶树 Saleae Logic 8通道 逻辑分析仪软件使用 详细教程_logic逻辑分析仪软件-CSDN博客
使用 PluseView 作为逻辑分析仪采集器的上位机
saleae逻辑分析仪(PulseView)安装使用_pulseview下载-CSDN博客
逻辑分析仪软件PulseView 下载链接及使用,zadig更改USB端口名称_pulseview下载-CSDN博客
使用Pulseview软件辅助verilog数字设计仿真协议解码_pulseview教程-CSDN博客
正文:
0. 概述
今天 (2024/05/31)在淘宝上购买了基础入门款的 24MHz 8通道采样的逻辑分析仪,在学习下江协科技的STM32开发教程的时候会用逻辑分析仪来抓 I2C,SPI,UART 口通信的通信协议报文。在淘宝上购买的这种 19块钱的8通道逻辑分析仪已经能够满足入门级的开发需求,需要感谢国产电子技术的发展才有这么廉价好用的入门级逻辑分析仪可以使用。
1. 安装驱动程序
淘宝购买产品发货清单里有如下配件,一个24MHz逻辑分析仪主体,一个USB连接线,8根杜邦线。
在购买逻辑分析仪的淘宝店铺里,在商品详情页面会提供对应的使用说明文档和驱动程序。例如,我购买的这个24MHz逻辑分析仪的淘宝商家在商品页面详情里提供了百度网盘下载链接,将这些资料下载下来。(实际上,淘宝上卖的这种十几块钱的24MHz逻辑分析仪使用的芯片方案都是同一家,驱动和使用说明资料都是一样的。)
从商家提供的下载链接里将资料压缩包下载下来,解压之后在解压目录里就有逻辑分析仪的USB驱动程序,点击安装驱动程序。
我购买24Mhz逻辑分析仪的淘宝商家提供下载链接里有3个 Saleae Logic USB 驱动安装程序包。
- Logic Setup 1.1.16 (32-bit).exe, 对应上位机的软件版本是 Saleae Logic -1.1.16,是32位系统的安装包。
- Logic Setup 1.1.16 (64-bit).exe, 对应上位机的软件版本是 Saleae Logic -1.1.16,是64位系统的安装包。
- Logic Setup 1.2.17.exe,对应上位机的软件版本是 Saleae Logic -1.2.17,是64位系统的安装包。
直接安装最新的 这个 “Logic Setup 1.2.17.exe” 逻辑分析仪USB驱动程序就可以,因为驱动程序一般是向后兼容的,双击运行安装逻辑分析仪的驱动程序。
将逻辑分析仪插上USB连接线,并将USB连接线接在电脑USB接口,在上一步驱动程序安装成功之后,此时电脑就能识别到逻辑分析仪。键盘按下“Win + R”键,在运行窗口里输入 "devmgmt.msc" ,点击“确定”,就可以打开Windows设备管理器。
可以看到,在Windows操作系统的设备管理器里USB设备下面已经成功识别到的逻辑分析设备。
2. 安装上位机软件
我这里使用 Saleae Logic 上位机软件来配合分析逻辑分析仪采样到的数据。到Saleae公司的网站上去下载 Saleae Logic 上位机软件。
网页里提供了下载链接,我直接下载提供的最新的Loigc上位机软件版本,经过测试是可以使用的。
https://downloads.saleae.com/logic2/Logic-2.4.14-windows-x64.exe
Saleae Loigc 上位机软件安装包下载下来之后,点击安装Loigc上位机,一直下一步,直到安装成功。安装成功之后再Windows系统桌面上的图标,双击就可以打开 Saleae Logic 软件。
Saleae Loigc 上位机软件界面如下,我安装的是在此时(2024/05/31)最新的Saleae Loigc-2.4.14 版本,其实,各个版本之间的差异不大功能按钮都是一样的只是图形界面布局有所改变。
就以 "Saleae Loigc-2.4.14" 为例,在界面的左下角会自动连接插到电脑USB接口上的逻辑分析仪设备(前提是上一步的驱动程序已经安装成功)。界面右侧面板是我们需要使用配置项,简单介绍一下:
- 采样频率:根据通信原理奈奎斯特采样定律,采样频率至少应该是被采样信号频率的两倍。
看其博主文章介绍,如果要观察通信协议波形采样频率最好是被测试信号频率的5~10倍,例如,需要观察I2C 100Kbps的通信协议波形,采样频率=100KHz*10=1M,采样频率需要再1M以上,我这里直接选择采样频率为2M就没有问题。当然直接保持默认的24M采样频率肯定是没有问题。- 采样时间:就是要采集多长时间的数据,例如,需要采集5秒钟的通信协议波形,或者采样10秒钟的通信协议波形。
- 采样触发条件:开始采样的触发条件,可以是上升沿触发,下降沿触发,也可以上双边沿触发,当触发条件满足时逻辑分析仪就开始采样被测信号数据并上传到上位机进行解码分析。
例如,用该逻辑分析仪观察UART通信数据,因为UART空闲时是高电平,起始位是一个第低平,所以采集UART通信数据就可以设置采样触发条件为“下降沿”。
3. 简单上手使用
简单上手使用了一下24M 8通道逻辑分析仪来采样 UART 通信协议的串口输出波形,UART 波特率是 115200kbps=115.2KHz,我们设置逻辑分析仪的采样频率为被测试信号的10倍,115.2KHz*10 = 1.15M,所以设置Sealea Logic 通道的采样率为 2M 就可以条件。
- 将逻辑分析仪的 “GND” 地线接到开发板的UART串口的“GND”。
- 将逻辑分析仪的 “CH1”引脚接到开发板的UART串口的“Tx”。
- 设置Sealea Logic 上位机的 CH0 (Logic上位机上的CH0~7,对应逻辑分析仪采集器便签上的CH1~CH8)的采样频率为2M,采样时间设置为5秒(采样5秒的串口输出信号)。
- 设置采样触发条件为“下降沿”触发,因为UART空闲时是高电平,起始位是一个第低平,所以采集UART通信数据就可以设置采样触发条件为“下降沿”。
点击开始,进行采样,逻辑分析采集器根据设定时间采样了5秒钟的Tx输出信号采样数据之后就停止采样,此时我们可以在Sealea Logic 上位机上看到采样出来的波形。
Sealea Logic 支持多种通信协议数据格式的解析,例如,I2C,SPI,UART,I2S/PCM,等等。点击Sealea Logic界面上上边栏菜单的 "IF" 图标,在下拉框里选择通信协议解析格式,我这里抓的是UART串口所以选择 "Asynchronse Serial (uart)”,然后选择UART的波特率,停止位,起始位,校验位的配置,点击确定,就可以对抓到的UART通信数据进行解析为16进制数据了。
根据开发板的UART配置选择波特率
最终结果,可以看到Sealea Logic 上位机已经正确的解析除了逻辑分析仪采集器采集到的 UART 口 Tx 输出数据,并且解析出来的输出内容符合预期。
4. 总结
本文记录了24M 8通道逻辑分析仪的简单使用,包括安装逻辑分析仪采集器的驱动程序,安装逻辑分析仪的Sealea Logic 上位机软件,并且简单上手使用逻辑分析采集器采集并且查看了一下UART串口Tx输出的实际波形数据,并用Logic支持的UART协议分析功能解析除了抓到数据的16进制格式。
5. 结束。
本文至此结束。
相关文章:

江协科技STM32学习-1 购买24Mhz采样逻辑分析仪
前言: 本文是根据哔哩哔哩网站上“江协科技STM32”视频的学习笔记,在这里会记录下江协科技STM32开发板的配套视频教程所作的实验和学习笔记内容。本文大量引用了江协科技STM32教学视频和链接中的内容。 引用: STM32入门教程-2023版 细致讲…...

支付系统-业务账单
target:离开柬埔寨倒计时-210day 前言 最近不知道该写什么了,很多东西要写起来非常耗时间,写作是真的不容易呀 我们的支付系统账单有两大类,一个是业务账单还有一个就是资金记录,都是引发资金流后的资金变动表现&…...
AI引领天文新篇章:中科院发现107例中性碳吸收线,揭示宇宙深邃奥秘
在浩渺无垠的宇宙中,探索未知的天文现象一直是科学家们不懈的追求。近日,中科院上海天文台的研究团队在《天文物理杂志》(MNRAS)上发布了重要研究成果:利用人工智能技术,成功探测到了107例中性碳吸收线&…...
python 删除pdf 空白页
环境 python 3.10 PyPDF2 3.0.1 安装 pip install PyPDF2流程 将空白页和内容页读取出来,看看内部结构有什么不同以此为依据,遍历整个PDF 文件,标记处有内容的页面,写入到另外一个PDF文件。 python 代码 # 每一个页都是一个…...

flutter as连接网易模拟器
网易模拟器下载 Mac 使用MuMu模拟器调试 Flutter开发 Android Studio 安装第三方模拟器—网易MuMu Mac 安卓Studio使用外部模拟器 Mac电脑:Android Studio 连接 MUMU 网易模拟器 Mac 上 Android Studio 链接网易 MuMu 模拟器调试 在 .zshrc 中设置 adb 二进制文…...
fpga控制dsp6657上电启动配置
1 Verilog代码 dspboot_config.v timescale 1ns / 1ps //dsp上电启动配置 module dspboot_config (///时钟和复位input SYS_CLK_50MHz,input SYS_RST_n,//DSP启动配置output DSP_POR,output DSP_RESETFULL,output DSP_RESET,inout [12:…...
Tomcat启动闪退问题解决方法
Tomcat是一个广泛使用的开源Web服务器和Servlet容器。它的稳定性和灵活性使其在Java Web开发领域受到广泛关注。然而,在实际使用过程中,我们有时会遇到Tomcat启动后立即关闭的问题,这种现象通常被称为"闪退"。下面我将针对这个问题…...

【多模态】34、LLaVA-v1.5 | 微软开源,用极简框架来实现高效的多模态 LMM 模型
文章目录 一、背景二、方法2.1 提升点2.2 训练样本 三、效果3.1 整体效果对比3.2 模型对于 zero-shot 形式的指令的结果生成能力3.3 模型对于 zero-shot 多语言的能力3.4 限制 四、训练4.1 数据4.2 超参 五、评测六、代码 论文:Improved Baselines with Visual Inst…...

文件编码概念
文件的读取 open()函数: 打开一个已存在的文件,或者创建一个新文件 open(name,mode,encoding) name:是要打开的目标文件名的字符串(可以包含文件所在的具体路径) mode:设置打开文件的模式(访问模式)&am…...
uni-app(优医咨询)项目实战 - 第7天
学习目标: 能够基于 WebSocket 完成问诊全流程 能够使用 uniCloud 云存储上传文件 能够完成查看电子处方的功能 能够完成医生评价的功能 一、问诊室 以对话聊天的方式向医生介绍病情并获取诊断方案,聊天的内容支持文字和图片两种形式。 首先新建一…...

推荐系统学习 二
双塔模型的结构 用户的特征,我们知道用户ID还能从用户填写的资料和用户行为中获取很多特征,包括离散特征和连续特征。所有这些特征不能直接输入神经网络,而是要先做一些处理,比如用embedding层把用户ID映射到一个向量 跟之前我们…...

Vue——组件数据传递与props校验
文章目录 前言组件数据传递的几种类型简单字符串类型数据专递其他类型数据(数字、数组、对象)传递注意事项 数据传递值校验限定数据类型 type给定默认值 default指定必选项 required 前言 组件与组件之间并不是完全独立的,他们之间可以进行一些数据的传递操作。传递…...
Java 基础面试300题 (261-290)
Java 基础面试300题 (261-290) 261.CompletableFuture.runAsync和CompletableFuture.supplyAsync方法有什么区别? 这两个方法都可用于异步运行代码。但两者之间有一些区别如下 : runAsync不返回结果,返回的是一个Com…...

音频信号分析与实践
音频信号分析与实践课程,方便理解音频信号原理和过程 1.音频信号采集与播放 两种采样模式和标准的采样流程 人说话的声音一般在2kHz一下: 采样频率的影响:采样率要大于等于信号特征频率的2倍;一般保证信号完整,需要使用10倍以上的…...

程序媛:拽姐
更多精彩内容在公众号。 最近都在玩梗图,我也来玩下拽姐的梗图。来说说拽姐做为程序媛的痛。 程序媛的痛不在于996,而在于无休止的攻关。拽姐刚入职听领导说攻关不多,一年也就一次,拽姐心中暗喜,觉得来对了地方。结果…...
前端面试题日常练-day54 【面试题】
题目 希望这些选择题能够帮助您进行前端面试的准备,答案在文末 1. 在PHP中,以下哪个函数用于将一个字符串转换为日期时间对象? a) date() b) strtotime() c) datetime() d) time() 2. PHP中的超全局变量$_COOKIE用于存储什么类型的数据&a…...
054、Python 函数的概念以及定义
编程大师Martin Fowler曾说过:“代码有很多种坏味道,重复是最坏的一种。” 那么遇到重复的代码,如何做?答案就是:函数。 函数就是把重复的代码封装在一起,然后通过调用该函数从而实现在不同地方运行同样的…...

今时今日蜘蛛池还有用吗?
最近不知道哪里又开始刮起“蜘蛛池”这个风气了,售卖、购买蜘蛛池的行为又开始在新手站长圈里开始蔓延和流行了起来,乍一看到“蜘蛛池”这个词给明月的感受就是陌生,要经过回忆才能想起来一些残存的记忆,所谓的蜘蛛池说白了就是利…...

【一步一步了解Java系列】:重磅多态
看到这句话的时候证明:此刻你我都在努力 加油陌生人 个人主页:Gu Gu Study专栏:一步一步了解Java 喜欢的一句话: 常常会回顾努力的自己,所以要为自己的努力留下足迹 喜欢的话可以点个赞谢谢了。 作者:小闭…...

运维工具 - SFTP 和 FTP 的区别?
SFTP 和 FTP 的区别有三点 连接方式 SFTP 是在客户端和服务器之间通过 SSH 协议建立的安全连接来传输文件,而 FTP 则是 TCP 端口 21 上的控制连接建立连接。 安全性 SFTP 使用加密传输认证信息来传输数据,因此 SFTP 相对于 FTP 更安全的。 效率 SF…...

AI-调查研究-01-正念冥想有用吗?对健康的影响及科学指南
点一下关注吧!!!非常感谢!!持续更新!!! 🚀 AI篇持续更新中!(长期更新) 目前2025年06月05日更新到: AI炼丹日志-28 - Aud…...

label-studio的使用教程(导入本地路径)
文章目录 1. 准备环境2. 脚本启动2.1 Windows2.2 Linux 3. 安装label-studio机器学习后端3.1 pip安装(推荐)3.2 GitHub仓库安装 4. 后端配置4.1 yolo环境4.2 引入后端模型4.3 修改脚本4.4 启动后端 5. 标注工程5.1 创建工程5.2 配置图片路径5.3 配置工程类型标签5.4 配置模型5.…...
React hook之useRef
React useRef 详解 useRef 是 React 提供的一个 Hook,用于在函数组件中创建可变的引用对象。它在 React 开发中有多种重要用途,下面我将全面详细地介绍它的特性和用法。 基本概念 1. 创建 ref const refContainer useRef(initialValue);initialValu…...
深入浅出:JavaScript 中的 `window.crypto.getRandomValues()` 方法
深入浅出:JavaScript 中的 window.crypto.getRandomValues() 方法 在现代 Web 开发中,随机数的生成看似简单,却隐藏着许多玄机。无论是生成密码、加密密钥,还是创建安全令牌,随机数的质量直接关系到系统的安全性。Jav…...

家政维修平台实战20:权限设计
目录 1 获取工人信息2 搭建工人入口3 权限判断总结 目前我们已经搭建好了基础的用户体系,主要是分成几个表,用户表我们是记录用户的基础信息,包括手机、昵称、头像。而工人和员工各有各的表。那么就有一个问题,不同的角色…...

【Zephyr 系列 10】实战项目:打造一个蓝牙传感器终端 + 网关系统(完整架构与全栈实现)
🧠关键词:Zephyr、BLE、终端、网关、广播、连接、传感器、数据采集、低功耗、系统集成 📌目标读者:希望基于 Zephyr 构建 BLE 系统架构、实现终端与网关协作、具备产品交付能力的开发者 📊篇幅字数:约 5200 字 ✨ 项目总览 在物联网实际项目中,**“终端 + 网关”**是…...

CMake 从 GitHub 下载第三方库并使用
有时我们希望直接使用 GitHub 上的开源库,而不想手动下载、编译和安装。 可以利用 CMake 提供的 FetchContent 模块来实现自动下载、构建和链接第三方库。 FetchContent 命令官方文档✅ 示例代码 我们将以 fmt 这个流行的格式化库为例,演示如何: 使用 FetchContent 从 GitH…...

使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台
🎯 使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台 📌 项目背景 随着大语言模型(LLM)的广泛应用,开发者常面临多个挑战: 各大模型(OpenAI、Claude、Gemini、Ollama)接口风格不统一;缺乏一个统一平台进行模型调用与测试;本地模型 Ollama 的集成与前…...
A2A JS SDK 完整教程:快速入门指南
目录 什么是 A2A JS SDK?A2A JS 安装与设置A2A JS 核心概念创建你的第一个 A2A JS 代理A2A JS 服务端开发A2A JS 客户端使用A2A JS 高级特性A2A JS 最佳实践A2A JS 故障排除 什么是 A2A JS SDK? A2A JS SDK 是一个专为 JavaScript/TypeScript 开发者设计的强大库ÿ…...

基于IDIG-GAN的小样本电机轴承故障诊断
目录 🔍 核心问题 一、IDIG-GAN模型原理 1. 整体架构 2. 核心创新点 (1) 梯度归一化(Gradient Normalization) (2) 判别器梯度间隙正则化(Discriminator Gradient Gap Regularization) (3) 自注意力机制(Self-Attention) 3. 完整损失函数 二…...