【本笔记可作为哔哩哔哩up主江协科技视频教程的讲义视频STM32入门教程-2023版 细致讲解 中文字幕[1-1]课程简介】1.课程简介除固定代码延时函数、显示屏函数等会直接提供其他关键部分代码手敲一步步演示工程建立、程序调试。STM32最小系统板面包板硬件平台。面包板硬件平台如下图所示将STM32最小系统板插在面包板上作为基本的硬件单元。下面插上0.96寸的OLED作为调试和显示的屏幕。在调试程序时可以把程序中的变量显示在屏幕上。右边的STLINK插在电脑上用于下载程序和供电。LED、按键插在最小系统板的两侧。其他模块蜂鸣器模块用杜邦线连接。带插针的模块跨接在面包板的中间然后在进行连线。使用面包板可以实现任意电路的连接连线和修改都非常方便。可以避免开发板遇到的问题引脚冲突、引脚无法更改等。使用面包板带来的问题程序现象不出来不仅可能是程序的问题也可能是接线的问题。2.硬件设备1.STM32面包板入门套件2.Windows电脑。因为编程软件和一些小工具都在Windows平台选择Windows电脑方便些3.工具万用表、示波器图中为虚拟示波器可插在电脑上在电脑屏幕上显示波形、镊子、剪刀等。万用表检查电路连接情况因为我们使用面包板搭建的电路可能会存在接错线或接触不良的情况。示波器测引脚的电压波形变化在PWM实验或通信协议实验能看到波形对调试程序有很大帮助台式示波器、逻辑分析仪也可以。示波器较贵可不准备示波器。最终的现象都会在硬件电路上呈现没有示波器对最终的现象影响不大。镊子、剪刀方便面包板插线。3.软件设备Keil5 MDK是用来给ARM系列单片机编程的。学习51单片机用的软件是Keil5 C51(给51系列单片机编程的)。这两个软件不同相当于Keil5软件的两个子系列。如果电脑上安装的是Keil5 C51不能用来开发STM32。已经安装Keil5 C51的只需要再安装一个MDK即可。如果什么都没安装直接安装MDK。之后讲软件安装。4.套件介绍1.面包板其他模块和导线都是插在面包板上完成连接的。2.面包板专用的跳线这种跳线比较短可以贴在面包板上插线。比较适合长时间插线的情况。3.面包板的飞线这种线比较长方便挪动。比较适合经常挪动的接线情况。4.杜邦线两排杜邦线分别是公对母、母对母可以用来插接一些电路模块。5.STM32最小系统板上面的黑色小芯片就是STM32我们主要学习这个小芯片。6. 0.96寸的OLED显示屏模块用于显示参数和变量。这个显示屏是一个4引脚版本的现在网上卖的有4引脚和7引脚的。7.电位器进行AD转换实验。8.按键两引脚小按键跨接在面包板的引脚插孔和电源插孔之间。9.LED灯做点灯实验。10.STLINK下载程序和供电。11.USB转串口模块使STM32和电脑进行串口通信。12.有源蜂鸣器模块内置振荡源接上电就能响。相比较无源蜂鸣器需要不断翻转IO口的操作方式有源蜂鸣器更方便。13.传感器模块电路基本一致。13.1光敏电阻模块下面的4个引脚2个用来供电2个是光敏电阻信号的模拟输出和数字输出。可以进行IO口读取实验或者AD实验。13.2热敏电阻模块有模拟输出和数字输出。13.3对射式红外模块配合遮光片可以用来计次配合编码盘用来测速。13.4反射式红外模块向地面发射红外光用红外接收管接收地面反射的红外光。通过判断接收光的强度大体识别出地面的颜色变化。14.W25Q64 Flash存储模块存储数据用SPI总线进行通信。15.MPU6050陀螺仪和加速度计测量芯片自身的姿态I2C总线通信。16.旋转编码器输出两路正交的方波信号。用于指示旋转的方向和速度。STM32里面有专用的编码器电路可以很方便地识别这种信号。这个模块可以当作一个快速的按键来使用。主要用来模拟编码器的测速。现在的编码电机一般都会配备霍尔传感器或者光电传感器这些传感器的输出和这种旋转编码器是一样的所以学习旋转编码器就可以了旋转编码器方便插在面包板上比较便宜。17.直流电机、TB6612电机驱动模块进行直流电机的PWM调速实验。18.SG90舵机用PWM进行控制。输出端可以像船舵一样。根据我们给定PWM信号的占空比固定在某一个角度上做机器人或机械臂的关节。