1. 这份清单为什么值得你花15分钟认真读完
单片机毕设最让人头疼的不是写代码,而是选题——刚打开学校毕设系统,发现“基于STM32的智能小车”已经排在第37位,“温湿度监控系统”同组6人撞了4个。去年我带过3个学院的毕设指导,翻过217份开题报告,83%的学生卡在第一步:选题不落地、查重高、硬件买不起、答辩被问住就哑火。这份2027届选题清单,不是网上拼凑的“50个热门题目”,而是按真实产线逻辑重构的——每个题都拆解到“能用什么芯片实现”“传感器怎么接”“毕业答辩时老师必问的3个技术点”“有没有现成的PCB参考图”“代码框架是否开源可复用”。比如“农业大棚环境监控系统”,很多同学直接套用DHT11+ESP32发微信,但实际答辩时老师会问:“光照传感器选BH1750还是TSL2561?为什么?你的ADC采样精度够不够区分阴天和多云?”——这题在清单里对应的是编号A-08:基于STM32F103C8T6的多光谱土壤墒情边缘节点(含LoRa自组网与本地决策),它明确要求用ADS1115做16位ADC采集土壤电导率,用SX1278模块实现3km无基站通信,并内置一个轻量级状态机处理“干旱→灌溉→回湿”闭环逻辑。再比如医疗类,避开“人脸识别”这种泛泛而谈的标题,直接给到编号M-12:基于STC8H8K64U的便携式心电信号前端调理与QRS波实时检测模块,核心是运放电路设计(TI INA128参数计算)、50Hz陷波器硬件实现(RC-LC混合拓扑)、以及用查表法在8KB Flash里跑完R-peak识别——这些才是答辩时能亮出实物、讲清原理的硬货。清单按智能家居/农业/工业/医疗四大类划分,每类12~13个题,全部标注了芯片型号(STC89C52/STM32F407/ESP32-S3等)、传感器型号(SHT30/BME280/AS7341等)、通信协议(Modbus RTU/LoRaWAN/UART AT指令)、关键算法(卡尔曼滤波/滑动窗口阈值/有限状态机)、以及是否提供配套资料(原理图/PCB/Keil工程/串口调试工具)。不搞虚的,比如“智慧农业边缘网关”这种热词,在清单里拆成了编号A-19:支持Modbus TCP转LoRa的双核边缘网关(GD32E507 + SX1262),明确告诉你GD32E507主核跑FreeRTOS处理协议栈,协处理器用GD32F303做LoRa射频校准,连SX1262的寄存器配置顺序都标在备注里。所有题目均通过中国知网本科毕设库近3年查重预筛(重复率<12%),且硬件BOM成本控制在300元以内(含开发板+传感器+外壳),学生自己淘宝就能配齐。如果你正在为选题焦虑,或者导师说“这个太简单/太难/没创新”,建议先看完整个清单再决定——它不是给你一个名字,而是给你一条能走通的路。
2. 选题设计底层逻辑:为什么这50个题能避开撞车、保证落地
2.1 撞题根源不在“创意”,而在“技术栈错配”
很多同学选题失败,根本原因不是想法不好,而是把“智能家居”理解成“手机APP控制LED灯”。我拆解过近5年236份撞题毕设,发现87%的重复集中在三个技术洼地:一是用51单片机跑WiFi(实际ESP8266 AT指令响应延迟大,无法做实时控制);二是用Arduino Uno做图像识别(OpenCV移植后内存溢出,只能跑静态图片);三是用STM32F103做语音识别(Flash不足存模型,必须外挂SPI Flash,但学生常忽略QSPI时序配置)。这份清单彻底规避这些坑,所有题目按“芯片能力边界”反向设计。比如智能家居类,放弃“语音控制窗帘”这种伪需求,转而设计编号S-05:基于ESP32-S3的本地化语音唤醒+红外学习网关(离线关键词识别+NEPO红外码库)——这里强制要求用ESP32-S3的ULP协处理器做低功耗唤醒,主核运行ESP-ADF框架,红外学习部分用NEPO开源库(已适配STM32/ESP32双平台),避免学生自己写红外协议解析导致NEC/RC5混淆。再如工业类,不碰“工业机器人视觉定位”这种需要GPU的题目,而是给出编号I-07:基于STM32H743的振动信号边缘FFT分析模块(含AD7768-1 24位ADC与硬件FFT加速),明确限定用AD7768-1的PGA增益档位(×1/×2/×4/×8)匹配不同振动传感器输出,FFT点数固定为1024点(避免学生盲目设4096点导致内存崩溃),结果通过DMA双缓冲传给LCD显示频谱图——整个链路在H743的1MB RAM内闭环,无需上位机。这种设计让每个题都有清晰的技术锚点,杜绝“看着像创新,实则抄作业”。
2.2 落地性=可验证性+可展示性+可答辩性
毕设不是科研论文,核心是让老师看到“你确实动手做了”。所以清单所有题目强制包含三个验证层:
第一层:硬件可测性——每个传感器接口都标注实测电压范围。例如农业类编号A-03:基于STC15W4K56S4的水产养殖溶解氧监测节点(RS485组网+温度补偿),要求DS18B20测水温(±0.5℃)、DO电极输出0~4V(需用LM358做电压跟随防负载效应)、RS485用MAX485芯片并标注终端电阻位置(120Ω贴片电阻焊在A/B线末端)。这样答辩时老师用万用表一测,立刻验证你接线正确。
第二层:软件可演示性——拒绝“后台运行”的黑盒程序。所有题目要求至少一个交互界面:或是OLED菜单(如编号S-11:基于STM32F407的燃气泄漏多级预警系统(MQ-5+MQ-9双气敏+蜂鸣器分级驱动),OLED显示当前浓度、阈值、预警等级);或是串口调试助手可读日志(如编号M-09:基于GD32F303的电子听诊器前端(MAX9814增益调节+实时FFT频谱),串口输出“FFT Peak: 125Hz, Amp: 32mV”格式数据)。
第三层:答辩可解释性——每个题预埋3个技术深挖点。以工业类**编号I-14:基于GD32E230的电机电流谐波分析仪(INA226采样+滑动DFT算法)**为例,深挖点包括:① INA226的BUS_VOLTAGE寄存器为何要读两次再取平均(消除I2C总线噪声);② 滑动DFT相比FFT在资源受限下的优势(无需复数运算,仅需2N次乘加);③ 如何用TIM1的PWM输出模拟50Hz工频信号做校准(示波器验证相位误差<1°)。这些点不是考倒学生,而是证明你真正理解电路与算法的耦合关系。
2.3 四大领域差异化设计:从场景痛点出发,而非堆砌热词
- 智能家居:聚焦“本地化”与“低功耗”。避开云平台依赖,强调边缘决策。如编号S-07:基于nRF52832的蓝牙Mesh门窗磁+震动双模传感器(超低功耗待机<0.5μA),要求用nRF52832的PPI(Programmable Peripheral Interconnect)硬件连接GPIO与TIMER,实现“震动触发→唤醒→采样→Mesh广播→休眠”全流程无需CPU干预,实测电池续航2年(CR2032)。
- 农业:紧扣“低成本”与“抗干扰”。大棚环境潮湿、电磁干扰强,所以编号A-15:基于STM32F072的土壤pH值在线校准模块(三电极结构+自动温度补偿),强制使用PT1000测温(非DS18B20,因水汽易致DS18B20漂移),pH电极信号用AD8605做仪表放大器(增益100,共模抑制比>100dB),校准流程固化在Bootloader中,插USB即可一键校准。
- 工业:突出“可靠性”与“协议兼容”。工厂设备不能停机,所以编号I-02:基于STM32F767的Modbus RTU从站异常检测模块(CRC校验+超时重传+状态LED指示),要求用HAL库的HAL_UARTEx_ReceiveToIdle_IT接收不定长帧,CRC16用查表法(256字节ROM占用),超时用TIM6中断判断(非HAL_Delay阻塞),状态LED用RGB三色编码:绿=正常通讯、黄=CRC错误重传、红=连续3次超时报警。
- 医疗:严守“安全性”与“可追溯”。生物信号处理容错率极低,因此编号M-04:基于STC8H3K64S2的心电导联脱落检测电路(右腿驱动RLD+AD8221仪表放大),必须实现RLD电路(OP07搭建,反馈电阻10MΩ),AD8221增益设为100(G=1+49.4kΩ/494Ω),导联脱落判断用“差分信号峰峰值<50μV且持续1s”逻辑,结果通过UART发送“LEAD_OFF: I,II,III”字符串——所有参数均有IEC 60601-2-27标准依据。
3. 核心细节解析:每个类别里的“王牌题”深度拆解
3.1 智能家居类:本地化是王道,别再迷信APP控制
智能家居毕设最大误区是追求“手机APP控制”,结果陷入安卓开发、服务器部署、HTTPS证书等与单片机无关的泥潭。真正的单片机价值在于本地感知与决策。清单中编号S-13:基于ESP32-C3的Zigbee 3.0协调器网关(支持Philips Hue/OSRAM灯泡直连)就是典型破局题。它不接云,只做Zigbee协议转换:ESP32-C3作为协调器,运行Z-Stack Linux Gateway(TI官方SDK),通过UART与PC端Zigbee分析仪通信。关键细节在于Zigbee信道选择——国内允许2.4G频段只有11~26信道,但Wi-Fi常用1/6/11信道,所以本题强制要求动态扫描(ZDO_Mgmt_NWK_Disc_req),优先选用信道25(Wi-Fi干扰最小),并在启动时打印“Zigbee Channel: 25, RSSI: -62dBm”。硬件上,ESP32-C3的GPIO33必须接CC2531的RESET引脚(非普通IO,需满足CC2531复位时序),PCB布局要求RF走线长度<15mm且包地。代码层面,Z-Stack的zclGeneral_ClusterCommandHandler函数需重写,当收到Hue灯泡的“Move to Level”命令时,不转发给Zigbee网络,而是直接用ESP32-C3的LED PWM控制本地LED亮度(模拟调光效果),这样答辩时老师问“如果Zigbee断连怎么办”,你能立刻演示本地降级模式。另一个王牌题编号S-09:基于STM32L432KC的无源红外人体存在检测(PIR+AMG8833热成像融合),破解了传统PIR误触发难题。AMG8833(8×8热成像)用I2C接入,但STM32L432KC的I2C1时钟必须设为100kHz(AMG8833最大支持),且每次读取前需写入0x00寄存器触发帧捕获。融合逻辑是:PIR触发后,AMG8833启动,若热成像区域中心3×3像素温差>2℃且持续0.5s,则判定为真人体——这比单纯PIR可靠10倍。实测在空调直吹环境下,PIR误报率32%,融合后降至1.7%。所有代码用CubeMX生成,HAL库版本锁定为1.16.0(避免新版本I2C HAL_BusyFlag清除逻辑变更导致死锁)。
3.2 农业类:低成本不等于低性能,抗干扰设计是核心
农业场景的致命伤是环境恶劣:大棚高湿(RH>90%)、粉尘、电源波动。很多学生用普通PCB做节点,一周后铜皮氧化失效。清单中编号A-11:基于STM32F103RCT6的农业气象站(BME280+SHT30+AS3935雷电传感器),PCB设计就体现专业度:BME280的I2C线路全程包地,SHT30的SDA/SCL线宽0.3mm(防湿气爬电),AS3935的ANT引脚用50Ω阻抗线(长度精确28mm,匹配FR4板材εr=4.2)。更关键的是电源设计——所有传感器供电不直接接3.3V,而是经TPS7A20 LDO二次稳压(输入5V,输出3.3V±1%),TPS7A20的EN脚接STM32的PA0,启动时先拉高EN,延时10ms再初始化I2C,避免传感器上电时序紊乱。软件上,BME280的湿度读数需用SHT30校准:每小时用SHT30读一次湿度,若偏差>3%,则更新BME280的湿度补偿系数(存入STM32的Option Bytes)。这个细节让气象站数据可信度提升,答辩时老师用手持式温湿度计对比,误差<1.5%。另一个高价值题编号A-20:基于GD32F303VBT6的智能灌溉控制器(土壤EC+PH+水分三参数闭环),突破点在执行机构。不用继电器(寿命短、火花干扰),改用AOZ1280CI DC-DC驱动水泵(输入12V,输出5V@2A),AOZ1280CI的FB引脚接STM32的DAC1,通过改变DAC输出电压(0~3.3V)线性调节水泵转速(0~100%)。闭环算法用改进型PID:当EC值低于阈值,PID输出驱动水泵;但若PH值同时超标,则限制PID输出上限(防酸碱中和过冲)。代码中PID参数Kp/Ki/Kd存于EEPROM,掉电不丢失,且提供串口指令“SET_PID 1.2,0.05,0.8”在线修改——这才是工业级控制器该有的样子。
3.3 工业类:协议是门槛,时序是生死线
工业现场最怕“通讯丢包”,根源常在时序设计。清单中编号I-10:基于STM32F407ZGT6的Modbus TCP从站(支持100个寄存器+心跳包),直击痛点。很多学生用LwIP栈,但没处理TCP粘包。本题强制要求:① 接收缓冲区设为256字节(Modbus TCP帧最大256字节);② 用HAL_ETH_RxPacketSizeGet获取实际长度,而非等待固定字节数;③ 心跳包用独立TIM2定时器(1s周期),发送0x00000000空帧,若连续3次无应答则置位ERROR_LED。更关键的是寄存器映射:保持型寄存器(4x00001)映射到SRAM的0x20000000起始地址,但STM32F407的SRAM只有192KB,所以本题规定用FSMC扩展外部SRAM(IS61LV25616AL),将寄存器映射到0x60000000——这样即使100个寄存器(每个2字节)也只占200字节,余量充足。另一个硬核题编号I-18:基于STM32H750IBK6的工业相机触发控制器(Basler ace USB3.0同步信号生成),解决Basler相机丢帧问题。Basler ace要求触发信号上升沿宽度≥2μs,下降沿宽度≥1μs,周期可调。本题用STM32H750的TIM1输出PWM,但普通PWM无法满足微秒级精度,所以启用TIM1的“互补通道+死区插入”功能:CH1输出高电平,CH1N输出低电平,死区时间设为1.5μs(TIM1->BDTR寄存器配置),这样CH1N的下降沿比CH1上升沿晚1.5μs,自然形成2μs高脉宽。实测Basler ace在100fps下丢帧率从12%降至0%。代码中TIM1时钟设为200MHz(H750超频),ARR=199(200分频),CNT=0时CH1翻转——所有参数经示波器实测验证。
3.4 医疗类:安全是底线,信号链是生命线
医疗设备对信号完整性要求苛刻。清单中编号M-15:基于STM32G474RE的便携式血氧仪(MAX30102+MAX30110双传感器融合),重点在光学设计。MAX30102的LED驱动电流必须严格控制:红光(660nm)设为12.5mA,红外光(850nm)设为25mA(因组织穿透力不同),电流值由MAX30102的LED1_PA寄存器(0x09)和LED2_PA寄存器(0x0A)设置,但学生常忽略寄存器写入顺序——必须先写LED1_PA,再写LED2_PA,否则LED2电流无效。本题要求用STM32G474的DAC1输出2.5V基准电压给MAX30102的INT引脚,确保中断触发精准。算法上,不直接算SpO2,而是先用滑动窗口(128点)滤除运动伪影,再用AC/DC比值法计算:SpO2 = 110 - 25 × (AC_red/DC_red) / (AC_ir/DC_ir)。另一个关键题编号M-06:基于STC8H8K64U的医用输液泵步进电机控制器(ULN2003A驱动+堵管压力检测),堵管检测是核心。用MPX5700GP压力传感器(0~70kPa),但其输出0~50mV需经AD620放大100倍(G=1+49.4kΩ/494Ω),AD620的REF引脚接STM32的VREF+(1.2V),使输出0~5V。堵管判断逻辑:连续5次采样压力>45kPa且流量传感器(YF-S201)脉冲频率<1Hz,则触发蜂鸣器报警并停止电机。代码中压力采样用ADC1的注入通道(优先级高于规则通道),确保不被其他ADC任务打断。所有医疗相关题目,PCB必须做安规设计:高压区(12V泵电源)与低压区(3.3V单片机)间距>8mm,且用槽孔隔离——这是IEC 60601-1的基本要求。
4. 实操过程全记录:从选题到答辩的6个关键节点
4.1 芯片选型:别被“高性能”迷惑,看懂数据手册第3页
选题确定后,第一步是芯片选型。很多学生直接选“STM32F407”,却不知其ADC采样率仅2.4MSPS,而工业振动分析需10MSPS以上。清单所有题目已锁定芯片,但你需要验证其可行性。以**编号I-07(STM32H743振动分析)**为例,查数据手册第3页“Key Features”:
- ADC:3×16-bit,最高3.6MSPS(注意:是3个ADC同时工作时的总速率,单个ADC最高1.8MSPS)
- DSP指令:支持单周期MAC(关键!FFT需大量乘加)
- RAM:1MB(足够存1024点复数FFT结果)
- 外设:有FMC(可接AD7768-1的SPI接口)
再查AD7768-1手册,其SPI时钟最高20MHz,而STM32H743的SPI1最高支持60MHz,完全满足。但若选STM32F407,其SPI1最高37.5MHz,虽也够用,但F407的RAM仅192KB,存1024点复数FFT需8KB(实部+虚部各4KB),余量不足。这就是为什么H743是唯一选择。另一个案例:编号M-12(STC8H8K64U心电检测),STC8H8K64U的ADC是12-bit,但心电信号幅度仅1mV,需放大1000倍,12-bit分辨率对应2^12=4096级,满量程5V时分辨率为1.22mV,刚好覆盖心电峰峰值(约2mV),若用8-bit单片机(256级),分辨率达19.5mV,无法识别细微波形。所以STC8H8K64U的12-bit ADC是硬性门槛。
4.2 传感器接入:接线只是开始,电气特性才是关键
传感器不是“插上就行”。以**编号A-08(多光谱土壤墒情)**的AS7341光谱传感器为例:
- 供电:AS7341需3.3V,但其I2C总线电平为1.8V(非3.3V),所以必须用TXS0102电平转换器,而非简单分压。
- 时序:AS7341的初始化需严格按手册:先写0x80=0x00(复位),再写0x81=0x01(进入激活模式),最后写0x82=0x01(启动测量)。若跳过复位,传感器可能返回0xFF。
- 光学:AS7341的11个通道需校准,本题要求用白板反射光做基准,读取CH0~CH10值,存入EEPROM,后续测量值均除以基准值归一化。
再如编号S-05(ESP32-S3红外学习),NEPO红外库要求红外接收头(VS1838B)输出信号高电平有效,但VS1838B默认低电平有效,所以电路中必须加反相器(74HC04),或在代码中取反。这些细节不查手册绝不知道,而清单已在备注栏标明。
4.3 通信协议:Modbus不是背口诀,是读懂寄存器映射
Modbus是工业毕设高频考点,但学生常止步于“03功能码读保持寄存器”。以**编号I-02(Modbus RTU从站)**为例,实操要点:
- 帧结构:[地址][功能码][起始地址Hi][起始地址Lo][寄存器数Hi][寄存器数Lo][CRC Lo][CRC Hi]
- CRC16计算:用查表法(256字节表),初始值0xFFFF,多项式0xA001,低位先送。
- 关键寄存器:保持寄存器(4x00001)映射到STM32的uint16_t holding_reg[100]数组,但Modbus地址00001对应holding_reg[0],即地址减1。
- 异常响应:若读寄存器数>100,返回[地址][83][02][CRC](02=非法数据地址)。
本题要求用HAL_UART_Receive_IT接收,但接收缓冲区必须设为256字节(Modbus RTU帧最长256字节),且用HAL_UARTEx_ReceiveToIdle_IT检测帧结束(空闲线中断),避免超时判断不准。实测中,若波特率9600,空闲时间设为3.5字符时间(≈3.6ms),用TIM6定时器实现。
4.4 算法实现:从公式到代码,中间隔着100行调试
以**编号M-15(血氧SpO2计算)**的AC/DC比值法为例:
- 理论公式:R = (AC_red/DC_red) / (AC_ir/DC_ir),SpO2 = 110 - 25×R
- 但AC分量需滤波:用滑动窗口(128点)求均值,DC分量用移动平均滤波(窗口512点)
- 代码陷阱:AC_red = max(adc_red) - min(adc_red),但max/min需在稳定周期内计算(如1s内),否则运动伪影导致误判。
本题要求用STM32G474的DMA双缓冲采集ADC,ADC1配置为连续转换模式,采样时间设为13.5周期(保证12-bit精度),DMA传输到buffer1和buffer2交替填充。算法在buffer切换中断中执行,避免主循环阻塞。实测中,若窗口设为64点,SpO2波动±5%,设为128点后波动<±1%。
4.5 PCB设计:不是画线,是电磁兼容的艺术
所有题目提供参考PCB,但学生常忽略EMC设计。以**编号S-13(ESP32-C3 Zigbee网关)**为例:
- RF区:CC2531的ANT引脚到PCB边缘距离<5mm,周围禁布数字线,包地铜皮开槽隔离。
- 电源:ESP32-C3的VDD33和VDDA必须分别去耦,VDD33用10μF+100nF,VDDA用22μF+1μF(钽电容+陶瓷电容)。
- 地平面:数字地与模拟地在单点连接(0Ω电阻),连接点靠近ADC参考电压源。
- 尺寸:PCB尺寸严格按ESP32-C3模块规格书(18×25.5mm),否则外壳无法安装。
这些细节决定成品稳定性,清单PCB文件已按此规范设计,学生可直接打样。
4.6 答辩准备:老师不问“你做了什么”,而问“你为什么这么做”
答辩是终极考验。以**编号A-15(土壤pH校准)**为例,预判老师问题:
- Q1:“为什么用PT1000不用DS18B20?”
A:“DS18B20在潮湿环境中易受水汽影响,长期漂移达±0.5℃;PT1000是铂电阻,稳定性高,且封装为不锈钢探头,IP68防护。” - Q2:“pH电极信号为何用AD8605不用LM358?”
A:“LM358输入偏置电流100nA,pH电极内阻>10^9Ω,100nA电流在10^9Ω上产生100V压降,远超电源电压;AD8605偏置电流1pA,压降仅1mV,符合要求。” - Q3:“校准流程如何保证精度?”
A:“校准用标准缓冲液(pH4.01/7.00/10.01),三点拟合曲线,斜率误差<2%,截距误差<5mV,结果存入Option Bytes,掉电不丢失。”
所有题目均附《答辩问答指南》,列出3个必问题及标准答案,助你从容应对。
5. 常见问题与避坑指南:那些没人告诉你的“潜规则”
5.1 硬件采购:淘宝链接不是万能,参数才是生死符
学生常按淘宝标题买器件,结果不匹配。例如编号I-14(INA226电流采样),淘宝搜“INA226模块”,有几十种,但必须选“带分流电阻”的版本,且分流电阻阻值需为0.005Ω(5mΩ),功率1W。若买到0.01Ω版本,同样电流下压降翻倍,超出INA226的输入范围(±81.92mV)。又如编号S-07(nRF52832传感器),nRF52832有QFAA(48引脚)和QFAB(48引脚但Flash不同)两种封装,必须选QFAA(512KB Flash),QFAB仅256KB,跑Mesh协议栈不够。清单所有器件标注具体型号:INA226AIDRCT、nRF52832-QFAA、STC8H8K64U-36I-LQFP48,采购时直接复制型号搜索。
5.2 开发环境:Keil不是唯一,版本冲突要命
STM32项目最常见问题是Keil版本与HAL库不兼容。例如编号I-07(STM32H743),若用Keil MDK 5.27,其ARM Compiler 5不支持H743的DSP指令,必须用ARM Compiler 6(Keil 5.36+)。但Compiler 6的__packed关键字语法不同,HAL库需升级到1.10.0以上。清单明确要求:Keil MDK 5.38 + STM32CubeMX 6.12 + HAL库 1.10.0。另一个坑:编号M-12(STC8H8K64U),STC-ISP烧录软件新版(v6.89)不支持Win11,必须用v6.85,且串口驱动需装CH340 V3.4,V3.5驱动会导致烧录失败。这些细节清单已标注在“开发环境”栏。
5.3 代码调试:逻辑没错,时序错了
很多学生代码编译通过,但硬件不工作,根源在时序。例如编号A-20(GD32F303灌溉),AOZ1280CI的EN引脚需高电平使能,但GD32F303的GPIO输出电流仅8mA,而AOZ1280CI的EN引脚输入电流需10mA,直接驱动会拉低电压。必须加三极管(S8050)驱动,基极限流电阻1kΩ。又如编号S-05(ESP32-S3红外),NEPO库要求红外接收头输出脉宽精度±10μs,但ESP32-S3的GPIO中断响应有抖动,所以必须用RMT(Remote Control)外设,而非普通GPIO中断。RMT可硬件捕获脉宽,精度达12.5ns。这些时序陷阱,清单在“关键代码片段”栏给出解决方案。
5.4 查重规避:不是改标题,是重构技术路径
毕设查重高,往往因技术路径雷同。例如“温湿度监控”遍地都是DHT11+ESP32。清单编号A-03(水产养殖DO监测),用DS18B20+DO电极+RS485,技术路径完全不同:DO电极需恒电位电路(OPA2333搭建),RS485用MAX485且必须加120Ω终端电阻,软件用Modbus RTU协议栈。这样即使查重系统扫到“温湿度”,也找不到“DO电极”“RS485终端电阻”等关键词。实测该题在中国知网本科库查重率9.2%。另一个技巧:编号M-04(心电导联脱落),不写“心电图”,而写“导联脱落检测”,核心算法用“差分信号峰峰值阈值法”,关键词变为“导联脱落”“峰峰值”“阈值判断”,避开“ECG”“心电图”等高频词。
5.5 成果展示:答辩不是念PPT,是亮出“可触摸的证据”
老师最看重实物证据。清单所有题目要求:
- 必须有PCB实物照片(带丝印,清晰可见芯片型号)
- 必须有串口调试截图(显示实时数据,非静态图)
- 必须有关键波形图(示波器拍的PWM、I2C时序、ADC采样波形)