草庐IT

智能小车红外测速模块的使用方法(基于STM32的标准库)

基于STM32标准库编程实现智能小车的红外测速所需掌握的知识:(1)外部中断的配置(2)定时器的配置(3)串口的配置红外测速的核心思路:(1)红外测速模通电后,会发出红外线,利用测速盘对红外线进行遮光,使测速模块连接STM32的中断引脚触发中断。每次发生中断,就进入一次中断服务函数,对遮光次数进行累加并记录。(2)配置定时器为0.01s触发一次中断,每次中断程序自动进入定时器的中断服务函数,设置一个定时器中断次数的计数值,使用if语句判断定时器中断次数如果为100次,即为1s的时间定时,就进行速度的处理。(3)计算公式:路程=[(总遮光次数/测速盘孔数)*2πR/1000]注意事项:(1)总遮

【STM32】CRC(循环冗余校验)

一、CRC的背景知识1、什么是CRC(1)CRC(CyclicRedundancyCheck),循环冗余校验(2)什么是校验,为什么需要校验:数据传输,数据存储过程中需要使用到的(3)什么是冗余:表示比实际上要传输的数据还要多(4)校验实现的关键:冗余少、运算少、识错纠错能力强(有些算法只能识别错误但是无法纠错)2、CRC原理介绍(1)(N,K)码:N=K(数据信息)+R(校验码),K位信息码,R位校验码,N位总信息长度(2)CRC多项式:由K位信息码计算得到R位校验码的算法,以移位(左移,右移)和mod2(取余)为主的叠加3、CRC的实现方法:软件OR硬件(1)纯软件实现,靠CPU的运算能力

【雕爷学编程】Arduino智能家居之ESP32-CAM模块实现WebSocket实时监控

Arduino是一个开放源码的电子原型平台,它可以让你用简单的硬件和软件来创建各种互动的项目。Arduino的核心是一个微控制器板,它可以通过一系列的引脚来连接各种传感器、执行器、显示器等外部设备。Arduino的编程是基于C/C++语言的,你可以使用ArduinoIDE(集成开发环境)来编写、编译和上传代码到Arduino板上。Arduino还有一个丰富的库和社区,你可以利用它们来扩展Arduino的功能和学习Arduino的知识。Arduino的特点是:开放源码:Arduino的硬件和软件都是开放源码的,你可以自由地修改、复制和分享它们。易用:Arduino的硬件和软件都是为初学者和非专业

STM32定时中断具体配置讲解(定时1s触发中断为例)(有待更新)

        这里介绍一下STM32定时中断。    有时候我们需要用到定时或者计数功能,这时候就需要用到定时器了,通俗地讲就是我们可以通过调节它的本身主频率来得到我们需要的频率大小,进而设定时间,也可以配置外部计数的模式使用外部计数。    这里以STM32F103C8T6为例,该单片机拥有四个定时器,其中包括一个高级定时器TIM1,通用定时器TIM2,TIM3,TIM4,我们用TIM2进行代码编写。    首先进行定时器的初始化配置,具体配置见下面所附代码,讲解一下部分比较难懂的地方,这里说明一下TIM2是APB1总线外设,所以开启APB1,其余定时器的总线查看以下数据手册。    配置

学习笔记|串口通信的基础知识|同步/异步|RS232|常见的串口软件的参数|STC32G单片机视频开发教程(冲哥)|第二十集:串口通信基础

目录1.串口通信的基础知识串口通信(SerialCommunication)同步/异步?全双工?常见的串口软件的参数2.STC32的串口通信实现原理引脚选择:实现分时复用模式选择串口1模式1,模式1波特率计算公式3.串口通信代码实现编写串口1通信程序15.5.4串口2使用定时器2做波特率发生器新建工程16.串口2通信错误排查及代码分析总结课后练习:1.串口通信的基础知识百度百科:串口通信的概念什么是通信?例如U盘和电脑,我们电脑需要往U盘存东西,而U盘上只有四个触点,除去一个电源一个地,只剩下两个引脚了。此时我们坑定不能像点亮LED那样单纯的给他两个引脚上输出个高低电平就能写数据了对吧。总不至

