IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> 使用 keil 仿真调试和 SaleaeLogic16 逻辑仪观察信号的波形 -> 正文阅读

[嵌入式]使用 keil 仿真调试和 SaleaeLogic16 逻辑仪观察信号的波形

目录

一、使用 Keil 的仿真示波器逻辑分析引脚变化

1、配置

?2、观测调试

??

3、结果分析

二、使用真实逻辑仪 SaleaeLogic16 观测波形

1、SaleaeLogic16 软件下载和安装

2、波形分析

三、总结

四、参考资料


一、使用 Keil 的仿真示波器逻辑分析引脚变化

1、配置

注:我们用到是上一篇中的工程

STM32F103C8T6 基于 HAL 库移植 uC/OS-III 系统_qq_47538417的博客-CSDN博客

在 MDK-ARM 文件夹下创建一个 TXT 文件,将文件后缀改为.ini,将下面的内容添加进去

map 0x40000000, 0x40007FFF read write // APB1
map 0x40010000, 0x400157FF read write // APB2
map 0x40020000, 0x4007FFFF read write // AHB1
map 0x50000000, 0x50060BFF read write // AHB2
map 0x60000000, 0x60000FFF read write // AHB3
map 0xE0000000, 0xE00FFFFF read write // CORTEX-M4 internal peripherals

将txt文件另存为ini的方法如下

?

?

将文件添加到工程项目

?2、观测调试

先编译然后进入仿真

?进入仿真后选择逻辑分析仪

?选择要观察的波形

注:将 3 个观测信号的的 Display Type 改为 Bit 显示,并可以为其配置颜色,最后点击 Close

?点击左上角的 Run ,全速运行

?仿真结果如下

?

?

3、结果分析

观察上面的示波器逻辑分析仪结果可以看到:
PC13 引脚输出电平周期为 1s,PA3 引脚输出电平周期为 3s,串口输出周期为 2s。

我们进入工程可以看到

PC13 引脚

?PA3 引脚

?USART1 串口

?可以看到,代码中的周期设置与逻辑分析仪的波形电平周期一致

二、使用真实逻辑仪 SaleaeLogic16 观测波形

1、SaleaeLogic16 软件下载和安装

链接:https://pan.baidu.com/s/1YmlqyjR2X56B0SpSYw7nqA?
提取码:8zzc

找一个版本进行安装

?资料里面有使用方法。

2、波形分析

PC13 引脚的 LED 信号波形

?图中的 PC13 引脚的 LED 控制周期信号的实际周期为:0.999…s,与设置的 1s 周期有一点误差,波形电压幅度一致。

PA3 引脚的 LED 信号波形

?USART1 串口输出时的具体数据如下图

?

?串口设置如下

?串口通信协议数据传送时,每一个字符为 10 位(1 个起始位,7 个数据位,1 个校验位,1 个结束位):
起始位—先发出一个逻辑“ 0 ”信号,表示传输字符的开始;
数据位—可以是 5~8 位逻辑“ 0 ”或“ 1 ”;
校验位—数据位加上这一位后,使得“ 1 ”的位数应为偶数(偶校验)或奇数(奇校验);
停止位—它是一个字符数据的结束标志。可以是 1 位、1.5 位、2 位的高电平;
空闲位—处于逻辑“ 1 ”状态,表示当前线路上没有资料传送。
从逻辑分析仪的波形可以看到,每一个字符为 10 位,有一个逻辑“ 0 ”的起始位,7 位数据位,1 为奇偶校验位,1 位高电平停止位,1 为处于逻辑“ 1 ”的空闲位。其中的数据位:1101000 即十六进制数 0x68。
串口波形符合串口通信的数据传输格式

?

串口通信协议数据传送速率用波特率来表示,即每秒钟传送的二进制位数。
数据的波特率为 1s 传送的码元符号的个数。
从逻辑分析仪的波形可以看到,实际传输一个比特时间为 8.99?us,而之前设置的波特率为 115200,即理论上传输一个比特时间为 1/115200=8.68 us,可见串口通信的实际传输速率与理论相近,只存在一点点误差,可能是设备问题造成的。

?

三、总结

通过?keil 仿真示波器和逻辑分析仪来观测引脚波形之后,可见观测波形与实际代码中设置的要求基本一致。

四、参考资料

使用 keil 仿真调试和 SaleaeLogic16 逻辑仪观察信号的波形_L-GRAZY的博客-CSDN博客

SaleaeLogic 16 逻辑分析仪的安装及使用【对 I2C、SPI、串口的信号进行测量】_L-GRAZY的博客-CSDN博客逻辑分析仪的简单使用介绍(附带i2c、串口、spi数据分析)_Mr_Wyf的博客-CSDN博客

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2021-12-05 12:12:06  更:2021-12-05 12:12:43 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年1日历 -2025/1/9 2:00:20-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码