自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 资源 (1)
  • 收藏
  • 关注

原创 STM32 PWM 计数器模式和对齐

CCxI:capture/compare x interrupt,例如CC1I,表示CC1 interruptBI:break interrupt 刹车中断TI:Trigger interrupt 触发中断COMI:COM interrupt COM中断CCxI:capture/compare interrupt,捕获/比较中断UI:update interrupt,更新中断。

2024-05-09 16:59:26 937

原创 STM32F405 FOC 使用Timer 触发 ADC采集

PS:小问题,这里是PWM1通道高电平打开时,触发ADC转换。但是这样设置会导致FOC计算出来的Ta,Tb,Tc参数都需要调整。配置,但是发现只能启动一次DMA,测试发现需要将ADC1的DMA continuous request设置为enable。ADC设置不用改变,仍然使用注入模式,Trigger source 选择Timer1 Trigger out event。DMA+TIM触发,由TIM trigger event触发DMA采集,只需要在main函数中启动一次DMA采集即可。

2024-05-08 17:28:41 639

原创 AS5047P STM32CubeMX HAL库 调试

【代码】AS5047P STM32CubeMX HAL库 调试。

2024-04-11 17:04:04 448

原创 STM32 SPI CRC polynominal = 7 含义

STM32 SPI CRC校验理解

2024-04-11 16:48:07 1058

原创 STM32 字符数组结束符 “\0”

