一、引言
        Proteus作为嵌入式开发者的仿真利器,在STM32F103学习与验证中广泛应用,但其与实际硬件差异大等问题常导致LED灯不亮”“串口无输出,最后仿真失败。为此基于之前所学习的仿真实验做一个总结,记录一下坎坷的仿真之路,。  

二、常见问题分类与解析
    1. 电源配置
        现象:仿真提示错误 No power supply specified for net VDDA in Power Rail Configuration.
        原因 :Proteus未正确配置STM32的电源网络(VSSA为地,VDDA为电)。    
        解决步骤:  
        1. 打开 `Design → Configure Power Rails`,添加VDDA至VCC/VDD网络。    

---

    2. 时钟配置错误
        现象:仿真时芯片无反应、外设初始化失败。  
        原因:  
        Proteus内部时钟频率可能与代码预设值不一致(默认8MHz vs 实际72MHz)。  
        解决步骤: 
        在main下添加如下代码即可

RCC_SYSCLKConfig(RCC_SYSCLKSource_HSI);

 

    3. 芯片配置
        现象:启动仿真后,没有运行或现象。  。  
        优化方案:  

若芯片为STM32F103C8T6,则直径设置外部晶振为8Mhz即可。

---

    4. C8芯片ADC无法采集
        现象:程序正常运行,但是ADC_value为0。  
        解决步骤:  
        1.建议将芯片换为STM32F103C6。   

---

    5. 使用虚拟串口Virtual Terminal时,程序运行但是未显示
        现象:使用串口打印数据,其他正常运行,但是Virtual Terminal并未显示。  
        解决方法:  
        1. UART通信程序错误。  
        2. 检查原理图中USART引脚与Virtual Terminal的连接(需要显示数据,就将端口接入Virtual Terminal的RX上)。(注意Virtual Terminal的配置,波特率需要和程序设定的一致)(位置如下)

---

三、总结与资源推荐
        总结:Proteus仿真STM32F103的核心痛点集中于时钟配置、外设驱动适配和 代码移植兼容性。通过动态时钟校准、外设状态监控和模块化代码设计,可显著提升仿真成功率。  

      优质文章推荐:  
     关于Proteus仿真ADC转换的问题_proteus adc 问题-CSDN博客

     proteus仿真STM32串口的各种问题和解决办法_proteus仿真用了串口就卡死什么原因-CSDN博客

---

    附录:问题自查清单  
| 问题类型 | 检查项 |  
|-------------------|---------------------------------------------------------------|  
| 电源与时钟      | VDD/VDDA是否正确配置|  
| 芯片配置          | 芯片是否配置正确?|  
| 接线问题          | 接线是否正确?|  

---

最后,以上就是我从小白到仿真成功之间遇到的一些问题,希望能够帮助到各位。

Logo

海思 HiSpark 开发者社区是上海海思为开发者搭建的内容和交流平台,依托完备芯片解决方案、专业开发环境、开源/开放的软件资源与社区技术内容,构建完整服务生态开发者的闭环体系。

更多推荐