1. 课程导学与开发环境搭建

各位同学好,我是你们这门课的老周。做嵌入式开发十几年了,从51单片机一路做到现在的ARM Cortex-M系列。说实话,每次带新人入门,我最怕的就是环境没搭好就急着写代码——结果编译报错找半天,最后发现是软件没装对。

这一章咱们不急着写代码。先把家伙事儿备齐,把路铺平。你想想看,盖房子总得先把砖和水泥准备好,对吧?

1.1 课程目标:我们要学会什么?

这门课不是讲理论,是实战。学完以后,你能独立完成下面这几件事:

  • 读懂单片机ADC——知道怎么把模拟电压变成数字量
  • 驱动常见传感器——比如DHT11温湿度传感器,能读到真实数据
  • 玩转串口通信——让单片机跟电脑“说话”,把数据发到串口助手
  • 搭建完整采集系统——从传感器到上位机,一条龙打通

说白了,就是让你能独立做一个“传感器采集→单片机处理→串口上传”的完整链路。我在项目里见过太多人,传感器驱动写好了,串口死活调不通,最后发现是波特率配错了——这种坑,咱们提前踩一遍,以后就不会再犯了。

1.2 硬件清单:你得准备这些

硬件不多,四样东西就够了。我列个表,你照着买就行,别贪多。

硬件名称 型号/规格 数量 备注
主控板 STM32F103C8T6(蓝色小板) 1块 淘宝上十几块钱,别买太便宜的,容易虚焊
USB转TTL模块 CH340G 或 CP2102 1个 用来跟电脑通信,买带DTR/RTS的
电位器 10kΩ 可调电阻 1个 模拟电压输入,ADC实验用
温湿度传感器 DHT11 1个 便宜、经典、单总线通信
我的建议:买STM32F103C8T6的时候,顺便买一块面包板和杜邦线。我在实验室带学生时发现,很多人焊工不过关,用面包板反而更稳。另外,USB转TTL模块尽量选带“DTR”引脚的,后面做自动下载电路会方便很多。

1.3 软件安装:三件套必须配齐

软件方面,咱们需要装三个工具。顺序别搞反,先装Keil,再装CubeMX,最后装串口助手。

1.3.1 Keil MDK-ARM

这是咱们写代码的主力工具。STM32的代码编译、调试都靠它。

  • 版本建议:MDK 5.38 或更高版本
  • 安装要点:路径不要有中文,不要有空格
  • 破解:这个我就不多说了,你懂的
  • 器件包:安装完后记得装STM32F1系列的DFP包
注意:Keil安装包比较大,下载时别用迅雷,容易下坏。我遇到过好几次,学生说“老师我装好了但编译报错”,远程一看,安装包本身就是坏的。老老实实用浏览器自带的下载,慢点但稳。

1.3.2 STM32CubeMX

这个工具是用来生成初始化代码的。以前我们写STM32,GPIO配置要翻手册查寄存器,现在用CubeMX点几下鼠标就搞定了。

  • 版本建议:6.10 或更高
  • 安装前提:需要Java运行环境(JRE),装的时候会自动提示
  • 固件包:第一次打开时,记得下载STM32F1的HAL库固件包

我个人习惯是,先用CubeMX配好外设,生成工程,然后在Keil里写业务逻辑。这样既快又不容易漏配置。你想想看,要是手动配时钟树,配错一个分频系数,整个系统就跑不起来——CubeMX能帮你避免这种低级错误。

1.3.3 串口助手

调试利器。单片机发出来的数据,全靠它来收。

  • 推荐工具:SSCOM(丁丁串口助手)或 XCOM
  • 关键设置:波特率、数据位、停止位、校验位——这四个参数必须跟单片机一致
  • 小技巧:勾选“HEX显示”和“时间戳”,方便分析数据

避坑指南:我曾经带过一个项目,学生调了三天串口,数据就是收不到。最后发现他用的串口助手是盗版精简版,压根不支持115200波特率。所以啊,工具别用太冷门的,SSCOM和XCOM都是经过验证的。

1.4 知识体系总览:一张图看懂

下面这张图,把咱们这门课的核心知识结构画出来了。你先把整体框架记住,后面每章都是往这个框架里填细节。

单片机ADC采样与串口通信数据采集知识体系 STM32F103C8T6 主控 ADC 模拟采样 电位器 → 模拟电压输入 12位分辨率 → 0~4095数字量 多通道切换 + 规则/注入组 传感器驱动 DHT11 → 单总线协议 温湿度数据读取 + 校验 时序控制 → 微秒级延时 串口通信 → 上位机数据上传

从图上你能看到,咱们这门课就三条主线:ADC采样、传感器驱动、串口通信。这三条线最终汇合到“数据上传”这个终点。说白了,就是让单片机把采集到的数据,通过串口告诉电脑。

1.5 开发环境验证:装好了怎么确认?

软件装完别急着关。我教你一个快速验证的方法:

  1. 打开Keil,新建一个空工程,选STM32F103C8
  2. 写一个空的main函数,编译——如果不报错,说明Keil和器件包都装对了
  3. 打开CubeMX,新建工程,选同样的芯片——能正常打开图形化配置界面,说明CubeMX没问题
  4. 打开串口助手,插上USB转TTL模块——设备管理器里能看到COM口,说明驱动装好了

一个小经验:很多人装完Keil发现编译按钮是灰色的,那是因为没装器件包。去Keil官网下载“STM32F1xx_DFP”包,双击安装就行。这个坑我踩过,所以特意提醒你。

1.6 本章小结

这一章咱们把课程目标、硬件清单、软件安装都捋了一遍。东西不多,但都是基础。你想想看,要是硬件买错了型号,或者软件版本不兼容,后面30章的内容全白搭——所以别嫌我啰嗦,这一步走稳了,后面才跑得快。