去年底冒着被批评浪费钱的心理先斩后奏地入手了一台小米扫地机器人,在闲鱼上偶然看到某对年会抽取到小米扫地机器人的年轻情侣在卖(为毛我家公司年会奖品没有小米扫地机器人??),他们不需要的原因是住的地方太小,实际上买了之后小米扫地机器人还是非常好用滴~这时候确实要赞扬雷军一下,强调我不是米粉,不是米粉,不是米粉!
鉴于本人是谁,大名鼎鼎且最适合广大女青年们结婚的对象千万程序猿之一啊哈哈!那当然是抱着科学的态度,要捣鼓捣鼓两下咱家小米清洁阿姨(小米机器人)了,接下来,高能预警。建议非程序猿就别看了,因为看了你也会一脸懵逼。
下面主要是讲怎么写STM32单片机程序,而小米扫地机器有用到这个芯片, 理论上那就可以重写它的程序
从本文中, 可以学习到如何从零开始把1个写好的程序写入到STM32芯片中
硬件清单
- STM32F103C8T6 - 学习板
- J-Link-OB仿真下载器
- USB线缆
- 若干杜邦线
STM32F103C8T6 - 学习板
STM32芯片
J-Link-OB仿真下载器
J-Link-OB仿真下载器与STM32板子连接
接线方法
STM32学习板 J-Link-OB
3.3V - VCC
SWIO - SWIO
SWCLK - SWCLK
GND - GND
接好后J-Link-OB另一端Micro-USB用USB线缆与电脑USB口连接
软件清单
操作系统:window7
程序编程环境:Keil MDK_ARM V4.1
J-Link-OB驱动程序
完整过程
- 安装Keil MDK_ARM V4.1(以此版本为例)
- 安装J-Link-OB驱动程序
未装驱动前,电脑不能识别J-Link-OB
直接用这个EXE安装驱动
最后一步要钩上这个
安装完成后, 可以看到J-Link-OB已被识别
- 接下来是在Keil MDK_ARM V4.1中设置和烧录
先确认Device中有无选择正确的芯片
单击 Project 中 Option for Target‘XXX’或使用快捷键
Alt+F7 或单击工具栏中的相应的图标
选择 Debug 选项卡,选择 Cortex-M/R J-Link/J-Trace选项
添加上图的内容
确认上图的内容是否一致
此处要单独说明, 如果看到下图的现象
Device Name里显示的是no SW-DP found
如果确认硬件没有故障, 就可能是Keil MDK_ARM V4.1对CM0+的内核支持不完善,在segger的官网下了个补丁,替换了一下就好了
把下载到的补丁替换到指定的位置, 重启一次Keil即可
Utilities里也要设置一下
到这里就一切准备就绪了
打开一个现成的Project
点Rebuild, 编译完成后
再点Download按钮
看到上图表示SWD方式下载程序成功!
到这里就完成了
如果程序没按预期的方式运行, 可以试一下按板子上的Reset
或是重新上电试试
如何,老铁们看懂了吗,有疑问欢迎一起来探讨,程序猿的世界多姿多彩,不捣鼓捣鼓实在是手痒!
閱讀更多 物聯創客 的文章