自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 SPI通讯指南

单主多从模式,即主设备的SCLK和MOSI连接到每个从设备的相应引脚,从设备的MISO连接到主设备的MISO引脚,每个从设备有独立的SS引脚与主设备连接,主设备通过选择SS来选择要与之通信的从设备。然后,主设备通过MOSI线将数据发送到第一个从设备,第一个从设备接收到数据后,将其通过MISO线传输给第二个从设备,这样,数据从一个从设备级联传输到下一个从设备,直到传输到最后一个从设备。从第一个从设备的MISO连接到第二个从设备的MOSI,以此类推,直到最后一个从设备的MISO。

2024-07-18 16:39:11 1

原创 有毒环境气体监测系统

首先,在硬件设计方面,我们选用了高质量的元器件和合理的电路布局,减少了干扰和噪声的影响。其次,在软件设计方面,我们采用了高效的数据处理算法和通信协议,提高了数据传输的速度和稳定性。这样,每个订阅了该主题的用户都能够实时接收到最新的数据,实现了数据的实时共享和监控。本研究旨在深入探讨有毒环境气体监测系统的核心技术、工作原理及应用情况,分析其存在的问题与不足,并提出相应的优化和改进措施。同时,系统还具备可扩展性,可以根据用户需求添加更多的传感器和功能模块,实现更广泛的应用场景。1.开时钟,分频,配IO。

2024-07-18 16:34:00 457

原创 实时时钟功能实现:STM32微控制器的嵌入式应用

本文介绍了基于STM32微控制器的实时时钟系统的设计与实现。该系统不仅能够提供精确的时间信息,还能够在低功耗模式下长时间运行,非常适合需要时间监控的嵌入式应用。未来,我们计划增加网络时间同步功能,进一步提高系统的实用性和准确性。

2024-07-07 15:21:16 285

原创 步进电机控制:STM32微控制器的实践应用

本文介绍了基于STM32微控制器的步进电机控制系统的设计和实现。通过精确的PWM控制和灵活的通信接口,系统能够满足多种自动化控制需求。未来,我们计划增加更复杂的运动控制算法,以扩展系统的功能和应用范围。

2024-07-07 15:19:51 388

原创 构建智能家居:STM32在智能家居控制系统中的应用

通过本文的介绍,我们成功实现了一个基于STM32的智能家居控制系统。该系统不仅能够实现远程控制和环境监测,还具备安全监控功能,为用户提供了一个安全、便捷、舒适的智能家居环境。未来,我们将继续优化系统性能,并探索更多的智能设备集成方案。

2024-07-07 15:18:21 432

原创 深入探索STM32:打造智能温度监控系统

通过本文的介绍,我们成功实现了一个基于STM32的智能温度监控系统。该系统能够满足实时监控、数据存储和远程访问的需求,同时保持低功耗运行。未来,我们计划增加更多的传感器和功能,使系统更加智能化和自动化。

2024-07-07 15:17:02 285

原创 STM32第八课:Su-03t语音识别模块

将kqm处理后的数据进行外部声明,再判断头尾的固定值,查看是否有误,然后进行数据类型标志位判断,判断收到的指令要播报那个数据,最后记得释放结构体,防止重复播报。6. 制作指令拼接函数,其中要将空气质量的double数据转换为8位16进制的。1.先去智能公元的官网设计所需的语音指令和接口,本例程选取的以串口5 PC12(TX)和PD2(RX)进行数据的通信。由于该串口接收的空气质量数据为double类型,而传输类型为8字节16进制,所以此时需要进行数据转换。硬件层和协议层以及识别的语音指令也是由固件决定的。

2024-07-07 15:00:09 232

原创 STM32第十二课:ADC检测烟雾浓度(MQ2)

