打印
[其他ST产品]

STM32G431无法仿真

[复制链接]
1550|34
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
大家好,因为没有示波器,所以只能用MDK看一下G431的IO口波形,但是配置完成后提示找不到该引脚。。。

芯片型号是对的,这个是什么原因?

芯片.png (26.07 KB )

芯片.png

配置.png (33.99 KB )

配置.png

配置2.png (30.48 KB )

配置2.png

使用特权

评论回复
评论
黑心萝卜三条杠 2023-3-28 20:03 回复TA
老哥,可以教教我STM32G431RB怎么看keil的逻辑分析仪嘛,我也不会 
沙发
Hufei1994|  楼主 | 2020-7-25 19:33 | 只看该作者
有没有人使用过G4

使用特权

评论回复
板凳
香水城| | 2020-7-25 23:46 | 只看该作者
本帖最后由 香水城 于 2020-7-25 23:53 编辑

这跟G4 有什么关系呢  明明单纯是调试方面的问题

确定你现在的操作没问题? portA.5你定义对了?

STM32开发中基于MDK IDE的调试输出技巧

使用特权

评论回复
地板
Hufei1994|  楼主 | 2020-7-25 23:53 | 只看该作者
香水城 发表于 2020-7-25 23:46
这跟G4 有什么关系呢  明明单纯是调试方面的问题

确定你现在的操作没问题? portA.5你定义对了? ...

名字没有拼写错误啊。。。
我是找不出错误在哪,所以怀疑新出来的芯片是不是不支持

使用特权

评论回复
5
香水城| | 2020-7-25 23:56 | 只看该作者
Hufei1994 发表于 2020-7-25 23:53
名字没有拼写错误啊。。。
我是找不出错误在哪,所以怀疑新出来的芯片是不是不支持
...

该芯片不新了,肯定支持的。

不过,这个MDK的调试功能你可以看看别人怎么操作的。

使用特权

评论回复
6
Hufei1994|  楼主 | 2020-7-26 00:02 | 只看该作者
香水城 发表于 2020-7-25 23:56
该芯片不新了,肯定支持的。

不过,这个MDK的调试功能你可以看看别人怎么操作的。 ...

谢谢版主解答,我前面的是用的软件仿真(103这种方法可行),明天试试你给的硬件仿真方法,另外问一下这种硬件仿真添加信号怎么不是写PORT口了?

使用特权

评论回复
7
Hufei1994|  楼主 | 2020-7-26 00:33 | 只看该作者
香水城 发表于 2020-7-25 23:56
该芯片不新了,肯定支持的。

不过,这个MDK的调试功能你可以看看别人怎么操作的。 ...

非常感谢版主的指导,
终于弄出来了波形,再次感谢,帮了我很大的忙

设置.png (47.61 KB )

设置.png

结果.png (149.58 KB )

结果.png

使用特权

评论回复
8
Hufei1994|  楼主 | 2020-7-26 13:55 | 只看该作者
在版主指导下改为硬件仿真,
分析仪可以跑起来了,可以直接观测变量(FLAG是一个变量)
但是不能直接添加引脚来进行观测。
如果我想要看定时器的输出波形有没有什么好的办法?

结果2.png (356.24 KB )

结果2.png

使用特权

评论回复
9
香水城| | 2020-7-26 19:04 | 只看该作者
上面给你的链接的例程里就是 介绍如何MDK analyzer做PWM输出,你稍微看仔细点。

看看人家怎么实现的。

使用特权

评论回复
10
Hufei1994|  楼主 | 2020-7-27 18:54 | 只看该作者
香水城 发表于 2020-7-26 19:04
上面给你的链接的例程里就是 介绍如何MDK analyzer做PWM输出,你稍微看仔细点。

看看人家怎么实现的。 ...

谢谢版主,按你的方法直接读IDR寄存器,可以直接看端口电平了

使用特权

评论回复
11
cooldog123pp| | 2020-7-27 21:50 | 只看该作者
G4确实很少有人用,IDE调试只能看个大概,首先确认一下自己是否配置对吧。

使用特权

评论回复
12
Hufei1994|  楼主 | 2020-7-27 23:14 | 只看该作者
香水城 发表于 2020-7-26 19:04
上面给你的链接的例程里就是 介绍如何MDK analyzer做PWM输出,你稍微看仔细点。

看看人家怎么实现的。 ...

版主,您好!还有个关于这个IDR寄存器的问题,
我现在是通过定义一个变量来保存IDR特定位的数据:IDR_A4 = GPIOA->IDR & 0x0010
但是这样有个问题,每次读取的时候都需要运算一次,如果想要实时读取一个高频信号就要一直进行运算,
我想下面的这种方式可不可以实时表示IDR特定位的值且不消耗算力?

int *IDR_A4_ADDR;
IDR_A4_ADDR = &(GPIOA->IDR-4);//但是(GPIOA->IDR-4)这一位寄存器的地址怎么获得?
IDR_A4_DATA = &IDR_A4_ADDR;

您给我链接中读取是一个PWM信号,并且看着没有失真,不知道是通哪种方法读取的IDR值?

使用特权

评论回复
13
Hufei1994|  楼主 | 2020-7-28 20:33 | 只看该作者
发现另一个问题,可能是采样速率不够快,当采一个高频信号时(10k),会出现大量丢波的现象,低频则没有这个问题
附件是一个100Hz中断中的SVPWM

SVPWM.png (289.54 KB )

SVPWM.png

使用特权

评论回复
14
香水城| | 2020-7-29 14:11 | 只看该作者
Hufei1994 发表于 2020-7-28 20:33
发现另一个问题,可能是采样速率不够快,当采一个高频信号时(10k),会出现大量丢波的现象,低频则没有这个 ...

呵呵 看来你是要把它做到极致哦。

对于G4来说,10K应该还好。你出问题可能跟你处理方式有关。

当然,频率太高了可能来不及,这跟你的处理方式和处理器的主频都有关。

下面有个基于MDK 自带analyzer的应用示例,可以感受下。

一个定时器实现3路时差和占空比可调的波形

使用特权

评论回复
15
香水城| | 2020-7-29 14:19 | 只看该作者
本帖最后由 香水城 于 2020-7-29 17:56 编辑
Hufei1994 发表于 2020-7-27 23:14
版主,您好!还有个关于这个IDR寄存器的问题,
我现在是通过定义一个变量来保存IDR特定位的数据:IDR_A4  ...

你看到的示例中的波形的确是没有失真的,失真了看也没啥意义了。

定时器的寄存器地址你查看STM32参考手册即可。

这个实时显示是要耗费资源的,也会受处理器本身的资源影响。

使用特权

评论回复
16
kangzj| | 2023-7-6 20:52 | 只看该作者
跟G4 有什么关系

使用特权

评论回复
17
lium| | 2023-7-6 20:53 | 只看该作者
是调试方面的问题

使用特权

评论回复
18
guoyt| | 2023-7-6 20:55 | 只看该作者
确定你现在的操作没问题?

使用特权

评论回复
19
hanwe| | 2023-7-6 20:56 | 只看该作者
portA.5你定义对了?

使用特权

评论回复
20
yufe| | 2023-7-6 20:59 | 只看该作者
该芯片不新了,肯定支持的。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

28

主题

160

帖子

0

粉丝