登录社区云,与社区用户共同成长
邀请您加入社区
最终还有一个报错,报错的问题是symbol systemInit符号在main和system_stm32f10x同时定义了问题。点击邮箱图标然后搜索SystemInit,发现在system_stm32f10x.c也有写了一个SystemInit函数,也就是说system_stm32f10x.c与main.c都存在SystemInit函数,多次重复了,那么我就删除掉main.c里面的SystemIn
本文设计了一种基于STM32G031微控制器的信号失真度测量装置。该系统通过PWM结合低通滤波器生成频率(DC∼20KHz)和幅度(10mV∼500mV)可调的正弦波信号,采用ADC采样和FFT算法计算总谐波失真度(THD)。装置具有OLED显示屏实时显示波形、频谱及失真度曲线,支持按键和旋转编码器操作。实验表明系统能准确测量低失真信号,小信号输出时存在偏差,通过优化PWM和FFT算法提升了性能。
ST公司提供的标准软件库,比如我们想要使用PA1这个IO口,PA1都有相应的别名都给我们命名好了,只需要去用就行,包含了STM32芯片所有寄存器的控制操作,我们直接学习如何使用ST标准库,会极大地方便控制STM32芯片。而MCU层这些功能都是由stm32f10x.h寄存器控制它们,而寄存器呢又被用户层控制,如果我们用寄存器去控制我们的IO口去点灯,工程量巨大,需要查询每一个寄存器地址,然后在各个寄
本篇介绍了一个轻量级的软件定时器/计数器库,基于链表实现,支持动态创建和销毁定时器。适用于嵌入式系统(如 STM32、AVR、ESP32 等平台),可在中断服务程序中调用以实现毫秒级精确定时。
维度内容事件嵌入式AI/TinyML部署工程实践成熟化核心技术STM32Cube.AI + INT8量化 + CMSIS-DSP特征提取最大陷阱数据漂移、内存对齐、边界量化精度推荐平台STM32H7A3(性价比)、STM32N6(高性能)、MAX78000(超低功耗)值得关注原因工业测试与质检场景对实时离线AI推理需求激增,2026年工具链已达生产可用。
EXTI与TIM都用NVIC传导中断信号不同的是:EXTI是外部中断,TIM为内部中断。
I2C通信是总线型的,一个设备发送信息,其他设备都可以接收到,类似于在教师中老师说一句话,同学们都能听到,设备发送信息需要加上地址,对应地址的设备会与主机建立通信,而其他设备不予理会。就好像是老师说::“xxx,起来回答问题”,这句话所有同学都能听到,但只有对应的同学会站起来回答问题。I2C通信更特别一些,这里面分为主机和从机,只有主机才能主动发送信息,给一个设备发送数据(写数据)或者要求设备给自
GPIO有八大模式,本次学习将会深入了解这八大模式首先可以找一下官方手册中有一本STM32中文参考指南在STM32中文参考指南的第105页,是关于GPIO的功能描述而其中关键则是这样一张结构图,这张图描绘了每个GPIO口内部的基本结构结构图最右侧是I/O引脚,也就是我们在芯片上看到的小铁丝,STM32芯片就是靠它们与我们开发板上的其他器件进行连接,连接的线路可以在开发板表面隐约看到.
本设计是基于STM32的个人健康助手设计,主要实现以下功能:温度监测:利用DS18B20温度采集模块,实时采集环境温度或用户体温。血氧与心率监测:通过集成的血氧检测模块,能够同时测量用户的血氧饱和度和心率。独立按键控制:独立按键模块,允许用户进行界面切换、设置温度、心率、血氧的阈值,以及开启或关闭报警功能。OLED显示屏:高清OLED显示屏用于直观显示当前的温度、心率、血氧值以及预设的阈值、报警状
本设计是基于STM32的智能输液监控系统,主要实现以下功能:1.可通过液位传感器检测当前液位2.液位过低蜂鸣器报警3.可自动调节输液速度4.可通过按键手动调节输液速度5.可通过蓝牙无线调节输液监控系统
本文深入分析STM32高速外部时钟(HSE)与低速外部时钟(LSE)的核心差异与应用场景。HSE(4-26MHz)适用于USB通信、高频PLL、精确定时等对精度和速度要求严苛的场景;LSE(32.768kHz)则是RTC、低功耗定时和待机唤醒的必选项。通过功耗趋势图揭示主频与能耗的线性关系,提出"够用即可"的降频原则,并给出混合动力模式等进阶优化方案。最后以决策树形式总结选型逻辑,强调嵌入式设计应
1.程序代码放在哪2.变量放在哪3.cpu上电后先执行谁程序运行的本质就是:把“该放 Flash 的东西”放到 Flash,把“该放 RAM 的东西”安排好,然后 CPU 从复位入口开始跑,先做初始化,再跳进main()
本文介绍了一个基于STM32的智能摄像头巡检系统实战项目。系统以STM32F103为核心,通过GPIO控制LED流水灯和蜂鸣器,模拟AI人脸识别和MQTT通信功能。项目包含硬件连接指南、C语言控制代码和前端网页界面,实现了设备控制、状态监控等完整功能。文章详细说明了系统架构、接线方法、代码实现和演示效果,适合嵌入式初学者作为入门进阶的实战案例,帮助掌握STM32硬件控制和前端交互开发的基础技能。
ADC()模拟数字转换器ADC可以将引脚上连续变化的模拟电压转换为内存中存储的数字变量,建立模拟电路到数字电路的桥梁STM32是数字电路,只有高低电平,没有几V电压的概念,想读取电压值,就需要借助ADC模数转换器了。DAC则是相反的功能。
本文深入解析Keil ARMCC工具链中的链接文件(.sct),这是嵌入式开发中控制代码和数据内存布局的核心配置文件。文章从链接文件的基本概念入手,详细讲解了加载域(LR)和执行域(ER)的区别,+RO/+RW/+ZI三种段类型的含义,以及链接器自动生成的代码(__scatterload, __main)的工作原理。 主要内容包括: 链接文件在编译流程中的关键作用 分散加载文件的核心语法与配置方法
本文深入解析STM32F407启动文件(startup_stm32f407xx.s),详细剖析从复位到main()函数的完整流程。文章首先介绍启动文件的作用与结构,重点分析向量表的内存布局与硬件加载机制,讲解Reset_Handler的工作流程,包括堆栈设置、.data/.bss段初始化(Keil环境下由链接器自动完成)等关键步骤。同时探讨了默认中断服务程序、内存布局、启动模式选择等核心内容,并对
FSMC(Flexible Static Memory Controller,灵活的静态存储控制器)是STM32微控制器(MCU)中一个的核心外设。通过 FSMC,STM32可以通过FSMC与SRAM、ROM、PSRAM、Nor Flash和NandFlash存储器的引脚相连,从而进行数据的交换。要注意的是,FSMC 只能扩展静态的内存,不能是动态的内存,比如 SDRAM 就不能扩展。
本项目基于STM32开发了一款WiFi远程温控风扇系统,具备自动温控和远程手动两种模式。系统采用DHT11温湿度传感器实时采集环境数据,通过ESP8266 WiFi模块实现远程通信,可根据温度自动调节风扇转速或接收手机客户端指令。硬件部分包含STM32主控、传感器模块、继电器和液晶显示屏等。软件采用模块化设计,包含初始化、温度采集与显示、PWM调速等核心功能。系统实现了智能化环境温度调控,创新性地
本文为I2C通信学习笔记,系统介绍I2C总线原理与应用。I2C采用SCL、SDA双线通信,为同步半双工协议,支持应答机制与多设备挂载。硬件上采用开漏输出+上拉电阻结构,具备防短路、线与特性等优势。协议包含起始、终止、字节传输及应答时序,地址为7位地址加1位读写位,读写流程清晰。内容涵盖软件I2C实现与STM32硬件I2C对比,对比了二者在CPU占用、稳定性等方面的差异,并结合MPU6050实例解析
本文整理了100+个STM32和C51单片机毕业设计选题,涵盖智能家居、物联网、医疗监控、农业大棚等多个领域。选题标准注重难度适中、工作量达标且具有创新点,适合本科毕设需求。文章提供了选题建议,强调要根据自身技术能力合理选择题目,避免选题过难或过简单。同时展示了学长已完成的部分项目案例,为读者提供参考。对嵌入式开发或毕设选题有疑问的同学可咨询学长获取指导。
在STM32H7微控制器上成功部署MobileNetV2图像分类模型,实现12FPS实时推理。项目使用STM32H723ZGT6(550MHz Cortex-M7)、OV5640摄像头和SPI LCD,通过X-CUBE-AI工具链将量化后的MobileNetV2_0.35模型(输入128×128 uint8,输出15类float)转换为C代码。关键优化包括:选择宽度乘数α=0.35减小模型体积(6
本文提供了丰富的STM32和C51单片机毕业设计选题,涵盖智能家居、医疗健康、农业监测、交通控制等多个领域。选题标准注重实用性、创新性和工作量适中,适合本科生完成。文章强调选题需结合自身技术能力,避免过难或过简,并提供学长指导服务。同时展示了多个实际项目案例,帮助学生在物联网、嵌入式系统等方向找到合适的毕业设计题目。
本文介绍了一种基于单片机的姿态检测与可视化系统设计方案。系统采用MPU6050惯性传感器采集加速度和角速度数据,通过Arduino单片机进行数据处理,利用卡尔曼滤波算法实现姿态解算,最终在Processing平台上完成三维可视化展示。文章详细阐述了MPU6050传感器的工作原理、I2C通信协议、数据采集方法以及姿态解算算法,重点讲解了Roll角和Pitch角的计算方法。该系统具有体积小、成本低、实
本文围绕凌霄运动源码的 STM32F407 工程,系统梳理了项目的整体结构、任务调度方式、控制流程与二次开发入口。文章重点分析了 `main.c`、`Ano_Scheduler.c`、`My_control.c`、`coordinate_control.c`、`mid360_receive.c`、`Drv_AnoOf.c`、`Drv_Uart.c` 等关键模块,说明飞行任务如何从初始化、调度执行到
直接存储器存取 (Direct Memory Access, DMA) 是一种无需CPU干预,直接在存储器和外设之间或存储器和存储器之间进行高速数据传输的机制。其主要作用是解放CPU,让CPU可以专注于计算或控制任务,而将耗时的数据搬运工作交给DMA完成。独立通道:通常有12个独立可配置的通道(如DMA1提供7个通道,DMA2提供5个通道)。高效传输:数据传输速率高,不占用CPU时间。多种触发:支
本文以 STM32MP135F-DK 为例,介绍从硬件连接、STM32CubeProgrammer 烧录 OpenSTLinux 镜像、首次启动、串口与网络配置,到 Ubuntu/WSL 下 SDK 安装、交叉编译、程序部署和 systemd 自启动的完整流程,并说明 Starter、Developer、Distribution Package 的区别,总结版本混用、供电不足、串口缺失等常见问题,
摘要:本文针对STM32初学者选择开发板的问题给出建议。指出初学者应避免"大而全"的开发板,因其复杂功能容易造成学习压力。推荐选择功能简单够用的STM32F030F4P6核心板作为入门开发板,只需具备PWM输出、UART通信等基础功能即可完成首个RGB LED控制项目。建议采购清单包括核心板、ST-Link下载器、RGB模块、USB转TTL模块等必要配件,强调"极简&
本项目设计了一套基于STM32F103C8T6的智慧泳池管理系统,硬件端集成0.96寸OLED显示屏、LED指示灯、温度传感器、WiFi模块(ESP8266)、水位传感器(湿度传感器模拟)、按键模块、pH传感器、TDS传感器、舵机及水泵,实现池水pH值、TDS值、温度和水位的实时监测,并通过按键一键控制水泵进水与舵机排水,长按任意按键可进入换水模式;设备通过MQTT协议连接云平台,将数据上传至手机
本设计基于STM32主控芯片,搭配OLED显示屏,通过短按按键一可切换显示界面,同时利用WiFi模块自动获取网络实时时间,,显示动态动画,实现智能时钟功能;配套演示视频(网盘链接提供)共同展示了系统的工作效果。
基于STM32 Nucleo-L476RG开发板的智能灯系统,充分利用板载资源(LED、按钮、Arduino接口)和CubeMX图形化配置工具,实现一款低成本、低功耗、可扩展的智能照明系统。系统支持PWM调光、呼吸灯效、环境光自适应、人体感应等功能,通过板载按钮和扩展传感器实现智能控制。
顺序:ADC 采 CH0 → DMA 自动复制到 AD_Value [0]ADC 采 CH1 → DMA 自动复制到 AD_Value [1]ADC 采 CH2 → DMA 自动复制到 AD_Value [2]ADC 采 CH3 → DMA 自动复制到 AD_Value [3]ADC 通道 = 单片机上的模拟输入引脚,每个通道对应一个引脚(比如 ADC1_IN2 对应 PA2),用来读外部的模拟电
基于 STM32F103 的 ADC 入门实验,介绍如何采集电位器模拟电压、换算实际电压,并通过串口输出结果。
本文介绍了一种基于STM32F103RBT6微控制器和零知派INA219电流功率监测计的高精度电源监控系统。该系统通过软件I2C(SoftWire)实现稳定通信,可实时监测总线电压、电流和功率数据,并在ST7789 TFT显示屏上可视化展示。项目解决了硬件I2C兼容性问题,采用自动缩放机制动态调整波形显示范围,实现了1秒采样间隔的实时数据采集。系统包含完整的硬件接线方案、软件架构设计及数据处理流程
野火DAP下载器是一款基于ARM CMSIS-DAP协议的开源调试工具,通过USB转SWD/JTAG接口实现ARM Cortex-M芯片的固件烧录和在线调试。其硬件采用MCU主控+电平转换电路,支持免驱HID通信和3.3V电平适配。核心功能包括Flash编程(擦除/写入/校验)、单步调试、断点设置等,兼容Keil/IAR/OpenOCD等开发环境。相比ST-Link和J-Link,野火DAP具有开
本篇文章使用STM32CubeIDE进行开发,移植LVGL到STM32F103C8T6。F103C8T6刚好卡在LVGL能用的范围。**开源地址:**https://gitee.com/wei-yuliu/stm32-f103-c8-t6-lvgl-stm32-cube-ide.git一年前尝试过移植LVGL到STM32F103C8T6,各种问题,一直失败,放弃了。最近突然想起这件事,发现其实不难
本文介绍了STM32H7内置系统bootloader的基础知识,包括其功能特点、执行流程和使用方法。系统bootloader支持多种接口方式(USB/SPI/I2C/CAN/UART)下载应用程序,可通过硬件boot引脚或应用程序跳转两种方式进入。文章详细说明了bootloader的进入和退出方法、擦写管理注意事项,特别强调了H7系列灵活的启动地址设置特性。此外,还介绍了使用过程中的关键注意事项,
本文设计并实现了一款基于STM32F103C8T6单片机的智能鞋柜系统。该系统通过集成DHT11温湿度传感器、PM2.5粉尘传感器、MQ-135空气质量传感器等监测模块,以及加热片、风扇、UV消毒灯等执行模块,实现了鞋柜环境的智能化管理。系统具备温湿度自动调控、粉尘与空气质量报警、智能消毒、智能照明等功能,支持自动/手动模式切换和蓝牙远程控制。测试结果表明,系统运行稳定,各项功能达到设计要求,有效
本文设计并实现了一种基于STM32的智能化火灾环境监测系统。系统采用STM32F103C8T6微控制器为核心,集成温度、烟雾、火焰等多种传感器,具备实时监测、本地显示、声光报警、远程交互等功能模块。通过硬件电路设计和软件编程实现,系统可精准采集环境参数(温度精度±0.5℃,烟雾误差≤5%),实现自动/手动双重报警机制(响应时间≤0.5s),并支持手机APP远程监控和阈值调节。测试结果表明,系统运行
SPI初始速率(设为1.125MBits/s)不宜太快,主要有四个原因:1.芯片上电未稳定:内部振荡器和电源需要时间建立,太快可能导致命令识别错误。2. 电容充电延迟:信号线和引脚上的电容需要足够时间达到有效电平,慢速时钟确保信号完整。3. 默认频率上限未知:芯片上电时的最大SPI频率可能远低于正常工作值(如SD卡初始仅支持400kHz)。4. 提高兼容性:慢速时钟对布线、噪声、芯片批次差异更容错
将AI大模型嵌入STM32单片机以实现智能化,。所谓“大模型”在STM32语境中实为,而非LLM级大模型(如Llama-3 8B需GB级内存)。以下为,覆盖从模型准备到固件部署的全链路,严格依据ST官方工具链与参考资料。✅uint8Maximum⚠️:生成报告中(Flash)、(RAM)必须 ≤ 目标MCU资源上限。整个过程无需深度学习知识,依赖ST工具链即可完成。真正的挑战在于。
DMA 是什么?全称Direct Memory Access(直接存储器存取),是一个独立于 CPU 的 “数据搬运工”,可以在外设和存储器、存储器和存储器之间高速搬运数据,全程不占用 CPU 资源。为什么要用 DMA?(解决 ADC 的痛点)解决多通道 ADC 采集时,CPU 手动切换通道、启动转换、等待 EOC 的低效问题避免连续模式下,多通道数据被覆盖的问题实现外设数据到内存的自动搬运,CP
Cache是“高速临时仓库”,目的是让480MHz的内核不用等低速存储;Cache必须配合MPU使用,不同内存/外设要配不同的缓存策略;只要涉及DMA/外设,必须处理“Cache数据一致性”(Clean/Invalidate)。不用一开始追求“最优配置”,先按“开启I-Cache+D-Cache仅给AXI SRAM用+外设关Cache”的基础规则来,遇到具体问题(比如DMA读错数据)再针对性解决。
STM32H743的MPU(Memory Protection Unit,内存保护单元)是内核级的硬件安全机制,核心作用是划分内存区域限制访问权限(比如只读/只写/可执行)、校验访问主体(CPU特权/非特权模式),防止程序错误(如数组越界、野指针)或恶意代码破坏关键内存(如内核数据、外设寄存器),是提升系统稳定性和安全性的核心组件。代码量较大/多任务,担心内存错误导致崩溃;有安全/稳定要求(商用、
这篇文章介绍了一个基于STM32的人脸识别快递柜系统毕业设计项目。项目包含硬件设计、软件开发和上位机系统,主要功能是通过摄像头采集人脸信息,与预存数据库进行比对识别,控制快递柜门的开关。系统采用STM32单片机作为主控,配合OpenCV等开源库实现人脸检测和识别功能,通过WiFi模块与上位机通信。硬件部分包含电路原理图设计,软件部分采用模块化编程实现图像采集、人脸检测、数据库比对等功能。该项目综合
文章目录1. 数据通信介绍1.1 并行/串行通信2. USART串口通信(STM32H7系列)2.1 串口的硬件框图2.2 串口的基本功能特性2.3 串口的自适应波特率2.4 串口的数据帧格式2.5 同步串口和异步串口的区别2.6 单工,半双工和全双工通讯2.7 串口的HAL库应用(串口的初始化流程)2.7.1 串口寄存器结构体USART_TypeDef2.7.2 串口句柄结构体 UART_Han
本文中使用的 STM32CubeMX 版本为6.11.1,STM32CubeIDE 版本为1.6.0。
本设计是基于STM32的智能灯光控制系统,主要实现以下功能:1、可以控制灯的开关,亮度以及颜色2、可以实现语音控制3、可以通过WiFi连接手机,在手机端控制亮度以及颜色4、可以通过显示屏显示当前亮度等级以及颜色
stm32
——stm32
联系我们(工作时间:8:30-22:00)
400-660-0108 kefu@csdn.net