可用于家庭和工厂的气体泄漏监测装置, 适宜于液化气、丁烷、丙烷、甲烷、酒精、氢气、烟雾等的探测。广泛的探测范围,高灵敏度,快速响应恢复,优异的稳定性,寿命长以及简单的驱动电路。该模块使用的引脚为PC1/ADC123_IN11,所以接下来我们要配置PC1。由于该模块的实现流程和ADC光照采集几乎一样,下面使用库函数的方式来编写。烟雾检测模块是获得一个模拟量,所以接引脚模式配置为模拟输入。依旧是先转换一次,再while等待转换完成,最后读取打印。没什么好说的,该部分可有可无,想严谨点的话就加上。

2024-07-07 14:55:51 238

原创 STM32:DHT11温湿度传感器(含源码)

它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有枀高的可靠性与卓越的长期稳定性。由于该模块发送的数据为高低电平信号,并且是根据高电平持续时间的不同来判断究竟是高电平还是低电平,此时我们只需要加个延迟,比差值大 ,比74us小即可,此处我用的是45us。根据该模块手册中的数据时序图可知:该引脚需要既能输入也能输出,所以为了能够同时满足输入和输出,我们将PG11引脚配置成开漏模式。由原理图可知该模块连接的是stm32的PG11引脚所以此时我们只需要配置PG11的引脚即可。

2024-07-07 14:43:58 985

原创 STM32:PWM波(含源码)

脉冲宽度调制(PWM),是英文“Pulse Width Modulation”的缩写,简称脉宽调制,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中。接下来就是设置有效电平了,此处的彩灯是低电平亮,所以我们要设置为低电平有效。6.定时器通道选择一下比较模式,为防止突变,再设置一下定时器和装载值的缓冲,最后使能计数器。先配置默认比较值,一般置为0,使占空比为0,不让引脚有效。B对应的是PA6引脚,TIM3定时器,通道为1。

2024-07-07 14:35:17 1127

原创 AI是在帮助开发者还是取代他们?

开发者需要规划自己的职业发展,考虑如何将AI工具整合到自己的工作流程中,并思考如何在AI时代保持自己的独特价值。此外,随着AI的普及,开发者可能需要掌握新的技能,如机器学习和数据分析,以便更好地利用AI工具。总之,AI在帮助开发者提高效率和质量的同时,也在推动他们适应新的工作方式和学习新技能。开发者应该看到AI作为合作伙伴,而不是替代者,利用AI的力量来提升自己的工作,并在不断变化的技术环境中保持领先。为了在AI辅助的环境中保持竞争力,开发者应该专注于提高自己的创造力、问题解决能力和对业务逻辑的深入理解。

2024-07-06 15:10:37 209

原创 STM32:ADC采集光照(含完整源码)

下面就要进行分频了,由于本次使用的ADC的特征为12分辨率,而APB2所传输的频率为72M,所以此时我们要进行6分频(72 ÷ 6 = 12)可以看到,每一次转换结束时,ADC_SR寄存器的第一位就会置1,并且不用我们去清零,每当我们去ADC_DR读取数据时,就会自动清除。最后进行PA5引脚的模式配置,由于要获得该引脚的电压值,而该电压值为动态变化的模拟量,所以此处要将模式置为模拟输入模式(0000)由该电路可知VAL测量的是该光敏电阻的分压,而随着光照的变化,该光敏电阻的电压也会发生实时的波动。

2024-07-06 14:59:43 1108

原创 STM32 定时器初始化函数+代码

设置定时器的时钟源:通过RCC寄存器设置定时器的时钟源。设置定时器的工作模式:通过TIM_CR1寄存器设置定时器的工作模式。设置定时器的预分频值:通过TIM_PSC寄存器设置定时器的预分频值,用于将时钟源的频率分频为定时器的计数频率。设置定时器的自动重装载值:通过TIM_ARR寄存器设置定时器的自动重装载值,用于设定定时器的计数周期。设置定时器的计数方向:通过TIM_CR1寄存器设置定时器的计数方向。可以选择向上计数或向下计数。启动定时器:通过TIM_CR1寄存器设置定时器的使能位,启动定时器开始计数。

