You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

STM32F103C6 Proteus仿真异常求助:Arduino IDE编写的LED闪烁程序失效

STM32F103C6 Proteus仿真LED闪烁故障排查方案
  • 核对引脚映射:Arduino IDE对STM32的引脚命名和Proteus物理引脚可能存在差异,比如代码中使用的引脚号需对应Proteus里芯片的实际引脚,避免因标号混淆导致接线错误。
  • 确认HEX文件有效性:确保导出的HEX文件是针对STM32F103C6编译的版本,而非其他同系列型号(如F103C8)。在Proteus加载HEX时,选择正确的程序存储器路径。
  • 匹配时钟配置:Arduino IDE默认的STM32时钟设置可能和Proteus仿真环境不兼容,可在代码中手动指定时钟源(如内部8MHz RC振荡器),或在Proteus中调整芯片时钟参数与代码一致。
  • 检查硬件连接:验证Proteus中STM32的VCC、GND是否正确接入,复位引脚(NRST)未被拉低,保证芯片能正常上电启动。
  • 更换仿真模型测试:若Proteus内置的STM32F103C6模型存在兼容性问题,可尝试替换为STM32F103C8模型(硬件差异极小),或更新Proteus至最新版本。
  • 用寄存器代码验证:绕过Arduino库封装,直接用寄存器操作编写最简LED闪烁代码,排除库的潜在问题:
void setup() {
  RCC->APB2ENR |= RCC_APB2ENR_IOPAEN;
  GPIOA->CRH |= GPIO_CRH_MODE13_0;
  GPIOA->CRH &= ~GPIO_CRH_CNF13_0;
}

void loop() {
  GPIOA->ODR ^= GPIO_ODR_ODR13;
  delay(1000);
}

内容的提问来源于stack exchange,提问作者Muhammad Al Mahdi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 05:22:34