yszh0836 发表于 2016-9-13 18:37:44

使用keil软件仿真功能不能对stm32的SPI进行仿真?

最近有个项目,使用SPI接口对某芯片进行通信,已经没有问题,可以进行正常读写。最近闲来无聊想使用keil软件仿真功能即simulator观察SPI时序(使用示波器直接观察管脚波形就另当别论),SPI对应的管脚是PB3和PB5,发现采用我完整无误的代码仿真时,从LogicAnalyzer窗口观察PB3和PB5两个gpio的波形均为低电平,从未发生变化,可是实际上我的代码是可以使用的,为什么仿真时keil界面的管脚无波形?是方法不对还是keil不支持?大家当个课题讨论下。

zhangxu56726 发表于 2016-9-13 19:03:30

就没用过这功能

shuolang 发表于 2016-9-17 08:20:38

建议直接使用硬件单步跟踪调试功能,软件仿真和真实硬件还是有差距的!

haohao663 发表于 2016-9-17 09:33:20

你这应该是SPI3接口吧,PB3是JTAG功能引脚,不知有影响没,你可以试试SPI1接口仿真看看
另外,一般看SPI、I2C等等通信的是用逻辑分析仪,不用示波器的

无薪税绵 发表于 2016-9-17 14:49:25

还真没有尝试过。

cloudcn 发表于 2016-9-17 17:51:39

估计没戏,F1系列还算有个比较直观的设备对话框,并且也不是全系列全设备支持,其它F2系列以上只能看寄存器了,软仿真看执行流程都很费劲

bao—hu 发表于 2016-9-17 20:07:55

没有SPI从机,好像软件仿真也没有什么价值。

huaiqiao 发表于 2016-9-17 21:15:15

有仿真的时间,还不如买个逻辑分析仪呢。

ddanna 发表于 2016-9-18 10:36:04

keil软件仿真功能,不支持stm32芯片,所以我因为不能stm32SPI进行仿真。

asdxb147258 发表于 2016-9-18 23:42:53

根据我的理解以及使用经验。要使用Keil的逻辑分析仪功能。首先应该需要Keil的一些支持。你以前应该有使用虚拟逻辑分析功能,应该知道GPIO的输入输出的波形逻辑怎么设置的。那SPI硬件为什么没有相应的逻辑波形,仿真器做逻辑分析应该是读取相应的寄存器值或其他复杂的方式。假设是靠读取寄存器的值来做相应的逻辑波形绘图,那问题来了,你在对SPI进行读写操作时,读写的是SPI的数据寄存器,而你的这个操作根本就没有改变GPIO寄存器的数据,而你的设置是对GPIO的信号进行逻辑分析,所以在逻辑分析仪界面理论上应该看不到SPI的时序波形。
页: [1] 2
查看完整版本: 使用keil软件仿真功能不能对stm32的SPI进行仿真?