2024-07-03 14:29:14 343

原创 stm32中用dma方式采集adc代码怎么写?

循环中对采样数据进行处理。注意,在使用DMA进行数据传输时,需要先对DMA进行配置,然后使能ADC的DMA传输功能。这段代码实现了ADC的单次采样,并使用DMA将采样数据传输到数组。每次采样结束后,可以在。

2024-07-03 14:28:32 534

原创 stm32使用io口测电压+源码

4.将读取到的引脚输入状态转换为电压值。这可以通过一些数学公式来完成,具体取决于你的硬件配置。例如,如果你连接了一个固定电阻分压器,你可以使用简单的电压分压公式来计算电压值。2.将引脚设置为输入模式,以便读取外部电压。你可以使用GPIO_Init()函数来初始化引脚。3.在主循环中,使用GPIO_ReadInputDataBit()函数来读取引脚的输入状态。1.选择一个合适的IO口作为测量电压的引脚。

2024-07-02 16:31:16 553

原创 stm32实现闹钟功能+源码

要实现闹钟功能,可以使用STM32的定时器模块。以上是实现闹钟功能的一个简单例子。根据具体需求,可以进一步优化和扩展。

2024-07-02 16:29:40 396

原创 位与(&)、位或(|)、异或(^) 、左移<<、右移>>、原码、反码、补码的简单应用

所以,为区别起见,将带符号位的机器数对应的真正数值称为机器数的真值。例:0000 0001的真值 = +000 0001 = +1,1000 0001的真值 = –000 0001 = –1。(2)取一个数的指定位:找一个数,对应X要取的位,该数的对应位为1,其余位为零,此数与X进行“与运算”可以得到X中的指定位。常用来对一个数据的某些位置1:找到一个数,对应X要置1的位,该数的对应位为1,其余位为零。(1)使特定位翻转找一个数,对应X要翻转的各位,该数的对应位为1,其余位为零,此数与X对应位异或即可。

2024-06-28 13:27:28 1132

原创 STM32如何配置DMA

一、DMA简介1、DMA简介DMA(Direct Memory Access:直接内存存取)是一种可以大大减轻CPU工作量的数据转移方式。CPU有转移数据、计算、控制程序转移等很多功能,但其实转移数据(尤其是转移大量数据)是 可以不需要CPU参与。比如希望外设A的数据拷贝到外设B,只要给两种外设提供一条数据通路,再加上一些控制转移的部件就可以完成数据的拷贝。DMA就是基于以上设想设计的,它的作用就是解决大量数据转移过度消耗CPU资源的问题。有了DMA使CPU更专注于更加实用的操作–计算、控制等。

2024-06-28 13:20:21 576

原创 【STM32进阶-RTC时钟应用的详细步骤+源码】

简介RTC (Real Time Clock):实时时钟STM32 的 RTC 外设,实质是一个掉电后还继续运行的定时器。RTC是个独立的BCD定时器/计数器。提供一个日历时钟,两个可编程闹钟中断,以及一个具有中断功能的周期性可编程唤醒标志。RTC还包含用于管理低功耗模式的自动唤醒单元。两个32位寄存器包含二进码十进制格式(BCD)的秒,分钟,小时(12或24小时制),星期几,日期,月份和年份。此外,还可以提供二进制的亚秒值。系统可以自动将月份的天数补偿为28,29(闰年),30,31天。

2024-06-27 10:57:29 1169

原创 【GPT-5 一年半后发布?对此你有何期待?】

