草庐IT

STM32CubeMX

全部标签

STM32自学笔记14-步进电机驱动项目-TB67H450驱动

目前的项目是一种2相4线步进电机的闭环驱动电路,使用的电机驱动芯片是TB67H450,再使用磁编码器MT6816,使用FOC算法,基于STM32F1单片机。这一节是步进电机的驱动芯片驱动研究首先研究驱动芯片TB67H450的datasheet这是一个PWM斩波电机驱动芯片,内部框图可以看出来内含一个H桥全桥驱动电路,而芯片的输出Out1和Out2即H桥的两个输出口H桥电路驱动单相步进电机是很基础的知识,芯片通过IN1和IN2的输入来控制输出的高低电平,但是下面的这个逻辑表是针对直流电机的,不需要看Mode这一列,只要看Out1和Out2的电平。我们使用的是2相4线电机,所以需要2个TB67H4

GD32F103 USBD CDC移植

firmwareversion:GD32F10x_Firmware_Library_V2.2.4模板工程:cdc_acm        GD32F103自带一个USBD,虚拟成串口设备来与上位机通信会比USART方便不少(主要是懒得接线~),GD官方给出的例子中结构还是很清晰的,本文仅记录一些要点。        在官方的cdc_acm工程中,程序会一直等待直到USB枚举成功后才会执行下一步骤。同时,在这个demo中,USB数据的收、发都需要在main的死循环中进行,主要逻辑如下所示:intmain(void){......while(USBD_CONFIGURED!=usbd_cdc.cur

单片机毕业设计|基于stm32智能快递箱设计

作者主页:编程指南针作者简介:Java领域优质创作者、CSDN博客专家、CSDN内容合伙人、掘金特邀作者、阿里云博客专家、51CTO特邀作者、多年架构师设计经验、腾讯课堂常驻讲师主要内容:Java项目、Python项目、前端项目、人工智能与大数据、简历模板、学习资料、面试题库、技术互助收藏点赞不迷路 关注作者有好处文末获取源码 项目编号:BS-DPJ-005一,环境介绍语言环境:C语言开发技术:51单片机二,项目简介随在当今的社会,网上购物以及线下获取快递己经成为日常生活中很重要的一个组成部分,电子商务的发展也带来了快递业的繁荣。这对快递业而言,是一个巨大的发展机遇,同时也是一个不可忽视的挑战

【STM32学习】——ADC模数转换器&外挂式/STM32的逐次逼近型ADC&输入通道/转换模式/触发控制/数据对齐/转换时间/校准&AD单/多通道实操

文章目录前言一、ADC简介1.概述2.图示详解1.外挂式逐次逼近型ADC2.STM32的逐次逼近型ADC二、细节之处1.输入通道2.四种转换模式(规则组)3.触发控制4.数据对齐5.转换时间6.校准7.硬件电路三、实操案例1.AD单通道2.AD多通道总结声明:学习笔记根据b站江科大自化协stm32入门教程编辑,仅供学习交流使用!注意:本文9920字,阅读大约需要15分钟,请耐心会收获满满!前言本次学习有两个实操程序,第一个程序为AD单通道,第二个为AD多通道STM32的ADC为12位,AD最大值是4095,对应最大电压3.3V,可对0-3.3v之间的任意电压量化,所以ADC相当于一个电压表。而

MySQL ODBC 连接器是 32 位还是 64 位?

我想要一个32位应用程序(在Windows764位上运行)通过ODBC连接到MySQL564位。MySQLODBC连接器必须是32位还是64位?MySQLODBC连接器的寄存器大小是否必须与应用程序或MySQL的相匹配?Windows764位可以处理32位和64位连接器-所以这无关紧要。 最佳答案 (通过R32位和64位/Windows764位/MySQL532位验证。)只有通过ODBC适配器连接的应用程序架构(32位或64位)才是重要的,并且必须与之匹配。Windows764位可以处理32位和64位ODBC连接器(尽管不同的数据源

ESP32系列教程之空中升级OTA

文章目录准备工作空中升级OTA代码说明注意事项1.远程固件链接需为http协议2.远程链接确保为ESP32编译后固件附录1ESP32空中升级OTA完整代码附录2如何编译生成.bin升级固件PlatformIO编译生成.bin固件ArduinoIDE编译生成.bin固件准备工作配置好开发环境,本文是基于VSCODE+PlatformIO一个可用于联网的WiFi编译一个.bin固件升级程序,并上传得到一个http网址。首先编写一个程序,每隔1s打印helloworld!,并生成.bin升级固件。关于如何编译生成.bin升级固件,详见附录。#includevoidsetup(){//putyours

小米微电机STM32 HAL库驱动教程

目录一、相关资料二、驱动代码MI_motor_dev.h头文件:MI_motor_dev.c源文件:重定义can中断回调:三、使用过程一、相关资料电机图纸、上位机、电机固件等可以找客服下载,这里给出使用说明书的分享链接(建议阅读)文档链接:https://pan.baidu.com/s/1a9X6wEsewXEyym9UU40qYw?pwd=2023 提取码:2023二、驱动代码根据文档写出电机驱动文件如下(经测试可用):MI_motor_dev.h头文件:#ifndefMI_DEV_H#defineMI_DEV_H#ifdef__cplusplusextern"C"{#endif#inclu

STM32---CAN

目录一.CAN协议简介二.CAN物理层三.CAN的协议层1.位时序2.CAN的报文四.CAN外设1.主控制寄存器CAN_MCR2.位时序寄存器CAN_BTR3.CAN的发送邮箱 4.CAN的接收FIFO5.验收筛选器五.CAN库函数相关结构体1.初始化GPIO结构体:2.初始化CAN结构体3.发送及接收结构体4.筛选器结构体六.写代码易出错点:一.CAN协议简介CAN是ControllerAreaNetwork的缩写。它具有高可靠性和错误检查能力,广泛应用在汽车计算机控制系统和环境恶劣,电磁辐射强及振动大的工业环境。二.CAN物理层CAN是异步通讯,半双工。有CAN_High和CAN_Low两

【STM32】的延时函数

目录前言一、1.for/while循环延时2.汇编延时3.SYSTICK定时器延时SYSTICK相关寄存器总结前言        延时函数是嵌入式中最常用到的测试手段,发现有许多方式可以达到延时的目的,所以这里做一点小总结。一、1.for/while循环延时代码如下:#defineSystemCoreClock(26000000U)//时钟频率26Mvoiddelay(inttime){for(inti=0;i时间公式:延时=time*2*机器周期*指令周期*(1/26M)链接:*2的原因2.汇编延时代码如下:/*汇编延时*/#defineSystemCoreClock(26000000U)/

STM32CUBE 安装报错 Error! Can‘t initialize plug-ins directory. Please try again later.

本文针对用户名(即USER)含中文导致报错的情况问题原因:Stm32Cube安装位置默认为C:\user\(用户名)\...\temp解决方案一、打开环境变量二、编辑用户变量中的Temp,Tmp打开C盘的用户(User)文件夹搜索Temp打开带有公用的Temp文件并复制地址替换带有中午的地址就行了!问题原因:Stm32Cube安装位置默认为C:\user\(用户名)…\temp解决方案一、打开环境变量二、编辑用户变量中的Temp,Tmp打开C盘的用户(User)文件夹搜索Temp打开带有公用的Temp文件并复制地址替换带有中午的地址就行了!