自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 记录一次对STM32G4串口硬件FIFO的调试

随着我们工作、学习的不断深入,会接触到越来越高级的芯片、越来越复杂的外设功能,不再像以前那样随便看两篇教程、看两集视频、复制一段代码就能调通,即使是使用CubeMX加HAL库也不会那么容易。往后需要我们自己熟读手册,了解每一位寄存器的作用,要是遇到手册说得不清楚或者自己无法理解的情况,还需要我们动手实践,自己去摸索它们大致的功能和作用。要不然以后遇到没有参考的时候,就只能干瞪眼了。就算有参考,也建议大家自己调一遍,不要复制黏贴,不要怕浪费时间。

2023-07-02 18:46:32 3437 3

原创 foc配置篇——ADC注入组使用定时器触发采样的配置

针对三电阻低测采样来讲一讲如何配置使用定时器来触发ADC的注入组进行采样

2022-08-06 21:49:19 15389 20

原创 STM32HAL库学习——CAN笔记

CAN笔记虽然CAN协议本身具有一定的复杂度,但实际上使用CAN进行基本的数据收发是非常简单的,因为大部分工作都是硬件帮我们完成的,我们要做的仅仅是使用库函数往FIFO(CAN外设的某几个寄存器)中写入/读取数据而已。CAN有ISO 11898 和 ISO 11519-2 两种标准,本文只涉及ISO 11898(闭环、高速)一、基本概念CAN是一种通讯协议,在汽车、工业、机器人等领域广泛使用。1、CAN的波形​ CAN有两根通讯线:CAN H 和 CAN L 。图中黄色的为CAN H,

2021-12-06 16:01:42 10239 12

原创 foc学习笔记5——总结与补充

foc学习笔记5——总结与补充到了这里,第一阶段的内容也将告一段落了。 但由于种种原因,之前讲得比较急,有些东西没有讲清楚,在这一节会得到补充。或者大家如果有什么想问的,如果我能回答,我会把回答的内容添加到这一节来。总结​ 本以为让电机转起来就已经成功了,但事情并没有那么简单。让电机转起来简单,转得好却很难。期间遇到了一些问题,一卡就是很长时间,有些到现在都没能解决,真的就是折腾两个月都寸步不进的那种感觉。说到底还是自己知识不足、功力不够,做的多学的少。因此我的瞎调瞎试之路也该放一放了,

2021-10-22 15:06:37 2670 12

原创 foc学习笔记4——速度环和位置环