stm32项目(3)——基于stm32的火焰检测器

目录1.功能描述2.功能演示视频3.实现方案3.1.火焰传感器3.2.蜂鸣器模块 3.3.LED灯4.程序分析5.课题意义6.发展前景1.功能描述本次设计的火焰检测器功能如下:    使用火焰传感器检测火焰强度,检测到火焰时,如果火焰强度没有超过阈值,那么就用一行中文提示“检测到火焰”。蜂鸣器不响,LED灯不亮。如果火焰强度超过了设定的阈值,那么LED亮,蜂鸣器响,在显示“检测到火焰”的同时在TFT液晶屏幕上显示火焰报警相关的图片,图片要用一个圆形包裹起来。此外,屏幕第一行实时显示火焰强度数值,当强度超过阈值,显示“fireover”    本次设计使用正点原子的mini板实现。    实现的

STM32项目--基于STM32的办公室安保(智能家居)系统设计

基于嵌入式系统的办公室安保系统设计简介设计一套基于STM32的办公室安防系统,系统内部包括门禁系统、灾害报警系统、人脸识别系统和交互中心四个子系统。门禁系统:主要实现对门禁卡的存储和读取并识别已存储卡片的信息并控制开门,如读取卡片为未存储卡片则报警。灾害探测:系统本项目简单化使用了温湿度传感器和烟雾浓度传感器来采集外界的温湿度和烟雾浓度并传输告警信号。人脸识别:可存储人脸信息并识别,如检测为以存储的面部则打开门锁。交互中心:将STM32单片采集的数据通过WiFi模块上传到onenet平台,通过编写一个简单的小程序来获取温湿度和烟雾传感器的数值和门锁状态。硬件准备STM32单片机采用的STM32

(三)Keil安装芯片包、下载固件库、建立STM32工程模板

目录一、首先在Keil软件上安装好芯片包二、下载官方固件库三、建立基于固件库的Keil5工程模板一、首先在Keil软件上安装好芯片包        STM32有很多系列的芯片,我们平常用的最多的是STM32F1系列的,因此安装F1系列的芯片包在我们初学时,只按照人家下载好的来进行安装,现我们可以自行安装想要的系列的芯片包。以下就是关键步骤:        ①打开Keil软件,点击红框中的魔术棒        ②点击红框中的Device,可以看到我之前安装好的F1系列的芯片包,现我们手里的芯片不再是F1系列的芯片,想要开发F0系列的芯片,就需要安装F0系列的芯片包        ③若想要安装F0

STM32算法

1.通过编码器对返回的错误速度进行滤波#defineMOTOR_BUFF_CIRCLE_SIZE4#defineSTATIC_ENCODER_VALUE6int32_tLMotor_Encoder_buff[MOTOR_BUFF_CIRCLE_SIZE]={0};uint8_tLEindex=0;int32_tLMotor_Encoder_last=0;int32_tL_Encoder_change=0;int32_tRMotor_Encoder_buff[MOTOR_BUFF_CIRCLE_SIZE]={0};uint8_tREindex=0;int32_tRMotor_Encoder_la

STM32+AD7124+热电偶方案+Pt100冷端补偿解析工程源码

STM32+AD7124+热电偶方案+Pt100冷端补偿解析工程源码,源码包含Pt100、NTC热敏、热电偶处理驱动源码,支持热电偶类型T、J、E、N、K、B、如果用于别的R、S8种类型,并有Pt100测温方案原理图,含三线制,四线制三线制双恒流源比例法,消除导线电阻误差以下是一篇针对您提供的主题的中文技术文章,供您参考:STM32+AD7124+热电偶方案+Pt100冷端补偿解析工程源码在本文中,我们将深入探讨一个综合性强的技术方案,即STM32微控制器、AD7124模数转换器、热电偶测量以及Pt100冷端补偿的解析工程源码。这个系统充分利用了这些组件的特性,实现了一个高效、可靠、精确的温度