4、开发环境搭建:Keil MDK/IAR IDE安装、交叉编译工具链配置、J-Link/ST-Link调试器驱动安装、串口驱动(CH340/CP2102)安装与验证
好,咱们正式开始动手了。这一章我带你把开发环境从头到尾捋一遍。说实话,NB-IoT终端开发,环境搭不好,后面全是坑。我自己就见过不少新手,代码写得挺好,结果卡在驱动装不上、编译器报错这种问题上,一卡就是半天。
咱们的目标很明确:让你的电脑能编译代码、能下载程序、能看日志。这三件事搞定了,后面30章你才能跑得起来。
4.1 Keil MDK 安装与破解
Keil MDK 是ARM内核MCU开发的主流工具。我个人习惯用Keil,因为它的调试界面直观,工程管理也顺手。
注意: Keil MDK 分两个版本:MDK-Lite(免费版,有代码大小限制,32KB)和 MDK-Professional(付费版,无限制)。做NB-IoT项目,代码量很容易超过32KB,建议直接用专业版。
安装步骤:
- 从ARM官网下载 MDK-ARM 安装包(目前最新是5.38a,但5.36更稳定,我推荐用这个)。
- 双击安装,一路Next。注意安装路径不要有中文,不要有空格。
- 安装完成后,打开Keil uVision5,会提示注册。这时候需要用到注册机。
- 以管理员身份运行注册机,复制CID码到注册机,生成License。
- 把License粘贴回Keil,搞定。
小技巧: 安装完成后,建议先建一个空工程,编译一下。如果没报错,说明安装成功。我曾经遇到过安装后编译报错“找不到ARMCC”,那是因为环境变量没配好,重新安装一次就好了。
4.2 IAR Embedded Workbench 安装
IAR 是另一款主流IDE。说实话,IAR的编译器优化比Keil强一些,代码密度更高。但它的界面风格比较老派,快捷键也和Keil不一样。我个人是Keil和IAR混着用,看客户要求。
安装要点:
- IAR 分不同芯片系列版本,比如 For ARM、For Renesas 等。咱们做NB-IoT,选 For ARM 版本。
- 安装时同样注意路径不要有中文。
- IAR 的License管理比较麻烦,需要导入许可证文件(.lic)。
- 建议安装完成后,打开一个示例工程,编译通过就算成功。
我的经验: 如果你同时装了Keil和IAR,注意它们可能会抢J-Link驱动。我遇到过好几次,Keil里能下载,IAR里却连不上调试器。解决办法是:重新安装J-Link驱动,并且在IAR里手动指定调试器类型。
4.3 交叉编译工具链配置
这里要说明一下:Keil和IAR都自带编译器,不需要额外安装交叉编译工具链。但如果你用的是GCC工具链(比如STM32CubeIDE、VS Code + GCC),那就需要单独配置。
GCC工具链配置步骤:
- 下载 ARM GCC 工具链(推荐 gcc-arm-none-eabi 版本)。
- 解压到某个目录,比如
C:\arm-gcc。 - 把
C:\arm-gcc\bin添加到系统环境变量 PATH 中。 - 打开命令行,输入
arm-none-eabi-gcc --version,如果显示版本号,说明配置成功。
避坑指南: 我曾经在Windows上配置GCC工具链时,发现编译出来的程序运行不正常。查了半天,原来是路径里有空格导致的。所以,工具链安装路径一定不要有空格,不要有中文。
4.4 J-Link / ST-Link 调试器驱动安装
调试器是连接电脑和开发板的桥梁。NB-IoT终端开发,最常用的是J-Link和ST-Link。
J-Link 驱动安装:
- 从SEGGER官网下载 J-Link Software and Documentation Pack。
- 安装时选择“Install USB driver for J-Link”。
- 安装完成后,插上J-Link,设备管理器里应该能看到“J-Link”设备。
- 如果显示黄色感叹号,说明驱动没装好,手动更新驱动即可。
ST-Link 驱动安装:
- ST-Link驱动通常集成在STM32CubeProgrammer或Keil安装包里。
- 也可以单独下载 ST-Link 驱动安装包。
- 插上ST-Link,设备管理器里应该出现“STMicroelectronics STLink dongle”。
小提示: 如果你用的是山寨版J-Link(淘宝上几十块那种),驱动可能会被SEGGER官方封杀。解决办法是:安装旧版驱动(比如V6.xx版本),或者用“J-Link OB”模式。我手头就有好几个山寨J-Link,用V6.44驱动一直没问题。
4.5 串口驱动(CH340 / CP2102)安装与验证
串口是NB-IoT终端调试的生命线。没有串口日志,你根本不知道设备在干什么。市面上最常见的USB转串口芯片就是CH340和CP2102。
CH340 驱动安装:
- CH340是南京沁恒的产品,驱动可以从官网下载。
- Windows 10/11 通常会自动安装驱动,但有时会失败。
- 手动安装时,选择“从磁盘安装”,指向驱动文件夹即可。
- 安装成功后,设备管理器里会出现“USB-SERIAL CH340”端口。
CP2102 驱动安装:
- CP2102是Silicon Labs的产品,驱动从Silicon Labs官网下载。
- 安装过程很简单,一路Next。
- 安装完成后,设备管理器里出现“Silicon Labs CP210x USB to UART Bridge”。
验证方法: 插上USB转串口模块,短接TX和RX引脚。打开串口助手(比如Putty、SSCOM),选择对应的COM口,波特率设为115200。发送任意字符,如果能收到自己发送的内容,说明驱动安装成功,硬件也没问题。这个测试我每次换电脑都会做一遍,省得后面调试时怀疑人生。
4.6 环境验证:一个完整的测试流程
所有驱动装好后,咱们来做个完整的验证。拿一块NB-IoT开发板(比如BC95-G模组),接上J-Link和串口线。
测试步骤:
- 打开Keil,加载一个示例工程(比如LED闪烁)。
- 点击编译,确保0错误0警告。
- 点击下载,程序烧录到开发板。
- 打开串口助手,连接开发板的串口。
- 按下复位键,看串口是否输出启动信息。
如果以上步骤都顺利,恭喜你,开发环境搭建成功了!
最后提醒: 环境搭建这件事,看起来简单,但细节很多。我见过有人因为USB线质量差导致下载失败,也有人因为串口驱动版本不对导致乱码。所以,每一步做完都验证一下,别等到后面才发现问题。
好了,这一章就到这里。下一章咱们开始讲NB-IoT模组的AT指令通信,那才是真正有意思的部分。