当前位置: 首页 > news >正文

江协科技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…...

基于算法竞赛的c++编程(28)结构体的进阶应用

结构体的嵌套与复杂数据组织 在C中,结构体可以嵌套使用,形成更复杂的数据结构。例如,可以通过嵌套结构体描述多层级数据关系: struct Address {string city;string street;int zipCode; };struct Employee {string name;int id;…...

K8S认证|CKS题库+答案| 11. AppArmor

目录 11. AppArmor 免费获取并激活 CKA_v1.31_模拟系统 题目 开始操作: 1)、切换集群 2)、切换节点 3)、切换到 apparmor 的目录 4)、执行 apparmor 策略模块 5)、修改 pod 文件 6)、…...

微软PowerBI考试 PL300-选择 Power BI 模型框架【附练习数据】

微软PowerBI考试 PL300-选择 Power BI 模型框架 20 多年来,Microsoft 持续对企业商业智能 (BI) 进行大量投资。 Azure Analysis Services (AAS) 和 SQL Server Analysis Services (SSAS) 基于无数企业使用的成熟的 BI 数据建模技术。 同样的技术也是 Power BI 数据…...

转转集团旗下首家二手多品类循环仓店“超级转转”开业

6月9日,国内领先的循环经济企业转转集团旗下首家二手多品类循环仓店“超级转转”正式开业。 转转集团创始人兼CEO黄炜、转转循环时尚发起人朱珠、转转集团COO兼红布林CEO胡伟琨、王府井集团副总裁祝捷等出席了开业剪彩仪式。 据「TMT星球」了解,“超级…...

Visual Studio Code 扩展

Visual Studio Code 扩展 change-case 大小写转换EmmyLua for VSCode 调试插件Bookmarks 书签 change-case 大小写转换 https://marketplace.visualstudio.com/items?itemNamewmaurer.change-case 选中单词后,命令 changeCase.commands 可预览转换效果 EmmyLua…...

归并排序:分治思想的高效排序

目录 基本原理 流程图解 实现方法 递归实现 非递归实现 演示过程 时间复杂度 基本原理 归并排序(Merge Sort)是一种基于分治思想的排序算法,由约翰冯诺伊曼在1945年提出。其核心思想包括: 分割(Divide):将待排序数组递归地分成两个子…...

Electron简介(附电子书学习资料)

一、什么是Electron? Electron 是一个由 GitHub 开发的 开源框架,允许开发者使用 Web技术(HTML、CSS、JavaScript) 构建跨平台的桌面应用程序(Windows、macOS、Linux)。它将 Chromium浏览器内核 和 Node.j…...

break 语句和 continue 语句

break语句和continue语句都具有跳转作用&#xff0c;可以让代码不按既有的顺序执行 break break语句用于跳出代码块或循环 1 2 3 4 5 6 for (var i 0; i < 5; i) { if (i 3){ break; } console.log(i); } continue continue语句用于立即终…...

【中间件】Web服务、消息队列、缓存与微服务治理:Nginx、Kafka、Redis、Nacos 详解

Nginx 是什么&#xff1a;高性能的HTTP和反向代理Web服务器。怎么用&#xff1a;通过配置文件定义代理规则、负载均衡、静态资源服务等。为什么用&#xff1a;提升Web服务性能、高并发处理、负载均衡和反向代理。优缺点&#xff1a;轻量高效&#xff0c;但动态处理能力较弱&am…...

设计模式-观察着模式

观察者模式 观察者模式 (Observer Pattern) 是一种行为型设计模式&#xff0c;它定义了对象之间一种一对多的依赖关系&#xff0c;当一个对象&#xff08;称为主题或可观察者&#xff09;的状态发生改变时&#xff0c;所有依赖于它的对象&#xff08;称为观察者&#xff09;都…...