当前位置: 首页 > 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…...

创新入门|营销中的视频内容:不可或缺的策略

视频在营销中日益重要。你是否也发现,视频内容最近似乎无处不在?它占据着社交媒体的推文、网站首页,甚至电子邮件中的位置。事实上,并不是你一个人有这样的感受。在过去十年中,视频作为一种营销手段日益成熟和强大。这是因为,人类天生就是视觉动物。我们大脑处理视觉信息的速度…...

《探索Stable Diffusion:AI绘画的创意之路与实战秘籍》

《Stable Diffusion AI 绘画从提示词到模型出图》介绍了 Stable Diffusion AI 绘画工具及其使用技巧。书中内容分为两部分:“基础操作篇”,讲解了 SD 文生图、图生图、提示词、模型、ControlNet 插件等核心技术的应用,帮助读者快速从新手成长…...

某铁路信息中心运营监测项目

某铁路信息中心承担大量实时监测、例行巡检和排障维护等工作,为巩固信息化建设成果,提高整体运维效果,保障铁路信息系统稳定运行,需对现有网络监测系统进行升级改造。 设备类型:服务器、交换机、数据库、中间件、虚拟…...

Threejs加载DOM+CSS到场景中,实现3D场景展示2D平面的效果

1. 前言 本篇文章主要实现了将DOM元素转换为Threejs可以使用的数据结构,使用CSS2DRenderer渲染器渲染这些DOMCSS的平面,使其可以作为一个物体添加到Threejs场景里 如下效果图: 2. 实现步骤 首先创建一个ThreejsVueVite的项目,作为本次的demo项目下载Threejs第三方库 yarn…...

本地知识库开源框架Fastgpt、MaxKB产品体验

本地知识库开源框架Fastgpt、MaxKB产品体验 背景fastgpt简介知识库共享部署 MaxKB总结 背景 上一篇体验了Quivr、QAnything两个开源知识库模型框架,这次介绍两款小众但是体验比较好的产品。 fastgpt 简介 FastGPT 是一个基于 LLM 大语言模型的知识库问答系统&am…...

音视频开发15 FFmpeg FLV封装格式分析

FLV(Flash Video)简介 FLV(Flash Video)是Adobe公司推出的⼀种流媒体格式,由于其封装后的⾳视频⽂件体积⼩、封装简单等特点,⾮常适合于互联⽹上使⽤。⽬前主流的视频⽹站基本都⽀持FLV。采⽤ FLV格式封装的⽂件后缀为.flv。 FLV封装格式的组成 FLV封装…...

Qt 的 d_ptr (d-pointer) 和 q_ptr (q-pointer)解析;Q_D和Q_Q指针

篇一: Qt之q指针(Q_Q)d指针(Q_D)源码剖析---源码面前了无秘密_qtq指针-CSDN博客 通常情况下,与一个类密切相关的数据会被作为数据成员直接定义在该类中。然而,在某些场合下,我们会…...

【机器学习】深度探索:从基础概念到深度学习关键技术的全面解析——梯度下降、激活函数、正则化与批量归一化

🔥 个人主页:空白诗 文章目录 一、机器学习的基本概念与原理二、深度学习与机器学习的关系2.1 概念层次的关系2.2 技术特点差异2.3 机器学习示例:线性回归(使用Python和scikit-learn库)2.4 深度学习示例:简…...

C++模板类与Java泛型类的实战应用及对比分析

C模板类和Java泛型类都是用于实现代码重用和类型安全性的重要工具,但它们在实现方式和应用上有一些明显的区别。下面,我将先分别介绍它们的实战应用,然后进行对比分析。 C模板类的实战应用 C模板类允许你定义一种通用的类,其中类…...

使用Qt对word文档进行读写

目录 开发环境原理使用的QT库搭建开发环境准备word模板测试用例结果Gitee地址 开发环境 vs2022 Qt 5.9.1 msvc2017_x64,在文章最后提供了源码。 原理 Qt对于word文档的操作都是在书签位置进行插入文本、图片或表格的操作。 使用的QT库 除了基本的gui、core、…...

东营做网站建设的公司/百度收录方法

在sql查询中为了提高查询效率,我们常常会采取一些措施对查询语句进行sql优化,下面总结的一些方法,有需要的可以参考参考。 1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。…...

简单展示网站模板/百度左侧排名

#1184 : 连通性二边的双连通分量 时间限制:10000ms单点时限:1000ms内存限制:256MB描述 在基本的网络搭建完成后,学校为了方便管理还需要对所有的服务器进行编组,网络所的老师找到了小Hi和小Ho,希望他俩帮忙。 老师告诉小Hi和小Ho:…...

怎么做简单地网站/按效果付费的推广

1. 各种图形混排示例: http://echarts.baidu.com/demo.html#mix-line-bar 2. 如果想把网页上的echarts图表复制到ppt中,可以使用chrome浏览器打开图表页面,然后右键点击图表,点击“复制图像”菜单,到ppt中,…...

wordpress乐器模版/查关键词热度的网站

安装miniconda第一步:下载 miniconda3wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-latest-Linux-x86_64.sh第二步:配置执行权限#7421 r4,w2,x1 可读可写可运行 chmod 777 Miniconda3-latest-Linux-x86_64.sh #举例&#…...

广州美霖室内设计学校/seo培训教程视频

Collections工具类与泛型的使用 Collections工具类的使用 ●Collections是一个操作Set、List 和Map等集合的工具类 ●Collections中提供了一系列静态的方法对集合元素进行排序、查询和修改等操作,还提供了对集合对象设置不可变、对集合对象实现同步控制等方法 Co…...

网站开发支持环境/seo快速入门教程

一、简介与原理 http协议是明文传输的,因此很容易被截取和解析,泄漏个人数据。https协议是在http和tcp之间多添加了一层,进行身份验证和数据加密。 HTTPS 原理 ① 客户端将它所支持的算法列表和一个用作产生密钥的随机数发送给服务器 ②…...