


物联网嵌入式(人工智能)5人精品班
汉码未来
白天班、晚班、周末班等7个班级【课程目的】
本培训班旨在培养学员成为综合软硬件的全栈开发工程师。通过系统的学习和实践,让学员真正掌握一技之长,拥有珍贵的独立开发和独立解决问题的能力,以便在进入企业后能够独当一面。
【招生对象】
培训班面向 18 岁以上、大专及以上学历的人群。这个要求确保学员具备一定的知识基础和学习能力,能够更好地适应复杂的技术学习。
【主讲项目】
1、“嵌入式 Linux C/C++软件开发”
(1)路由器项目:深度掌握 Linux 网络协议在实际工程场景中的应用
(2)QT 串口通信工具:通过实现串口工具,深入了解上位机通信原理
(3)Linux 音乐播放器:强化 C 语言编程思维,强化对数据结构重点算法的掌握
2、5G 物联工业 GUI-智能终端系统
社会上大部分机构授课都是讲到 5G 物联工业 GUI 项目作为整个课程的完结终章,比如类似于智能家居、智慧农业、智能门锁、智能衣柜等,这些项目统一称为工业 GUI 项目,开发的本质大同小异,只是传感器不同而已,所以这里只需要掌握其中一种类型项目开发即可,其他类似的项目都能够进行开发。
(1)项目简介:5G 物联工业 GUI 项目运用了所学的嵌入式开发技术栈,带同学手把手实现智能终端的客户端、5G 云平台服务端、嵌入式设备端功能,该项目通用于工业 GUI 大类项目,比如智能家居、智慧农业、智能门锁、智能衣柜等。
(2)核心技术:C/C++/Python/Shell、单片机接口技术、物联网技术、STM32 单片机技术、Linux 设备驱动、嵌入式系统定制、QT 开发交互显示界面、ARM 核技术、UNIAPP 移动端交互嵌入式
(3)功能实现:各类智能类项目,学员均可应对!一通百通!
3、工业嵌入式-工业视觉机械臂
(1)项目简介:
视觉机械臂由六个高精度舵机组成机械臂,集成先进视觉技术,搭配 STM32 控制器和 OpenMV 模块,具备颜色追踪、分拣、码垛,二维码分拣、码垛,人脸识别,数字识别等功能,可广泛应用于多种场景。
(2)核心技术:
涵盖了高精度舵机、STM32 控制器和 OpenMV 模块。其中,高精度舵机包含 ZX20D、ZX15D、ZX15S 等型号,具备多种工作模式与参数设置,能通过串口指令或上位机控制,并反馈角度、电压、温度等数据,以实现精确运动控制。
STM32 控制器作为主要控制单元,接收 OpenMV 模块数据,运用逆运动学等功能操控舵机,完成各类任务,且具备多种接口用于连接不同设备。
OpenMV 模块负责图像处理与分析,可拍摄、采集并识别颜色、二维码、人脸等目标,通过串口通信将数据传输给 STM32 控制器,同时拥有 USB 接口、SD 卡槽、SPI 总线等多种特性和接口,支持视频录制、数据传输及与其他设备连接。
(3)功能实现:
在动作控制方面,动作组可对多个舵机进行综合控制,能在上位机编辑并实现多种操作,下载后可用串口助手或上位机调用,还可进行偏差调节,但要注意偏差调节范围与死区问题。
控制方式包括上位机控制,可进行多种操作;PS2 手柄控制,需特定设置且注意串口占用;手机小程序控制,基于蓝牙通讯且操作步骤明确。
视觉功能上,可实现颜色追踪、分拣、码垛,二维码分拣、码垛,人脸识别以及数字识别等,在颜色、二维码处理及人脸和数字识别方面均有相应的操作流程和功能表现。
4、仿生物嵌入式-防御攻击仿生蜘蛛
(1)项目简介:防御攻击仿生蜘蛛六足机器人是一款高度灵活且具备复杂动作的机器人。
它配备 18 个独立驱动的舵机,由 24 路控制板负责驱动,同时借助串口拓展接口与Arduino 三合一控制板配合,实现传感器相关功能及二次开发,为开发者提供广阔编程自由度和创新空间。
(2)核心技术: 包含 18 个 ZX20D 舵机、24 路舵机控制板、Arduino 控制板、传感器、OPENMV 模块等。
(3)功能实现:动作控制功能,可一次性控制多个舵机转动到不同角度;传感器功能(包括超声波传感器、RGB 彩灯、红外传感器、颜色传感器);视觉扩展功能(包括追踪功能、识别与抓取功能、巡线功能、二维码数字识别);控制方式(包括电脑上位机控制、PS2 手柄控制、手机小程序控制)。
5、BSP 项目-BSP 相关集群项目
(1)项目简介:包含 linux 内核&文件系统移植、嵌入式开发-系统移植-bootloader、yocto的技术的运用。
(2)核心技术:
操作系统基础、软件开发工具、编程语言、版本控制与协作工具、构建自动化以及文档配置管理。
涉及处理器、外设接口连接,Linux 内核与设备驱动开发,使用交叉编译工具链、调试和仿真工具,主要编程语言为 C/C++和汇编,同时利用 Git 进行版本控制,Make 或 CMake自动化构建,并通过 Doxygen 等文档工具维护文档。
(3)功能实现:通过编写和集成软件,确保硬件设备与操作系统之间的正确交互,包括硬件初始化、设备驱动开发、系统引导、外设功能支持以及调试和优化,从而使得整个系统能够稳定运行并满足特定的性能需求。
6、PID 算法核心原理与实现
(一)算法定义
本项目采用 PID 算法结合 TB6612 电机驱动模块,实现直流电机的高精度速度闭环控制。通过 STM32 微控制器采集电机转速反馈信号,经过 PID 算法计算后输出控制指令至TB6612,动态调节电机两端电压,使电机在负载变化、电压波动等情况下仍能稳定运行在目标转速,适用于智能小车、机械臂关节、传送带等需要精确速度控制的场景。
(二) 核心技术
控制核心:STM32 系列单片机(负责 PID 运算、数据采集与指令输出)
驱动模块:TB6612FNG(双路 H 桥电机驱动,支持正反转、PWM 调速)
执行机构:直流减速电机(带编码器,提供转速反馈)
辅助电路:编码器信号处理电路(滤波)、电源模块(为系统提供稳定电压)
(三) 功能实现
STM32 将 PID 输出转换为 PWM 信号,通过 TB6612 的引脚控制电机转向,通过 PWM 引脚调节电机转速。
比例环节(P):及时响应当前转速偏差,立即调整 PWM 占空比
积分环节(I):累积微小偏差,消除负载变化导致的静态误差(如爬坡时转速下降)
微分环节(D):根据转速变化率提前调节,抑制突然加减速时的超调
7、无人机姿态控制系统
(一)项目简介
本项目基于 PID 算法构建无人机姿态控制系统,针对多旋翼无人机(如四旋翼、六旋翼)的飞行稳定性需求,实现对无人机俯仰角、横滚角、偏航角的精准控制。系统通过陀螺仪、加速度计等传感器实时采集无人机姿态数据,经过 PID 算法计算后输出控制指令,驱动电机调整转速,确保无人机在悬停、飞行、抗风等场景下保持稳定姿态,为航拍、测绘、物流等任务提供可靠的飞行基础。
(二)核心技术
硬件组件:IMU 惯性测量单元(如 MPU6050,集成陀螺仪和加速度计,用于采集角速度和加速度数据)、飞行控制板(如 STM32 作为核心运算单元执行 PID 算法)、无刷电机及电调(接收控制信号调整转速,改变无人机升力)。
算法核心:PID 算法(针对俯仰、横滚、偏航三个姿态轴分别设计独立的 PID 控制器),结合数据融合算法(对传感器数据降噪并解算准确姿态角)、电机混控逻辑(将姿态控制量转换为各电机的转速指令)。
(三)功能实现
支持手动模式(通过遥控器指令直接控制姿态,PID 算法辅助稳定)、定点悬停模式(结合GPS 和气压计数据,PID 自动调节姿态维持位置稳定)、航线飞行模式(按预设路径自动调整姿态,实现自主飞行)。
8、基于单片机项目集成
1、LED
1)LED(发光二极管) 是一种半导体光电子器件,核心特性基于半导体 PN 结的单向导电性,LED 的长引脚为正极(阳极),短引脚为负极(阴极),相比传统光源,LED 具有能耗低、寿命长(可达数万小时)、响应速度快(纳秒级)、体积小、抗震性强等优势。
2)不仅实现基础的连续固定频率闪烁(如 1Hz、2Hz 交替亮灭),还设计了渐变呼吸闪烁
(亮度从暗到亮再到暗循环,模拟呼吸节奏)、方向流水闪烁(多颗 LED 按序依次亮灭,形成追逐光效,模拟流水或流星轨迹)。
2、蜂鸣器
1)有源蜂鸣器:内部自带振荡源,将正负极接上直流电压即可持续发声,频率固定,蜂鸣器可将电信号转化为声音信号,按结构与工作原理可分为有源蜂鸣器和无源蜂鸣器,体积小、功耗低、发声清晰,广泛应用于电子设备的报警提示。
2)当红外传感器检测到物体靠近(如有人经过),蜂鸣器发出短音提示(“滴”)。
3、按键
1)按键是我们常见的输入设备,按下导通,松手断开。按键的时候会出现抖动现象,由于按键内部使用的是机械式弹簧片来进行通电的,所以在按下和松手的瞬间会伴随有一连串的抖动。
2)不仅实现 “按一次 LED 亮,再按一次 LED 灭” 的基础功能,还设计多级按压逻辑:短按(按压时间<1s):切换 LED 亮灭状态;长按(按压时间≥1s):进入亮度调节模式,此时配合另一颗按键(或同一按键连续短按),控制 LED 亮度逐级变化(如从暗到亮分 3档);
4、传感器模块
1)传感器模块中传感器元件(光敏电阻/热敏电阻/红外接收管等)的电阻会随外界模拟量的变化而变化,比如光线越强,光敏电阻的阻值就越小;温度越高,热敏电阻的阻值就越小;红外光线越强,红外接收管的阻值就越小。通过与定值电阻分压即可得到模拟电压输出,再通过电压比较器进行二值化即可得到数字电压输出。
2)不仅实现 “光线过暗 / 过亮时蜂鸣器报警” 的基础功能,还通过调节电压比较器阈值,设置多级触发条件:
强光触发:蜂鸣器发出急促 “滴滴” 声,同时联动 LED 红灯闪烁,提示强光预警,
弱光触发:蜂鸣器发出缓慢 “滴 — 滴 —” 声,LED 绿灯常亮,提示环境过暗。
5、OLED 显示屏
1)OLED(Organic Light Emitting Diode)是有机发光二极管。OLED 显示屏是性能优异的新型显示屏,具有功耗低、相应速度快、宽视角、轻薄柔韧等特点。
我们这里使用的是 0.96 寸 OLED 模块,小巧玲珑、占用接口少、简单易用,是电子设计中非常常见的显示屏模块。这里使用的 OLED 模块供电为 3~5.5V,一般只有一种颜色,分辨率比较低为 128*64,驱动这个 OLED 只需要几根线和简单的通信协议(I2C/SPI),占用资源比较小。
2)可显示文字、图形、简单图标等,单色显示(常见蓝色、白色),虽色彩单一,但对比度高,文字与图案边缘清晰,适用于信息提示、参数显示等场景。
6、EXTI 外部中断
1)这个是 F1 系列最多有 68 个可屏蔽中断通道,包含 EXTI、TIM、ADC、USART、SPI、I2C、RTC 等多个外设。NVIC 嵌套中断向量控制器是 STM32 中用来管理中断、分配优先级的,对中断进行统一管理,每个中断通道都拥有 16 个可编程的优先等级,可对优先级进行分组,进一步设置抢占优先级和响应优先级。
2)不仅实现基础的“遮挡一次计数 + 1”功能,还设计多维度计数逻辑:
单次计数模式:每遮挡一次,EXTI 触发中断计数,OLED 实时显示累计次数
批量计数模式:长按按键触发低优先级中断,切换为 “连续遮挡 5 次累加 1 组”,适合成批物体统计(如包装流水线计数);
速度监测模式:通过 EXTI 记录两次遮挡的时间间隔(结合定时器 TIM 中断),计算物体通过速度(如 “速度:0.5m/s”),并在超速时触发蜂鸣器报警。
7、旋转编码器
1)旋转编码器是用来测量位置、速度或旋转方向的装置,当其旋转轴旋转时,其输出端可以输出与旋转速度和方向对应的方波信号,读取方波信号的频率和相位信息即可得知旋转轴的速度和方向。一般类型包括机械触点式、霍尔传感器式、光栅式。
2)不仅实现基础的正转 + 1、反转 - 1 计数,还设计多维度功能:
设备调速旋钮:将计数转化为 PWM 信号,控制电机转速(如计数越大,电机转速越高),实现无级调速;
参数设定终端:嵌入智能设备(如加湿器),通过旋转调节湿度阈值(计数对应湿度值),OLED 显示当前设定并记忆参数;
游戏交互部件:作为游戏控制器,正转控制角色前进,反转后退,计数对应积分,拓展娱乐化应用。
8、定时器
1)TIM 定时器可以对输入的时钟进行计数,并在计数值达到设定值时触发中断。当计数器的输入是一个准确可靠基准时钟的时候,那它在对这个基准时钟进行计数的过程,实际上就是计时的过程。比如 STM32 定时器的基准时钟一般都是主频 72MHZ(周期是频率的倒数),如果对 72MHZ 计 72 个数,所记时间就是 72*1/72000000=1us,1MHz 也就是 1us 的时间;如果计 72000 个数,所记时间就是 72000*1/72000000=1ms,1KHz 也就是 1ms 的时间。
2)不仅实现基础的 “1s 定时计数” 和 “红外脉冲计数”,更设计双模联动逻辑:
定时统计模式:定时器 1s 定时中断触发时,自动读取外部时钟模式下的红外计数总值,计算 “每秒平均通过量”(如“速率:5 个 / 秒”),OLED 分栏显示累计总数与实时速率;
阈值报警模式:通过按键预设阈值(如“30 个 / 10s”),定时器每 10s 统计一次,若超过阈值,蜂鸣器报警并记录超阈值时间(精确到秒),形成 “计数 - 分析 - 预警” 闭环。
9、TIM 输出比较
1)OC(Output Compare)输出比较,输出比较可以通过比较 CNT(时基单元计数器)与 CCR(捕获单元,CC 是捕获/比较,R 是寄存器)寄存器值的关系,来对输出电平进行置 1、置 0或翻转的操作,用于输出一定频率和占空比的 PWM 波形,定时器输出比较就是对 PWM 的波形进行控制的。
2)PWM(Pulse Width Modulation)脉冲宽度调制,在具有惯性(改变瞬间不会消失而会暂时存留一段时间,就像跑步一样从跑步状态到立定状态不会瞬间完成)的系统中,可以通过对一系列脉冲的宽度进行调制,来等效地获得所需要的模拟参量,常应用于电机控速等领域,而 PWM 信号就是一个数字输出信号,是由高低电平组成的,用来等效的输出一个模拟信号。
3)多模式 PWM 呼吸效果不仅实现基础的 “占空比 0%→100→0%” 循环呼吸,还设计动态调节模式:
节奏跟随模式:通过按键切换呼吸频率(如 2s/5s/10s 一个周期),PWM 周期随设定值变化,LED 明暗过渡速度同步改变;
传感器联动模式:对接光敏传感器,环境光强时自动降低占空比(如上限 50%),避免强光刺眼;光弱时提升至 100,增强氛围感;
音乐律动模式:通过麦克风模块采集声音信号,将音量大小转化为 PWM 占空比(音量越高,占空比跳变越剧烈),实现 LED 随音乐 “跳动呼吸”。
10、单舵机
1)舵机是小型直流伺服电机的一种,是一种根据输入 PWM 信号占空比来控制输出角度的装置,我们套件里的舵机的型号是 SG90,它有三根输入线,其中两根是电源线,一根是 PWM信号输入线。其中白色的输出轴,它的轴会固定在一个指定的角度不动,至于固定在哪个位置,由信号线的 PWM 信号来决定的。
2)多维度输入控制:
不仅实现 “指定角度直接驱动”,还设计多样化控制逻辑:按键分级控制:短按按键 A,舵机按 15° 步进正转;短按按键 B,按 15° 步进反转;长按任一按键 2 秒,自动复位至 90° 中位,OLED 同步显示当前角度(如 “Angle: 45°”)。
旋转编码器联动:旋转编码器顺时针转动,舵机随旋转角度同步正转(编码器每转 1 格,舵机转 3°);逆时针转动则同步反转,实现 “无级调速” 般的角度调节。
互动玩具关节:作为机器人手臂关节,配合红外传感器,检测到障碍物时自动转动 30° 避开,展现 “感知 - 决策 - 动作” 的闭环能力。
11、直流电机
1)直流电机是一种能将电能转换为机械能的装置,当电极正接时,电机正转,当电极反接时,电机反转。图中所示的电机是 130 直流电机。直流电机属于大功率器件,GPIO 口无法直接驱动,需要配合电机驱动电路来操作,这里使用 TB6612 电机驱动芯片来驱动电机。
2)TB6612 是一款双路 H 桥型的直流电机驱动芯片,其中有两个驱动电路,可以独立地驱动两个直流电机并且控制其转速和方向。当 H 桥地左上和右下两个 MOS 管导通,电流就从 O1流向 O2,当左上和右下两个 MOS 管导通,电机就正转;当右上和左下两个 MOS 管导通,电流就从 O2 流向 O1,电机就反转。
3)实现 PWM 驱动直流电机,多维控制与状态反馈,不仅实现 “正转 / 反转 / 停止” 基础功能,还设计动态控制逻辑:
PWM 无级调速:通过旋转编码器调节 PWM 占空比(0%~100),OLED 实时显示当前转速等级(如 “Speed: 75%”),配合按键切换转速预设档(30%/60%/90%)。
方向与制动联动:短按按键 A 切换正转 / 反转,长按按键 A 触发 “急停制动”(TB6612的 STBY 引脚拉低,电机停转),避免惯性滑行。
12、TIM 输入捕获
1)IC(Input Capture)输入捕获模式下,当通道输入引脚出现指定电平跳变(上升沿或者下降沿)时,当前 CNT 的值将被锁存到 CCR 中,可用于测量 PWM 波形的频率、占空比、脉冲间隔、电平持续时间等参数。
2)实现输入捕获模式测频率,为了测量外部信号的频率和占空比,需要产生一个信号以供测量,那么 STM32 就可以生成待测的 PWM 信号。
3)使用 PWMI 模式双通道分别测量频率和占空比,全参数实时测量:
动态信号监测:TIM1 生成可调 PWM 信号(频率 1Hz~10kHz,占空比 10%~90%)作为待测信
号,TIM2 工作在 PWMI 模式,双通道同步测量,OLED 分栏显示 “频率:500Hz | 占空比:30%”。
信号质量评估:计算连续 10 次测量的频率标准差,超过阈值(如 ±5%)时判定为 “信号不稳定”,蜂鸣器提示并记录异常时间(精确到毫秒)。
脉冲宽度统计:长按按键切换至 “脉冲模式”,显示单个脉冲的高电平时间(如 “高电平:200μs”)和低电平时间(如 “低电平:800μs”),适合非周期性信号分析。
13、编码器接口
1)编码器接口(Encoder Interface),可以接收正交编码器(又称为增量编码器)的信号,根据编码器旋转产生的正交信号脉冲,自动由硬件电路控制定时器时基单元中的计数器 CNT自增或自减,从而指示编码器的位置、旋转方向和旋转速度。编码器测速一般应用在电机控制的项目上,使用 PWM 驱动电机,再使用编码器测量电机的速度,然后再使用 PID 算法进行闭环控制。
2)实现编码器接口测速:高精度测速与动态调节:
实时转速监测:定时器 3 工作在编码器模式,解析电机编码器的 A/B 相脉冲,每 10ms 通过中断计算转速(如 “3000 脉冲 / 秒 → 1500r/min”),OLED 显示 “当前转速:1500r/min | 目标:1000r/min”。
方向与速度联动:正转时目标转速范围 500~2000r/min,反转时自动限制在 500~1500r/min(保护机械结构),切换方向时先减速至 0 再反向加速,避免冲击。
14、ADC 模数转换器
1)ADC(Analog-Digital Converter),意即模拟-数字转换器,简称模数转换器。ADC 可以将引脚上连续变化的模拟电压转换为内存中存储的数字变量,建立模拟电路到数字电路的桥梁。
STM32 主要是数字电路,数字电路只有高低电平,没有电压的概念,所以如果想读取电压值,就需要借助 ADC 模数转换器来实现了。ADC 读取引脚上的模拟电压,转换为一个数据存在寄存器里,我们再把这个数据读取到变量里来,就可以进行显示、判断、记录等等操作了。
与 ADC 相对应,从数字电路到模拟电路的桥梁即 DAC(Digital-Analog Convertor),数模转换器。
2)高精度电压采集与展示:
实时监测:通过 ADC1 通道 1(PA1)采集电位器电压,每 100ms 更新一次数据,OLED 分栏显示 “数字值:2048 | 电压:1.65V”,直观呈现转换关系。
环境光控系统:连接光敏电阻,ADC 采集光照对应的电压值,自动调节 LED 亮度(光照越强,LED 越暗),实现节能控制。
3)实现 ADC 多通道转换,在这里我们使用了 4 个 AD 通道,第一个通道还是电位器接在 PA0口。其它三个是通道光敏传感器、热敏传感器、反射式红外传感器。
智能光控模式:光敏传感器检测到光照强度低于 30% 时,自动点亮 LED 补光灯,同时通过热敏传感器监测补光后的环境温度(避免长时间亮灯过热),温度超过 35℃时自动降低 LED亮度。
物体追踪触发:反射式红外传感器检测到物体接近(距离等级≥8 级)时,立即锁定当前电位器电压值(记录触发时的手动参数),并在 OLED 上标记 “触发点”,适合实验数据标记场景。
15、DMA 直接存储器存取
1)DMA(Direct Memory Access)直接存储器存取。DMA 可以直接访问 STM32 内部存储器,包括运存 SRAM(存储变量数组)、程序储存器 FLASH(存储程序)和寄存器等,所以 DMA才能完成数据转运的工作,DMA 通过独立的通道控制器,直接在外设(如 ADC、UART)与存储器(SRAM、FLASH)或存储器之间传输数据。传输过程中 CPU 可执行其他任务,解决了 “外设数据传输占用 CPU 资源” 的瓶颈问题。
2)实现 DMA 数据转运
DMA 内存转运:在 SRAM 中开辟两个数组(源数组与目标数组),通过 DMA 循环传输 1000个半字数据,同时让 CPU 执行 LED 闪烁任务(100ms 周期),对比 “DMA 传输” 与 “CPU循环复制” 时的 LED 闪烁流畅度(DMA 传输时无卡顿)。
3)实现 DMA+ADC 多通道数据转运
DMA+ADC 多通道采集:4 路传感器信号(电位器、光敏、热敏、红外)通过 ADC 扫描模式转换后,由 DMA 直接写入内存缓冲区,CPU 仅在缓冲区满时处理数据(如计算物理量、触发报警),相比中断方式降低 CPU 占用率约 60%。
16、USART 串口通信
1)USART(Universal Synchronous/Asynchronous Receiver/Transmitter)通用同步/异步收发器。USB 转串口上有个型号是 CH340 的芯片,这个芯片可以把串口协议转换为 USB 协议。
USB 口可以插在电脑上,串口的引脚可以和支持串口的芯片接在一起。
2)全双工交互与命令解析,不仅实现基础的 “STM32→电脑” 和 “电脑→STM32” 数据传输,还设计智能命令响应逻辑:
数据回显与解析:STM32 接收电脑发送的字符串(如 “LED_ON”)后,立即回显 “Received:LED_ON”,并执行相应操作(点亮 LED);发送传感器数据时自动添加帧头帧尾,方便电脑端解析。
批量数据传输:支持 “二进制数据包” 模式,一次传输多个传感器数据(如温度、光照、红外值打包为 16 字节数据包),比 ASCII 字符串传输效率提升 40%,适合高频数据上传。
17、I2C 通信协议
1)I2C(Inter IC Bus)是由 Philips 公司开发的一种通用数据总线,目前应用还是非常广泛的,已经有很多模块都使用了 I2C 的协议标准了。比如 MPU6050 模块可以进行姿态测量;OLED 模块可以显示字符、图片等信息等都是使用 I2C 协议通信。
2)MPU6050 是一个 6 轴姿态传感器,可以测量芯片自身 X、Y、Z 轴的加速度、角速度参数,通过数据融合,可进一步得到姿态角,常应用于平衡车、飞行器等需要检测自身姿态的场景,集成 3 轴加速度计(量程 ±2g/±4g/±8g/±16g)和 3 轴陀螺仪(量程±250°/s~±2000°/s),通过 I2C 输出原始测量数据,可用于计算设备的加速度、角速度和姿态角(俯仰角、横滚角),是运动控制、姿态检测的核心组件。
3)实现软件 I2C 读写 MPU6050,获取加速度计和陀螺仪。实现硬件 I2C 读写 MPU6050。同时实现软件 I2C(GPIO 模拟)和硬件 I2C(I2C1 外设)两种通信方式,通过对比两者采集的数据验证可靠性:
软件 I2C:使用 PB6(SCL)、PB7(SDA)模拟时序,适合引脚资源紧张或需要自定义时序的场景,通过延时函数精确控制信号时长(如 SCL 高电平持续 5μs)。
硬件 I2C:使用 I2C1(PB6=SCL,PB7=SDA)外设,由硬件自动生成时序,通信速率可达 400kHz(模式),CPU 占用率比软件方式降低约 70%。
18、SPI 通信
1)SPI(Serial Peripheral Interface)是由 Motorola 公司开发的一种通用数据总线,SPI和 I2C 一样,它们都是通用的数据总线,也都是用于主控和外挂芯片之间的通信。SPI 传输更快,SPI 协议并没有严格规定传输速度,这个传输速度取决于芯片厂商的设计需求,比如使用 W25Q64 存储器芯片的 SPI 时钟频率可达 80 MHz,这比 STM32F1 的主频还要高。
2)W25Q64 芯片
W25Qxx 系列是一种低成本、小型化、使用简单的非易失性存储器,常应用于数据存储、字库存储、固件程序存储等场景。存储器分为易失性存储器和非易失性存储器,易失性存储器一般是 SRAM,DRAM 等,非易失性存储器一般是 E2PROM,Flash 等,所谓非易失性存储器,就是数据掉电不丢失。
3)全功能存储操作与数据验证:
实现 W25Q64 的完整操作链路,确保数据读写的准确性与完整性:
基础操作:包括芯片初始化(读取 ID 确认设备)、扇区擦除(写入前必须擦除,Flash 特性)、页编程(单次最多写 256 字节)、数据读取(随机地址读取)。
数据校验:写入数据后立即回读对比,验证 “写入值 = 读取值”,并通过 CRC 校验(可选)检测长数据块的传输错误,确保存储可靠。
地址管理:将 8MB 空间划分为 “配置区”(0~1KB)、“日志区”(1KB~1MB)、“用户区”(1MB~8MB),便于数据分类存储。
19、WDG 看门狗
1)WDG 看门狗(Watchdog Timer)是一种常见的硬件设备,看门狗可以监控程序的运行状态,当程序因为设计漏洞、硬件故障、电磁干扰等原因,出现卡死或跑飞现象时,看门狗能及时复位程序,避免程序陷入长时间的罢工状态,提高系统的可靠性和安全性,由 APB1 时钟分频驱动,计时精度更高,引入 “窗口时间” 概念 —— 喂狗操作必须在设定的时间窗口内完成(太早或太晚都会触发复位),不仅能检测程序卡死,还能监控程序是否运行过快(如异常进入死循环导致执行周期过短)。
2)实现独立看门狗,实现窗口看门狗,以 IWDG 和 WWDG 协同工作为核心,设计多层次监控机制,突破单一看门狗的功能局限,提升系统可靠性。双狗冗余监控是以两种看门狗分工协作,构建全方位防护:
IWDG 负责全局监控:设置较长超时时间(如 1 秒),由主循环定期喂狗,确保程序未整体卡死(如死循环、中断阻塞)。
WWDG 负责实时任务监控:设置短窗口时间(如 100ms 窗口,50ms~150ms 内喂狗),由高频任务(如传感器采集)喂狗,检测任务是否异常加速或延迟。
【就业方向】
学完后的就业领域涵盖智能家居、无人驾驶、智能手机、通信传输、工业控制、数控设备、航空航天设备、游戏设备、医疗设备等等人工智能以及物联网领域。其中对应的岗位包含嵌入式软件工程师、 嵌入式应用层工程师、嵌入式 Qt 开发工程师、嵌入式 C++工程师、Linux 网络开发工程师、智能机器人研发工程师、计算机视觉工程师、物联网工程师、Android驱动开发工程师、Linux BSP 开发工程师、Linux 系统开发工程师、单片机及芯片开发工程师等等工作岗位,涉及各行各业,就业面特别广。
【师资介绍】
李老师
全栈工程师( JAVA、物联网嵌入式人工智能、web前端、PHP、Python、C++);
中共党员,华北电力大学,硕士,软件工程专业;
曾担任多家互联网公司技术总监、多年大学教师经历;
曾带领团队研发政府及银行项目、百事集团项目、学浪云自研产品等大型项目;
曾在期刊上发表著作;
冷老师
JAVA工程师;
山东大学硕士;
曾有多年大学教师经历,讲课水平高,多次获得青年教师教学比赛奖杯;
曾指导学生在大赛中荣获一等奖、三等奖;
“冻龄女神”,学生就业把关合理、高效,待人真诚,深受企业和学员认可。
张老师
全栈开发工程师(物联网嵌入式人工智能、JAVA全栈工程师);
毕业于山东农业大学,信息与技术科学专业;
曾担任多家互联网公司技术负责人、多年北京地区教师经验;
讲课娴熟,做事踏实;
主攻 Java,曾参与研发政府及银行项目、百事集团项目、学浪云自研产品等大型项目。
【教学环境】
走廊
休闲区
教学环境
住宿环境
用餐环境
生活配备
周边环境
【机构荣誉】
中国3.15诚信品牌
中国计算机协会会员单位
2022年度IT职业教育行业标杆品牌

南京校区
南京校区
南京校区
南京校区




正规学校
助学补贴
优质服务



