自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 收藏
  • 关注

原创 嘉立创EDA成图:原理图绘制以及PCB封装导出为.efoo文件

在嘉立创EDA中绘制原理图时,点击新增后会出现弹窗,输入器件名称即可。若无法输入,重启软件即可解决。注意单位应为0.1inch=100mil。绘制引脚时,带圆圈的应放在外侧,可调整引脚长度为0.15inch。文字位置可通过上下左右键移动。在PCB封装绘制中,首先建立坐标轴确定焊盘位置,绘制完成后修改编号,最后通过.efoo格式导出封装。

2025-05-20 16:55:33 412

原创 嘉立创EDA成图:文件管理

在工程文件夹中,首先新建一个以选手编号后8位命名的项目工程文件(如手机号.eprj)。接着,新建图纸文件moban.elibz并保存,确认文件存在即成功。在项目工程内,创建元件库Lib.elibz,并导入素材库中的Sch.epro文件。随后,新建PCB设计文件PCB.epro。最后,在工程文件夹中新建子文件夹Gerber,用于存放生成的文件。这些步骤确保了项目文件的正确创建和组织。

2025-05-17 19:40:07 305

原创 STM32CubeMX使用SG90舵机角度0-180°

本文介绍了如何通过STM32控制舵机的步骤。硬件连接方面,舵机的信号线需连接到STM32的PWM输出引脚(如PA2),电源和地则连接到外接5V电源,并确保共地。在STM32CubeMX中配置定时器(如TIM2)的PWM模式,设置预分频器(PSC)和自动重载值(ARR)以生成50Hz的PWM信号。代码实现部分包括定时器初始化和设置舵机角度的函数,其中角度通过PWM信号的脉宽来控制,脉宽范围0.5ms到2.5ms对应舵机角度0°到180°。最后,主函数中通过循环调用舵机角度设置函数,实现舵机在不同角度间的切换。

2025-05-16 20:23:15 732

原创 FreeRTOS静态任务的中断管理、时间片调度(尚硅谷学习笔记)

中断管理:使用两个定时器(优先级4和6)每1秒打印字符串,通过按键控制中断开关,观察定时器打印情况。时间片调度:滴答定时器的中断频率设置为50ms中断一次(一个时间片)打印五次任务

2025-05-15 23:08:12 936

原创 基于STM32F103C8T6(HAL库)和CubeMX通过UART实现蓝牙模块和手机通信

基于STM32F103C8T6(HAL库)和CubeMX通过UART实现蓝牙模块和手机通信,手机APP使用蓝牙调试器,让我们对下一个遥控小车或者其他设备做准备

2025-05-15 20:36:04 1950

原创 STMCubeMX使用TB6612驱动编码轮并进行测速

TB6612电机驱动模块通过IN1和IN2引脚控制电机的旋转方向,并通过PWM信号的占空比调节电机速度。代码示例展示了如何使用GPIO控制电机的正反转,以及如何动态调整PWM占空比实现速度控制。系统设计中,TB6612与编码减速电机连接,STM32CubeMX用于初始化GPIO和PWM输出。编码器接口配置使用TIM3进行测速,TIM4定时器用于速度计算。Keil软件中编写的代码包括编码轮计数值获取、速度计算、电机正反转控制以及小车运动控制等功能。通过OLED显示速度,并实现电机的调试与测试。

2025-05-14 16:54:30 1286

原创 FreeRTOS挂起和恢复任务调度器与stm\stm.axf: Error: L6406E: No space in execution regions with 芯片内存不足解决

本文介绍了在FreeRTOS中挂起和恢复任务调度器的相关函数及其使用方法。通过vTaskSuspend和vTaskResume函数,可以挂起和恢复指定任务,而vTaskSuspendAll和xTaskResumeAll则用于挂起和恢复整个任务调度器。在STM32F103C8T6芯片上因内存不足导致的问题:stm\stm.axf: Error: L6406E: No space in execution regions with ,并提供了查看和计算ROM、RAM内存的方法,以及解决内存不足的建议。

2025-05-12 18:37:27 1097

原创 FreeRTOS静态任务的创建、删除和软件定时器的开启(尚硅谷学习笔记)

在FreeRTOSConfig.h中添加开启静态分配和软件定时器相关的定义。按照之前的动态任务进行相应的文件处理(此处就不在介绍)freertos_demo.c文件。相应需要配置的两个函数配置。

2025-05-11 10:19:35 157

原创 FreeRTOS动态任务的创建与删除(尚硅谷学习笔记)

FreeRTOSConfig.h 文件是 FreeRTOS 的工程配置文件,因为 FreeRTOS 是可以裁剪的 实时操作内核,应用于不同的处理器平台,用户可以通过修改这个 FreeRTOS 内核的配置 头文件来裁剪 FreeRTOS 的功能,我们把它拷贝一份放在FreeRTOS这个文件夹下面(路径随意,只要能添加其路径就好)。在stm32f1xx_it.c中注释两个函数void SVC_Handler(void)和void PendSV_Handler(void)freertos_demo.h文件。

2025-05-11 00:15:00 507

原创 VScode编程如何快速使用注释,当前行、多行、添加函数头文件注释和头部文件注释