6. **参数规模的增长**:GPT-5具有超过1万亿个参数,这是一个巨大的飞跃,相比之下,GPT-3的参数规模为1750亿个。4. **数据管理和治理**:建立健全的数据管理和治理机制,确保数据的质量和安全,为AI系统的训练和决策提供可靠的数据基础。1. **更深层次的语义理解**:GPT-5有望通过更先进的深度学习算法和更大规模的数据训练,显著提升对语义的理解能力。9. **风险管理和应对策略**:识别和评估AI技术可能带来的风险,并制定相应的管理和应对策略,以减少潜在的负面影响。

2024-06-27 10:47:10 509

原创 STM32 HAL库 SPI 驱动LISDHTR+源码

一款低功耗加速度计LIS3DH,该加速度计有两种通信模式,IIC和SPI方式。IIC通信方式搞了一下 就好了,但是SPI方式针扎了两天才做出来,现在和大家分享一下心得。开发环境:MDK keil5使用芯片:STM32L051C8T6使用硬件:SPI1,PA4=CS,PA5=CLK,PA6=SDO,PA7=SDASPI驱动LIS3DHTR分为三线驱动和四线驱动。从上图中可以看出当SPI读写前,先要将自己设置的CS引脚拉低,我自己在cubemx中将PA4设为CS引脚(这个可以自己设置没有要求)。

2024-06-27 10:41:13 790

原创 HC-SR04使用指南(STM32+源码)

如果接收到它们,它将产生一个输出脉冲,其宽度可用于确定脉冲传播的距离。脉冲的长度与检测发射信号所需的时间成正比,下面例程中用的GPIOB6,所以连接STM32的GPIOB6。Trig (Trigger) 引脚用于触发超声波脉冲,下面例程中用的GPIOB5,所以连接STM32的GPIOB5。本文用的单片机是STM32F103C8T6,超声波测距模块是HC-SR04,显示距离是通过上位机显示。八个超声波脉冲通过空气传播,远离发射器。VCC 是HC-SR04超声波距离传感器的电源,我们连接了5V的供电。

2024-06-27 10:36:19 919

原创 STM32+DHT11温湿度传感器(含完整代码)

之所以是40微秒是因为传感器数字0的信号持续时间为26-28us,数字1的信号持续时间为70us,选择一个中值来区分两种信号,当然也可以选择其他值,但最好在40us附近,在while循环中选择循环100次也就是100us,是因为防止当单片机由于某些原因迟迟收不到传感器电平信号,造成死机。读取数据将数据存入数组,这里仅保留了温度数据的整数位,注意数据较验方法,校验和数据等于“8bit湿度整数数据+8bit湿度小数数据 +8bi温度整数数据+8bit温度小数数据”所得结果的末8位。恢复处理可以加速恢复过程。

2024-06-27 10:18:52 2527 1

原创 ADC(模数转换器)可以配置为多通道采集模式,以实现同时采集多个模拟信号的功能

配置ADC通道:接下来,需要配置ADC通道,指定要采集的模拟信号对应的GPIO引脚和对应的ADC通道。总的来说,配置STM32 ADC采集转换需要了解硬件的特性和功能,并根据需求进行相应的配置。选择合适的ADC模块:STM32系列微控制器通常提供多种不同的ADC模块,包括单通道、多通道、单次转换和连续转换等。循环采集转换:如果需要连续采集转换,可以在中断中重新配置ADC寄存器,并重新启动转换。配置ADC触发源:确定触发ADC转换的源。配置ADC转换模式:选择所需的转换模式,包括单次转换和连续转换。

2024-06-27 10:14:26 1370

原创 【STM32+PWM+DMA驱动WS2812彩灯模块(附源码)】

WS2812是一颗数字LED灯珠,采用单总线通讯,每颗灯珠支持24bit的颜色控制,也即RGB888,信号线通过DIN输入,经过一颗灯珠之后,信号线上前24bit数据会被该灯珠锁存,之后将剩下的数据信号整形之后通过DOUT输出经典电路C1为VDD的滤波电容,一般大小为100NF。

2024-06-27 10:11:00 1384 1

空空如也

空空如也

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

TA关注的人

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