文章目录超声波测距原理HC-SR04工作原理STM32实现驱动1.引脚的配置2.时序控制3.时间差测量4.如何将距离测出来 超声波测距原理利用HC-SR04超声波测距模块可以实现比较精确的直线测距,其测距原理图如下: HC-SR04的一端发出超声波,接触到反射物后反射,被另一个端口接收到,所以只要知道发射和接收的时间差,就可以根据声波传播的速率算出HC-SR04和反射物直接的
转载
2024-10-12 16:30:30
90阅读
一、实验工具:STM32开发板一块、L298N电机驱动、直流电机以及用到的软件(STM32CubeMX、keil4) 二、编码器原理1.概述:编码器是一种将角位移或者角速度转换成一串电数字脉冲的旋转式传感器。编码器又分为光电编码器和霍尔编码器,我们这里用到的是霍尔编码器。2.霍尔编码器工作原理:一种通过磁电转换将输出的机械几何位移量转换成脉冲或数字量的传感器,霍尔编码器室友霍尔马盘和霍尔
转载
2024-09-25 08:19:37
244阅读
目前国内工业自动化水平不断提高,工程机械、机床设备等面向自动化的同时,对控制系统的精度要求也越来越严格。在所有使用到液压的机械和设备中,液压缸是必不可少的部件,并且承载着重要的液压转换功能。而液压缸的位移检测在精确控制中占有关键的地位。如今,国内在这一领域的研究和开发工作并没有国外那么先进,大多数的技术只能进行液压缸的位置点发讯和小行程位移的测量,在长行程或要求测量精度及可靠性高的场合有些捉襟见肘
简介:1、中断系统中断:在主程序运行过程中,出现了特定的中断触发条件(中断源),使得CPU暂停当前正在运行的程序,转而去处理中断程序,处理完成后又返回原来被暂停的位置继续运行中断优先级:当有多个中断源同时申请中断时,CPU会根据中断源的轻重缓急进行裁决,优先响应更加紧急的中断源中断嵌套:当一个中断程序正在运行时,又有新的更高优先级的中断源申请中断,CPU再次暂停当前中断程序,转而去处理新的中断程序
转载
2024-07-11 11:32:52
422阅读
目录说明一、霍尔电机1.1、电机的种类1.2、霍尔传感器1.3、SimpleFOC的霍尔电机控制原理二、电机驱动板1032.1、读取霍尔角度2.2、驱动霍尔电机M12.3、驱动霍尔电机M22.4、驱动双霍尔电机三、电机驱动板4053.1、读取霍尔角度3.2、驱动霍尔电机M03.3、驱动霍尔电机M13.4、驱动双霍尔电机四、总结 SimpleFOC、ODrive和VESC 教程链接汇总:请点
IAP:在线升级代码 ,通俗的讲就是通过USART,IIC,或者SPI,USB等等,方式,在程序中升级程序,一般用在远程升级,或者是在PCB板子都安装到模具之后还需要升级代码,这样我们就需要,通过IAP的方式来升级。软件代码托管码云地址:https://gitee.com/zyzp/stm32UartIAP开发环境:MDK-V5,stm32cubeMx,SecureCRT8硬件平台:stm32f1
转载
2024-05-09 11:06:52
62阅读
在上一课中,我们已经建立STM32的开发环境,在这一课中我们要学习如何建立一个简单的工程。这第一个程序是一个最简单的程序,也就是所有程序员都知道的Hello World程序,它的功能是可以打印出Hello World。就算是比尔盖茨或者乔布斯当初学软件时也是从这个程序开始的。首先我们打开cubemx, 打开File->New Project,选择单片机型号为stm32f103RC
这个项目主要是将各类传感器的上报的数据通过WIFI模块上报值阿里云服务器,然后用其配套的云智能APP在手机上显示出来,便且可以控制I/O的开关。对于传感器上报的数据设置了阈值报警和自动处理操作,还可以语音控制相关的I/O的开关。所以用到了很多定时器、ADC、中断的操作。主函数main.c#include "stm32f10x.h"
#include "main.h"
#incl
转载
2024-07-03 07:07:10
616阅读
1评论
目录1. 输入捕获PWM介绍2. 硬件设计3. CubeMX配置4. 软件设计5. 实验现象1. 输入捕获PWM介绍 输入信号从一个外部接口输入,例如CH1,TI1经过输入滤波器和边沿检测器后,输出TI1FP1和TI1FP2两个副本,分别捕获PWM的上升沿和下降沿:该模式是输入捕获模式的一个特例,除下列区别外,操作与输入捕获模式相同:● 两个ICx信号被映射至同一个TIx输入。● 这2个
STM32CUBEIDE.7----USART收发配置概述样品申请视频教学生成例程STM32CUBEIDE配置串口重定向串口发送接收函数HAL_UART_Transmit()发送HAL_UART_Transmit_IT()发送HAL_UART_Transmit()和HAL_UART_Transmit_IT()对比HAL_UART_Receive()接收HAL_UART_Receive_IT()接
最近因为工作需要使用到了STM32F407VET6的USB_OTG_FS作为虚拟串口。 之前用STM32 CubeMX生成过STM32F103C8T6的虚拟串口代码,感觉用起来很方便,于是这次的F407也用MX生产工程,奈何竟然遇到诸多难题,整整困扰了两天。 先说一下我的流程。MX生成F407 USB虚拟串口工程操作流程1,选择芯片先是利用条件筛选选择自己的芯片,如下图:2,配置管脚配置RCC
STM32的通信接口STM32主要用的通信接口有USART、IIC、SPI、USB、CAN。这些通信接口的主要目的是将设备的数据传送到另一个设备,扩展硬件系统。 在串口通信中有着TTL、RS232、RS485等电平标准。其中TTL和RS485都为正逻辑,只有RS232为负电压表示1,正电压表示0.TTL:+3.3V或+5V表示1,0V表示0.RS232:-3V—— -15V表示1,+3V——+15
转载
2024-03-16 08:57:46
330阅读
目录说明一、ABZ编码器介绍1.1、ABZ信号1.2、光电式编码器1.3、磁编码器1.4、差分信号二、电机驱动板1032.1、读ABZ信号的cpr2.1.1、接线2.1.2、编译,下载代码2.1.3、转动电机,观察串口打印2.2、驱动ABZ电机M12.2.1、接线2.2.2、修改代码2.2.3、串口发送指令,观察电机运行2.3、驱动ABZ电机M22.4、驱动双ABZ电机三、电机驱动板405四、总
目录目录一、第一个汇编程序的创建过程(基于MDK)二、HEX文件格式的分析说明三、汇编语言"hello_world"程序——LED灯闪烁四、总结五、参考文献一、第一个汇编程序的创建过程(基于MDK)1、双击打开keil_uVsion5(也叫MDK),进入软件界面2、找到左上角的project后下拉选择new_uVsion_project新建工程项目,项目名可自行定义,此处我
红外寻迹传感器驱动红外寻迹传感器具有一对红外线发射管与接收管,发射管发射出一定频率的红外线,当检测方向遇到障碍物(反射面)时,红外线反射回来被接收管接收,经过比较器电路处理之后,输出接口会输出一个数字信号(低电平或高电平,取决于电路设计),有效范围一般为2~30CM。传感器主动红外反射探测,因此反射率和形状是探测距离的关键。其中黑色探测距离小,白色距离大;小面积物体距离小,大面积距离大。本实例将演
STM32基础知识3-STM32串口USART1的使用方法和程序 通用同步异步收发器(USART)提供了一种灵活的方法来与使用工业标准NR 异步串行数据格式的外部设备之间进行全双工数据交换。 USART利用分数波特率发生器提供宽范围的波特率选择,支持同步单向通信和半双工单线通信。 1、STM32固件库使用外围设备的主要思路 在STM32中,外围设备的配置思路比较固定。首先是使能相关的时钟,一方面是
转载
2024-09-12 20:32:36
55阅读
文章目录ADC+TIM+DMA采集交流前言模式简介工程建立时钟配置ADC配置配置串口代码生成代码编写串口重定向ADC采集代码硬件连接运行结果练习后记 模式简介ADC+TIM+DMA采集交流信号是电赛中使用范围最为广泛的一个技术。这个模式下单个ADC可以实现0-1M的任意可调采样率,采集20khz一下的信号轻轻松松。F1的ADC支持许多触发信号,这里选择TIM3的TRGO事件作为触发信号
第五十八章 USB 鼠标键盘(Host)实验上一章我们向大家介绍了如何利用 STM32F767 的 USB HOST 接口来驱动 U 盘,本章,我们将利用 STM32F767 的 USB HOST 来驱动 USB 鼠标/键盘。本章分为如下几个部分:58.1 USB 鼠标键盘简介58.2 硬件设计58.3 软件设计58.4 下载验证58.1 USB 鼠标键盘简介传统的鼠标和键盘是采用 PS/2 接口
经过具体实验可知,以前思学师哥的程序中有ADC开始DMA采集和停止DMA采集两个函数,可以理解成消抖,因为采集频率过快数据可能会发飘。 硬石资料如下 配置要求一定要在mode处勾选circular ,数据宽度一定要选择“Word” 根据实验只需要将ADC的DMA通道采集打开,无需关闭即可采集成功,而且数据比较稳定,这样为快速傅里叶变换做出了准备。经过一下午的实验可知ADC采集周期过短的时候在同时
一、DAC简介DAC(Digital-to-Analog Converter),即数字/模拟转换模块,故名思议,它的作用就是把输入的数字编码,转换成对应的模拟电压输出,它的功能与 ADC 相反。在常见的数字信号系统中,大部分传感器信号被化成电压信号,而 ADC 把电压模拟信号转换成易于计算机存储、处理的数字编码,由计算机处理完成后,再由 DAC 输出电压模拟信号,该电压模拟信号常用来驱动某些执行器