本文介绍了如何通过快捷键和插件实现代码中的当前行注释、多行注释、函数前注释和头部注释。使用Ctrl+/可以快速注释当前行,Alt+Shift+A用于多行注释,而Ctrl+Windows+i用于函数前注释,ctrl+Windows+/用于头部注释。通过下载koroFileHeader插件,编辑setting.json文件,可以自定义注释内容,如函数注释的description、param、return等字段,以及头部注释的Author、Date等信息。

2025-05-10 10:23:35 853

原创 使用VScode编程keil5方法(快速对齐代码快捷键+stlink烧录stm32)

本文简要介绍了如何配置和使用EIDE插件进行Keil5项目的编译与下载以及使用快捷键Shift+Alt+F快速自动对齐代码。首先,需下载必要的插件并设置EIDE插件的路径与Keil5安装路径一致。接着,通过右键Keil5图标查看并确认路径后,导入MDK-ARM项目,选择“Yes”或“No”均可。在编译和下载过程中,若遇到使用ST-Link下载的问题,可切换设置以重新实现下载。

2025-05-10 09:47:49 356

原创 基于STM32F103C8T6和CubeMX(HAL库)移植江科大软件IIC

这里注意0xa0和0xa1,这个是根据自己传感器的地址线而填的,我的是stm32自带的AT2402。发送端: [BIT7] [BIT6] ... [BIT0] [ACK]:所有设备都需配置为开漏模式,依赖外部上拉电阻(通常4.7kΩ):仅需SCL(时钟线)和SDA(数据线)两根线。:每个字节传输后接收方必须发送ACK(低电平):SDA在SCL高电平期间需保持稳定。:SCL高电平时SDA由高→低。:SCL高电平时SDA由低→高。:支持多个主设备和从设备。:SDA低电平(0):SDA高电平(1)

2025-05-08 21:19:12 342

原创 基于STM32F103C8T6(HAL库)和CubeMX实现UART配合TIM实现不定长数据接收并处理正确和错误的信息

为什么要使用TIM搭配UART?问题:接收超时检测(帧间隔超时)UART接收不定长数据时,无法预知数据帧的结束位置(例如Modbus RTU协议通过 3.5字符时间 的静默判定帧结束)。若仅依赖接收中断,可能因数据间隔不明确导致帧解析错误。解决方法:启用定时器TIM:在每次收到一个字符时重启定时器。定时器超时中断:若在设定时间内未收到新数据,则认为一帧数据接收完成,触发处理逻辑。这样就可以对接收的数据是否正确以及进行正确和错误信息的处理

2025-04-26 15:06:01 1391

原创 基于STM32F103C8T6(HAL库)和CubeMX实现串口数据的printf重定向发送和接收

stm32f103c8t6CubeMX生成UART串口函数,将发送重定向printf,接收到指定标志位返回发送成功并打印数据

2025-04-26 01:34:34 367

原创 基于STM32F103C8T6(HAL库)和CubeMX实现四轮小车直流电机使用TB6612驱动

CubeMX生成stm32f103c8t6的hal库驱动小车的四个直流电机,实现小车四个轮子的控制

2025-04-25 21:27:55 1246

原创 基于STM32F103C8T6(HAL库)和CubeMX实现PWM控制LED呼吸灯效果

stm32f103c8t6使用cubemx生成hal库实现PWM控制LED呼吸灯效果

2025-04-24 17:00:14 436

原创 基于STM32F103C8T6(HAL库)和CubeMX实现移植江科大0.96寸四脚OLED显示屏(附带免费文件下载)

0.96寸OLED显示屏使用hal移植江科大代码

2025-04-24 11:58:05 491

原创 基于STM32F103C8T6(HAL库)和CubeMX使用定时器TIM中断扫描按键,实现按键的长按、短按以及双击

在按键的使用过程中,有许多的按键扩展方式,比如区别按键的长按短按以及双击,这里将实现这些功能

2025-04-23 17:48:22 1186

原创 基于STM32F103C8T6(HAL库)和CubeMX使用定时器TIM中断扫描按键,避免delay造成的程序堵塞,实现按键控制LED灯

stm32cubemx使用定时器TIM中断扫描按键,避免delay造成的程序堵塞,实现按键的一个控制

2025-04-23 13:13:10 1062

原创 基于STM32F103C8T6(HAL库)和CubeMX实现使用小白新建工程,进行函数封装,烧录程序以及点亮LED灯

打开软件点击New Project,有时候会更新一些固件包等待更新完成即可进行搜索stm32f103c8t6,下面有两个芯片选择,两者的芯片核心规格(如内核、Flash容量、引脚数、封装类型、温度范围等),差异仅体现在包装方式上。在这个芯片的左边有个星星是芯片(2.)即可进入配置界面。

2025-04-21 18:36:52 851

原创 基于STM32F103C8T6(HAL库)和CubeMX入门的一些GPIO配置详解:IO口、电平、寄存器与上下拉电阻

GPIO(General Purpose Input/Output)即通用输入输出引脚,是芯片与外部设备交互的接口。输入模式:用于读取外部信号(如按键状态、传感器数据)。输出模式:用于控制外部设备(如点亮LED、驱动继电器)。

2025-04-21 14:05:48 499 1

使用标准库改进为hal库代码

使用标准库改进为hal库代码

2025-04-24

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除