mangolu 发表于 2018-9-17 12:32:32

求助Proteus8.6 SP2仿真STM32F103无法正常运行程序

Proteus是坛里这里“https://www.amobbs.com/thread-5670710-1-1.html?_dsign=501065d0”下载的版本,仿真8051系列正常。但是我使用STM32cubemx生成的工程,就是初始化IO,把PC0和PC1设置成输出高电平驱动两个LED,但是IO并没有输出高电平。并且VDDA和VSSA我已连接到VCC和GND,BOOT0也连接到GND,但是还是有报错。
IO口输出不正常:


报错:


下面是整个工程打包:


工程是直接用STM32cubemx生成的,应该是没有问题才对。是否是这个版本有问题呢?不过我看了运行其中的例程是没有问题的。现在手上没有开发板,无法验证程序是否正常,不知道是哪方面的原因。

mangolu 发表于 2018-9-17 13:15:25

顶上!没人使用这个软件仿真过STM32吗?看了坛里,好像坛里讨论的不多!

JQ_Lin 发表于 2018-9-17 18:33:57

可以仿真,只是非实时的。
三条警告,不影响。
我连续仿真数分钟(机器时间),不见两个口有任何动作。
是程序问题吧?

mangolu 发表于 2018-9-17 18:43:40

JQ_Lin 发表于 2018-9-17 18:33
可以仿真,只是非实时的。
三条警告,不影响。
我连续仿真数分钟(机器时间),不见两个口有任何动作。


你是下载了我的程序和电路运行仿真正常吗?

mangolu 发表于 2018-9-17 18:46:59

JQ_Lin 发表于 2018-9-17 18:33
可以仿真,只是非实时的。
三条警告,不影响。
我连续仿真数分钟(机器时间),不见两个口有任何动作。


我刚下了8.7 SP3的版本,运行我的程序和文件也是一样的问题。我把电路改了一下,原来是输出电流的,现在改为灌电流,结果初始化正常。都不明白怎么回事了,难道proteus设定STM32的电流输出很弱吗?不懂还有没有其他问题,还在查看中。

JQ_Lin 发表于 2018-9-17 19:09:08

mangolu 发表于 2018-9-17 18:43
你是下载了我的程序和电路运行仿真正常吗?

我不下载,从何谈起仿真数分钟呢?

JQ_Lin 发表于 2018-9-17 19:09:45

mangolu 发表于 2018-9-17 18:46
我刚下了8.7 SP3的版本,运行我的程序和文件也是一样的问题。我把电路改了一下,原来是输出电流的,现在 ...

如此说来,你用的口是开漏的。

mangolu 发表于 2018-9-17 19:13:47

JQ_Lin 发表于 2018-9-17 19:09
如此说来,你用的口是开漏的。

不会阿,我是用STM32CubeMX配置的,里面配置成推挽输出的:
/*Configure GPIO pins : PC0 PC1 */
GPIO_InitStruct.Pin = GPIO_PIN_0|GPIO_PIN_1;
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
HAL_GPIO_Init(GPIOC, &GPIO_InitStruct);

另外我现在换成8.7 SP3版本,就没有警告了,就是这个需要灌电流这个搞不清楚。

JQ_Lin 发表于 2018-9-17 19:23:33

开路集电极或开路漏极的,当它导通(低电平)时,可以吸收较大的电流,驱动力很强,负载要接到VCC端,低电平有效。

mangolu 发表于 2018-9-17 19:39:50

JQ_Lin 发表于 2018-9-17 19:23
开路集电极或开路漏极的,当它导通(低电平)时,可以吸收较大的电流,驱动力很强,负载要接到VCC端,低电 ...

看来STM32端口输出电流是很弱的,输出电流才8mA:


不过我见很多开发板都是直接输出接个1K电阻然后驱动LED阿。

了无 发表于 2018-9-17 21:47:29

我几个月前仿真也是运行没反应,后面直接上硬件运行,没有问题

elecfun 发表于 2018-9-18 00:57:12

我也是自己新建会报错,但打开DEMO再修改就不会,你可以试下

mangolu 发表于 2018-9-18 01:03:09

elecfun 发表于 2018-9-18 00:57
我也是自己新建会报错,但打开DEMO再修改就不会,你可以试下

我换成8.7 SP3就没有报错了。另外上面推挽输出驱动不了LED,换成灌电流驱动就行了。
页: [1]
查看完整版本: 求助Proteus8.6 SP2仿真STM32F103无法正常运行程序