C程序设计》来说,字符串常量是由一对双引号括起的字符序列,区别于字符常量的单引号。在C中,没有专门的数据类型用于存放字符串常量,但可以用字符数组存放一个字符串常量。C语言编译时,在末尾添加了结束符“\0”,实际存储等效于。采用C标准库中的printf函数输出时,不会在str后添加结束符“\0”,代码如下。STM32的C编程时,没有string类型,可以用字符串数组来表示。(C标准规定是这样,一般使用也是这样,当然也有特殊情况,如果要去掉末尾的结束符“\0”,可以指定字符长度。

2024-03-28 15:59:38 516

原创 STM32 串口UART DMA Idel 接收调试记录

在使用STM32CubeMX配置串口DMA+IDLE中断接收不定长度数据时,发现只有在main函数调用HAL_UARTEx_ReceiveToIdle_DMA()时执行一次,在中断回调函数中再次开启DMA时,发现huart- rxstate = 0x22 (HAL_UART_STATE_BUSY_RX),RX一直处于Busy状态,无法再次开启DMA接收。代码单步调试发现,中断回调函数中调用HAL_UARTEx_ReceiveToIdle_DMA()再次启动DMA时,

2024-02-28 11:10:58 503

原创 Clion stm32 .elf not found

CLion STM32使用时 .elf not found 问题解决

2024-02-21 15:07:35 415

原创 STM32 系统滴答时钟启动过程 SysTick_Config

SysTick:系统滴答时钟,属于Cortex-M4内核中的一个外设,24bit向下递减计数。Systick定时器常用来做延时,或者实时系统的心跳时钟。这样可以节省MCU资源,不用浪费一个定时器。比如UCOS中,分时复用,需要一个最小的时间戳,一般在STM32+UCOS系统中,都采用Systick做UCOS心跳时钟。

2024-02-20 16:53:21 994

原创 RT-Thread Studio + STM32CubeMx 联合开发

把STMCubeMX生成的.c,.h文件复制到RTThread Studio工程中,在main中添加对应的头文件,同时main函数中添加初始化函数调用。目前我使用RT-Thread Studio + STM32CubeMX配合开发:目前比较稳定。最后结合STM32CubeMX时做如下改动。每个驱动单独生成.c,.h文件。用RTThread Studio新建RTThreadNano工程参考。

2023-12-12 14:42:22 242

原创 STM32CubeIDE 移植 RT-ThreadNano问题总结

尝试更换CDT(C/C++development tools),STM32CubeIDE默认使用GNU Tools for STM32,更换使用GNU ARM Embedded。编译时 libcpu/arm/cortex-m4/context_gcc.s (RT-Thread 启动文件)时出现如。目前仍然不能使用STM32CubeIDE+RTThread联调测试。按照以下几种方式处理后仍然不能正常运行。安装的时候软件反应有点慢,开始以为卡死了,等了一会才反应过来。安装进度在整个界面的左下角,不是很直观。

2023-12-12 14:26:55 278

原创 STM32cubeIDE 更改Repository folder

STM32CubeIDE使用技巧

2023-09-27 16:28:02 699

原创 电油汀维修

220V市电进来后,L端连接一个倾倒开关,电油汀倾倒后能立即断电,起到保护作用。顺时针旋转旋钮,动静触头在旋转轴顶压下闭合,当腔室空气温度达到一定温度时,双金属片变形,导致动静触头分离,电加热管停止发热。当空气温度降低到一定程度,双金片恢复至初始状态,动静触头闭合,电加热管再度发热。0挡关机,1挡加热管1开,2挡加热管2开,3挡加热管1/2同时开。突跳式温控器是电热油汀热元件的一级保护,保护动作,电加热管1就退出运行。拆解后实物图如下图,内部只使用了简单的开关控制、温度保护,没有用到一个芯片。

2023-01-02 11:35:08 3654

原创 PlatforIO 文件存放路径

platformIO工程文件存放路径

2022-10-20 17:11:09 2404

原创 MDK keil5 error: L6235E: More than one section matches selector---STM32启动

STM32启动文件重复加载问题解决

2022-10-14 11:53:58 712

原创 AC/DC 电源适配器拆解

拆解一个AC/DC电源,分析一下电路

2022-09-09 08:50:08 3878

原创 EMC电磁兼容---EMI电磁干扰

EMI滤波器拆解分析

2022-09-09 08:48:26 915

原创 示波器测量市电

示波器测量市电的理解和注意事项

2022-09-07 14:41:30 2612

原创 惠斯通电桥称重传感器检测原理

@目录惠斯通电桥各个臂上电阻变化时,计算过程如下图所示:电阻应变片的工作原理是基于应变效应制作的,即导体或半导体材料在外界力的作用下产生机械变形时,其电阻值相应的发生变化,这种现象称为“应变效应”。半导体应变片是用半导体材料制成的,其工作原理是基于半导体材料的压阻效应。压阻效应是指当半导体材料某一轴向受外力作用时,其电阻率发生变化的现象。应变片是由敏感栅等构成用于测量应变的元件,使用时将其牢固地粘贴在构件的测点上,构件受力后由于测点发生应变,敏感栅也随之变形而使其电阻发生变化,再由专用仪器测得其电阻变化大小

2022-09-06 16:40:20 8143

原创 RLC电阻电感电容取值标准

@目录国际电子技术委员会(international electrotechnical commission, IEC)在1952年定义了电阻、电感、电容取值的规范,目的是方便工程师使用、制造商便于生产。相关标准:IEC 60063定义了电阻电容的取值和误差,IEC60062定义了电阻、电容丝印标注标准。其中En,n=2^i*3,i取值0~6,计算表格如下.这样设计的目的是,在固定的误差要求下,通过最少的数值来覆盖所有范围,以E12为例,在10~100范围内(其它范围只需要乘10^n即可),取12个数

2022-08-30 16:12:43 886

原创 BLDC刹车制动控制

总结了三种常见的电机制动方法

2022-08-18 09:55:32 4608

原创 SimpleFOC调参3-PID参数整定攻略

FOC作为直流无刷电机控制最常用的算法,得到广泛应用。simpleFOC,ODrive,VESC等。其中simpleFOC因其简单易用,支持多种硬件平台,很适合新手入门。我在用simpleFOC的过程中踩了不少坑,在此记录学习调试过程中的一些心得。硬件平台开始最好直接购买套件,熟悉后再自己搭配,我这里直接买的灯哥开源的套件电机2204驱动器L6234磁编码器AS5600电流检测INA240主控MCUESP32软件平台IDE工具PlatforIO,......

2022-07-26 18:09:35 5345 1

原创 SimpleFOC调参2-速度、位置控制

simpleFOC studio调节速度环、位置环过程总结

2022-07-21 17:28:25 6696 4

原创 SimpleFOC调参1-力矩控制

simpleFOC studio调参,FOC各参数图形化含义总结

2022-07-20 13:38:32 6384 3

原创 EPS32+Platform+Arduino 跑马灯

使用platformio IDE开发EPS32程序,环境搭建及跑马灯程序下载测试

2022-07-13 10:10:52 1454

原创 STM32 MDK(Keil5) Contents mismatch错误总结

STM32单片机下载烧录过程中出现问题的总结,测试方法记录

2022-06-24 16:41:44 8876 5

原创 TLE5012b+STM32F103C8T6(bluepill)读取角度数据

在调试simpleFOC程序时,需要用到磁编码器,TLE5012B磁编码器价格较低,满足项目要求。TLE5012B有两种通信方式:SPI和ABI接口模式。总结一下使用TLE5012B过程中的一些问题MCU采用:STM32F103C8T6(bluepill)最小系统板。传感器是网上购买的TLE5012B模块+径向磁铁。BLDC电机:X2212-13 KV:980USB转串口:CH340模块由于TLE5012B采用的是SSC三线通信方式,可以兼容SPI的四线通信方式,所以使用时需要做一点调整,即MISO、

2022-06-23 14:30:28 2936 6

原创 SimpleFOC+PlatformIO踩坑之路

最近一直在用simpleFOC做BLDC电机驱动开发,simpleFOC是一个开源库,基于Arduino平台的,其底层调用了很多arduino的函数。但是ArduinoIDE的编译速度实在是太慢了,动不动就是十几分钟。网上查找发现了一个可以完全替代ArduinoIDE软件,platformIO.具体安装使用可以参考官方文档:问题1: 测试BLDC_Driver_6PWM例程时,platformIO下载后无反应,同样的程序Arduino下载后正常解决: 在platformio.ini启动文件中添加:lib_

2022-06-17 18:00:09 937

原创 arduino uno错误分析avrdude: stk500_recv(): programmer is not responding

用arduino uno板子在做BLDC电机调试时,不小心电流过大,把主芯片atmel328给烧了,网上购买了新的芯片换上,下载过程中一直报错:avrdude: stk500_recv(): programmer is not responding。原因分析avrdude是一款下载/上传/烧录AVR单片机ROM、EEPROM的工具软件,采用ISP(in-system progrmming)方式。类似于STM32系列的烧录软件STM32Programmer,烧录过程中需要用到reset复位。Arduino

2022-06-14 13:51:57 14297 3

原创 ArduinoIDE + STM32Link烧录调试

STM32,Arduino烧录调试总结

2022-06-09 17:17:47 4644

原创 TB6600+stm32F407步进电机驱动测试

接线采用共阴极方式接线:ENA-、DIR-、PUL-接STM32F407开发板的GND端ENA+接F407的PE0,悬空/接地启动(当有PWM时旋转,当无PWM时锁定),接5V/3.3V停止(电机处于自由状态,可以随意转动)DIR+接F407的PE1,控制电机转动方向,与A+A-B+B-配合使用PUL+接F407的PE5,输出PWM波形,一般占空比为50%A+A-/B+B-接步进电机的引脚,不分正负,正反接只会影响旋转方向,配合DIR一起控制方向电机电源端:接24V,注意正极。此处GND没

2022-04-11 15:21:42 5808

原创 STM32 串口乱码

问题描述用正点原子STM32F4探索者开发板调试野火骄阳电机驱动程序,发现串口输出一直是乱码。问题排查:串口调试助手编码方式?同一个串口调试助手,用正点原子、STM32CubeMX生成的程序发送数据正常。排除串口调试助手问题。串口配置函数问题?仔细检查过串口配置,GPIO配置,用STM32CubeMX与骄阳程序相互替换,问题仍然存在。HAL库其它文件干扰?删除多余HAL库文件,与STM32CubeMX用到的库文件保持一致。问题仍然存在。参考STM32串口通信乱码详细处理方法,更改stm32f4x

2022-04-07 15:01:55 3007

原创 STM32 printf问题总结 semihosting microLIB理解

STM32使用printf问题总结背景:使用STM32F4开发板串口时,想用c语言自带的printf函数把字符串输出到串口调试助手。首先需要重定义fputc()、fgetc()函数///重定向c库函数printf到串口DEBUG_USART,重定向后可使用printf函数int fputc(int ch, FILE *f){ /* 发送一个字节数据到串口DEBUG_USART */ HAL_UART_Transmit(&huart1, (uint8_t *)&ch, 1,

2022-04-07 14:46:34 958

原创 Python 及相关包的安装:pip、jupyterlab、numpy

标题Python 及相关包的安装:pip、jupyterlab、numpyPython是一种万能语言,因为它是一种打补丁的方式组织起来的语言,安装了Python后,需要任何功能,只需要针对性的安装相应的包,就可以用通用的Python语言来进行编程了,非常方便省事。这样做的优点有很多:跨平台、语言简单、学习成本低;缺点就是执行效率不高,需要更高的硬件算力。作为一种辅助语言还是很方便的,有什么新的想法都可以很快速的上手去测试一下功能,网上也有很多教程。Python安装Python的安装主要有两种方式,一种

2021-11-12 12:41:37 753

原创 STM32 检测信号频率

STM32 检测信号频率目标目标信号:500kHz±50Hz方波信号,占空比50%,低电平:0V,高电平:3.3V检测:信号的频率,采样率100Hz,记录频率值信号周期2μm,高电平、低电平各持续1μm;1采样频率100Hz,即每10ms记录一次频率值,计数范围:5000±50,4950~5050参考:1. 用STM32定时器测量信号频率——测频法和测周法2. 使用 STM32 测量频率和占空比的几种方法[1]: https://www.cnblogs.com/helesheng/p/141

2021-05-28 22:42:05 11421 2

明纬电源meanwell-sp-320电源原理图

明纬电源meanwell_sp_320电源原理图,在测试后,修改RSP_320_24V电源为可调电源

2022-10-14

简单易用的手机充电电路

详细介绍了手机电源的设计,使用芯片,原理图,原材料清单

2015-03-19

空空如也

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

TA关注的人

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