M2芯片MacBook用Keil uVision烧录STM32固件的可行性及操作指南
我之前在M2 MacBook的Parallels Windows环境里折腾过ST-LINK烧录STM32的问题,踩了不少驱动的坑,给你整理一套亲测有效的步骤,应该能解决你的问题:
第一步:确保Parallels正确分配ST-LINK设备给Windows虚拟机
这是最容易被忽略的前提——虚拟机必须拿到ST-LINK的USB控制权:
- 把ST-LINK调试器通过USB线缆连接到你的M2 MacBook
- 启动Parallels里的Windows虚拟机
- 在Parallels顶部菜单栏,点击「设备」→「USB」,找到你的ST-LINK设备(通常显示为
STMicroelectronics ST-LINK/V2或类似名称),点击它选择「连接到Windows」 - 确认Windows右下角系统托盘弹出USB设备连接的提示,说明虚拟机已经成功接管ST-LINK
第二步:卸载无效驱动并安装官方适配版
网上随便找的驱动大概率不兼容虚拟机环境,一定要用ST官方的驱动包:
- 先清理旧驱动:打开Windows的「设备管理器」,找到「通用串行总线控制器」里带黄色感叹号的ST-LINK设备(如果有的话),右键选择「卸载设备」,勾选删除此设备的驱动程序软件,然后重启虚拟机
- 在Windows虚拟机里下载ST官方最新版的
ST-LINK USB Driver(适配Windows 10/11的版本,建议选V2.0以上) - 右键点击驱动安装程序,选择以管理员身份运行,按照向导完成安装
- 如果遇到「数字签名无法验证」的错误,需要暂时关闭Windows的安全启动:
- 关闭Windows虚拟机,在Parallels中选中该虚拟机,点击右上角「设置」→「硬件」→「启动」
- 勾选「启动时进入UEFI固件设置」,启动虚拟机
- 在UEFI界面的「Security」选项中,把
Secure Boot设置为Disabled - 保存设置并重启Windows,重新安装驱动
- 安装完成后回到「设备管理器」,检查ST-LINK设备是否正常显示在「STMicroelectronics」分类下,没有黄色感叹号就说明驱动安装成功
第三步:配置Keil uVision完成烧录
驱动搞定后,Keil的配置就很常规了:
- 打开Keil uVision,加载你的STM32项目
- 点击工具栏的
Options for Target(锤子图标),切换到「Debug」选项卡 - 在「Use」下拉菜单中选择
ST-LINK Debugger,然后点击右侧的「Settings」 - 在弹出的ST-LINK设置窗口中点击「Connect」,如果能成功显示STM32芯片的型号、ID等信息,说明连接正常
- 切换到「Flash Download」选项卡,勾选对应芯片的Flash区域,点击「Add」添加正确的Flash编程算法(Keil通常会自动识别,若没有则手动选择对应STM32型号的算法)
- 先点击「Erase」擦除芯片Flash,再点击「Download」开始烧录固件,等待进度条完成即可
额外注意事项
- 每次重新连接ST-LINK到Mac后,都要检查Parallels的「设备」→「USB」菜单,确保设备分配给了Windows(Mac系统偶尔会抢占USB设备)
- 尽量使用原装ST-LINK线缆或带数据传输功能的USB线,有些廉价充电线只有供电能力,无法传输数据
- 确保STM32芯片处于正确的烧录模式:通常是BOOT0接高电平,BOOT1接低电平,烧录完成后再改回BOOT0接低电平的正常运行模式
内容的提问来源于stack exchange,提问作者Ann
相关产品推荐
相关产品推荐