foc学习笔记4——速度环和位置环PID的资料网上有很多,包括原理以及调试,相信大家对于PID都有着自己的理解,因此这里就不多介绍了。本节只讲一些针对电机的关键东西,避免新手朋友因为歧义而发生错误。加上速度环和位置环的foc框图什么叫串级PID​ 这里先看一个我自己用的PID代码:struct PID_Type{ float32_t kp; //P、I、D各自参数 float32_t ki; float32_t kd; float32_t target

2021-10-22 15:04:16 17121 11

原创 foc学习笔记3——电流环

foc学习笔记3——电流环电流环的作用​ 前文不断强调,进行磁场定向控制需要控制的是电流而非电压,只是因为我们没有办法直接去控制电流才暂时退而求其次地去控制电压 。虽然电压控制的效果也还不错,但由于电机不是单纯的阻性负载,所以控制电压并不能得到一个完美的效果。终极目标是控制电流,没有电流控制的foc不能叫foc,所以电流环最本质的作用是什么就不用多说了吧。注:虽然框图中含有编码器,但它并不是电压控制的反馈环节,仅用来获取转子电角度,所以称其为开环控制。​ 对于其他方面的作用,说一说自己的理解

2021-10-08 10:13:33 54098 37

原创 foc学习笔记2——svpwm

foc学习笔记2——svpwm写在前面:如今网上关于foc的文章和教程很多,但初学者往往会被那些专业且复杂的公式搞晕,不知道自己到底在学什么。本文尽量少列公式,多解释用途,所以不会有公式的推导过程,会更加注重结论以及用法,如果对公式推导有兴趣的朋友还请参考其他文章。最后:本人既不是电机工程师也不是相关专业的学生,纯属个人理解,有什么错误还请指出,也希望各位专业人士能嘴下留情。1.svpwm是干什么的​ 前面说过,理想的foc可以产生任意方向的磁场,而svpwm就是实现这一点的关键。但我们电机的

2021-09-22 23:21:55 13162 35

原创 foc学习笔记1——准备工作

foc学习笔记1——准备工作写在前面:如今网上关于foc的文章和教程很多,但初学者往往会被那些专业且复杂的公式搞晕,不知道自己到底在学什么。而本文旨在帮助大家梳理思路,如果各位看了其他文章有云里雾里的感觉、不思其解的地方,或许本文能为您解惑。但本文也只能起到辅助作用,并不是零基础教程,还请结合其他文章一同学习。最后:本人既不是电机工程师也不是相关专业的学生,纯属个人理解,有什么错误还请指出,也希望各位专业人士能嘴下留情。1.foc是什么(1)电机持续转动的秘密:换相​ 首先说一说为什么电机能

2021-09-20 21:56:08 13235 7

原创 使用CubeMx五分钟搞定USB虚拟串口

使用CubeMX五分钟搞定USB虚拟串口USB协议是相当复杂的,但如果用CubeMX去配置,把它当成一个串口使用,可能只需要几步。第一步:开启USB外设只需要在上面打个勾,搞定。第二步:时钟树配置USB的时钟必须为48M。这里的 1.5 倍分频就很有灵性啊。第三步:开启USB中间件选择 Virtual Port Com ,也就是虚拟串口的意思,其他配置保持默认即可。第四步:生成工程是不是感觉有点快,没错就是这么快。不过这里栈的大小可以设置的大一点,默认的可能会有点小。第五步:打

2021-04-12 21:57:24 4286

原创 STM32之QSPI调试记录

STM32之QSPI调试记录先声明一下,STM32的QSPI外设同样支持单线模式(兼容普通spi),只是相比普通的spi少了一些特性(比如只支持模式0和3、不能LSB发送等),但是用来操作flash已经足矣。如果有朋友和我之前一样,以为要先用普通spi外设去初始化flash并让它进入四线模式,再使用STM32的QSPI外设去操作flash,那么现在可以打消这个顾虑了。引脚定义一般情况下,QSPI要使用6个GPIO,其中片选引脚、时钟引脚和spi是一样的,但数据引脚变成了4根。IO0~IO4这四根数

2021-04-11 20:51:08 7583

原创 Qt学习记录之简单的TCP服务器

简单的多连接TCP服务器​ 本节我们使用Qt来编写一个简单的多连接TCP服务器程序,涉及到的功能有监听本地IP、打印上线客户端的IP端口号,接收客户端发来的文字信息并打印其IP端口号、单独或全部地向客户端发送文字信息、显示下线客户端的IP端口号,并具有踢人的功能。​ 该程序使用正点原子的网络助手来验证功能。Qt基于5.9.9版本。1、创建工程以及配置工作创建工程的过程就不再介绍了,这里我选择的是 QWidget ,因为比较简单。然后我们在 .pro 文件中添加网络的模块,否则待会添加头文

2021-03-27 21:13:15 1487 4

原创 Qt学习记录之环境搭建与创建工程

环境搭建与创建工程Qt在线安装向导的下载1、首先打开百度,搜索Qt,搜索出的页面如下:我们选择这个,点击进入2、进入官网后,点击右上角的Download. Try.按钮点击之后会跳转到下载页面。3、在下载页面,我们往下滑,找到下载开源版的选项点击这个按钮4、注册账户注册即可。如果网速慢页面可能会加载不正常,需要耐心等待,或者你懂得。5、注册过后再次回到刚刚的注册/登陆页面,点击下面的登陆,会弹出如下页面不出意外,就会开始下载。如果没有自动下载,就点一下上边的 here6、下

2021-03-22 17:57:30 735

原创 C++学习记录2(面向对象语法——上)

C++学习2​ 在上一节的学习中,主要还是在复习C语言的特性,包括最后的实战篇,也没用上面向对象的设计思想。但从这一节开始,正式开始学习属于C++的特性,并且学习面向对象的编程思想。注:本文是参考黑马程序员的C++视频教程后自己总结的,添加了一部分自己的东西,属于二次创作,全投转载也太那啥了,我干脆一个投转载一个投原创算了,谁让CSDN没有二次创作的选项呢(任性)。建议想要学习C++的小伙伴每人都自己写一篇总结,加深理解。黑马程序员C++教程主讲老师的账号主页这是本人的学习记录,通篇又臭又长,不

2021-03-21 23:11:43 259

转载 C++学习记录1(基础语法)

基础语法​ 之前学编程只是为了学习单片机,单片机主要使用C语言开发。在了解了C语言基本的语法知识后,我感到自己的编码能力一直都止步不前,基本就是if、for、while打天下。至于函数指针、链表等高级一点的操作,我似乎从来没有用到过。另一方面,我学习的平台好像也一直局限于STM32,学了将近一年,还只是在扣寄存器、看数据手册、自己写驱动,而没有做过什么拿得出手的作品。唯一的一个平衡小车,还是我学STM32一个多月后做出来的,后面的时间安排得性价比很低。总之,就是感觉自己路走窄了。​ 为什么选择C++

2021-03-21 19:58:55 310

原创 RT-Thread设备框架之pin源码分析

RT-Thread设备框架之pin源码分析有关 pin 设备的共有4个文件,分别是pin.c、pin.h、drv_gpio.c、drv_gpio.h。​ 其中pin.c、pin.h是上层文件,为用户提供可以直接调用的API。而drv_gpio.c、drv_gpio.h是底层的驱动文件,实现对接HAL库的功能(或者其他芯片厂商的SDK),是真正“干活”的那一个。​ 这样做的好处就是上层能对各平台驱动实现抽象,调用一套接口就能操作不同平台的硬件,代码复用性和可移植性得到了大大的提升。既然drv_g

2021-02-21 19:02:42 1566 6

空空如也

空空如也

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

TA关注的人

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