【STM32】标准库与HAL库对照学习系列教程大全一、前言二、准备工作三、基础篇四、进阶篇五、特别篇六、外设篇一、前言前言:开始工作后,学习的时间变少了很多,但是今年的1024节,还是打算送个福利给大家,将之前的STM32教程汇总,方便大家学习与查找,学习嵌入式已经快3年了吧,感觉自己还是在入门阶段,STM32也快一年没碰了,现在经常用的大多都还是工作上的内容,所以文章有不对的地方还希望大家多多指正啦!!!二、准备工作学前准备:C语言基础STM32开发板程序烧录器(推荐ST-Link,可以直接在keil上烧录,教程网上一搜一大片)和烧录软件串口助手keil5和cubemx学习建议:一般的开发板
一、创建基础VR项目框架首先,先在HUB中给编译器添加模块选择Android。如果不选,之后添加SDK的时候会报错。选择WebGL为以后的开发做准备,暂时不装也行开始项目创建:PICO4的运行程序,或者说安卓程序不支持HDRP高清渲染管线,要获得更好的画质,选择URP(通用渲染管线)进入项目后选择Windows/PackgesManager,打开后选择unity注册表,搜索XR下载Toolkit要重启编译器,选择yes就好重启后,进入包管理器中的InProject分类,选择下好的Toolkit选择Samples导入第一个 此时,我们需要下载PICO4的SDK因为unity与PIC
系列文章目录HAL库版STM32双轮自平衡车(一)———代码思路和PID的简单介绍(本篇) HAL库版STM32双轮自平衡车(二)———CubeMX的配置、原理图接线、物料准备HAL库版STM32双轮自平衡车(三)———代码精讲HAL库版STM32双轮自平衡车(四)————原理图以及PCB绘制HAL库版STM32双轮自平衡车(五)————调参带编码器的直流减速电机测速HAL库版0.96'OLED的使用目录 系列文章目录 前言一、代码整体框架二、P,I,D这三个控制器的作用和缺点三、所用PID精讲四、编写代码前的整体思路五、小结完整工程以及学习资料(设置了收费望理解)https://m.tb.
utils专栏不会细讲概念性的内容,偏向实际使用,如有问题,欢迎留言。如果对你有帮助就点个赞哈,也不搞什么粉丝可见有的没的,有帮助点个赞就ok1、混淆矩阵、准确率、F1和召回率的计算混淆矩阵 对于混淆矩阵的计算,这个我们直接从sklearn.metrics导入confusion_matrix计算,只需要向其中传递两个参数,一个是y_true,一个是y_pred,就可以直接得到混淆矩阵了:fromsklearn.metricsimportconfusion_matrixconfMatrix=confusion_matrix(label,pre) 这个是随便拿了个数据集,加
stm32基于HAL库驱动外部SPIflash制作虚拟U盘📌参考文章:https://xiaozhuanlan.com/topic/6058234791🎞实现效果演示:🔖上图中的读到的FLASH_ID所指的是针对不同容量,所对应的ID。//W25X/Q不同容量对应不同ID关系W25Q80ID0XEF13W25Q16ID0XEF14W25Q32ID0XEF15W25Q64ID0XEF16W25Q128ID0XEF17W25Q256ID0XEF18🔖在电脑端,支持对虚拟出来的存储器进行读写操作。✨如果设计成一块PCB,可以制作成一个微小容量的移动U盘。🌿基于STM32F103,HAL库生成的代码,
记录一下对flash编程操作时出现的问题以及解决办法问题:在使用HAL库中的HAL_FLASH_Program(uint32_tTypeProgram,uint32_tAddress,uint64_tData)函数时发现总是没办法写入(明明写之前使用voidFLASH_PageErase(uint32_tPageAddress)函数擦除了flash),查阅资料说是可能是因为固件库HAL_FLASH_Program函数有问题,建议换成寄存器直接操作,但是换成后发现仍有问题,读写入地址的数据任然是0xffffffff。多次尝试发现,在第一次使用FLASH_PageErase擦除flash以及HAL
STM32HAL库PID控制电机第二章TB6612FNG芯片驱动GB37-520电机(HAL库)1电路图2TB6612简介TB6612是双驱动,可同时驱动两个电机STBY:接单片机的IO口清零电机全部停止,置1通过AIN1AIN2,BIN1,BIN2来控制正反转VM:建议接10V以内电源(瞬间上电12V可能会有尖峰电压击穿器件)VCC:接5V电源GND:接电源负极PWMA:接单片机的PWM口,控制转速PWMB:接单片机的PWM口,控制转速AO1、AO2:接电机1的两个脚BO1、BO2:接电机2的两个脚赋值停止正转反转AIN1001AIN2010BIN1001BIN2010所连接引脚如下表:引脚
文章目录HAL_NVIC_SetPriority():设置中断优先级HAL_NVIC_EnableIRQ():使能中断结束HAL_NVIC_SetPriority():设置中断优先级HAL_NVIC_SetPriority()函数是一个用于设置中断优先级的函数,其定义如下:voidHAL_NVIC_SetPriority(IRQn_TypeIRQn,uint32_tPreemptPriority,uint32_tSubPriority);其中,参数含义如下:IRQn:指定要设置优先级的中断号,类型为IRQn_Type,定义在stm32f4xx.h头文件中;PreemptPriority:指定抢
小米电机CyberGearSTM32HAL使用指南在23年8月底小米正式发售了用于其铁蛋2代的小米“微电机”,准确来说就是目前机器人方向流行的关节电机。根据其参数可知,在同等重量下,小米此款电机不仅在额定扭矩上达到了4NM,峰值扭矩达到了12NM的水平,同时在价格上也基本上算是全网最低。笔者也是通过预购,在发售之初拿到了“年轻人的第一个微电机”。故想发出此文,和各位一起,通过最简单,最流行的硬件,完成对电机的基础控制。硬件介绍由于小米电机采用了当前在关节电机行业上比较流行的TX302+2的接口,通过一个接口就可以同时完成信号和供电的传输,使得线路连接非常简单,且几乎不存在反插问题(CAN信号线
简介通过STM32F103C8T6单片机采用HAL库方式对0.96寸OLED(IIC通讯)屏幕进行驱动。之前GY906驱动通过软件IIC进行驱动,因此本次通过硬件IIC进行驱动。2.1Cubemax初始化配置首先进行初始化配置,点击进行跳转。接着对IIC初始化进行配置,配置图如下所示:接着生成代码进行程序的书写。2.2keil端程序书写1、添加HC-SR04库文件在生成的文件夹中建议新文件夹icode如下所示。接着在新文件夹中复制oled库文件如下所示。库文件文件链接如下所示。链接:https://pan.baidu.com/s/1N31uzTTD9nklH2ekpiFnvA提取码:wxve接