草庐IT

stm32 产生精准脉冲数PWM

stm32产生精准脉冲数PWMPWM输出TIM高级定时器、通用定时器自带PWM输出功能,难点在于指定脉冲的个数。方法1:产生一个周期的PWM触发一次中断,中断计数实现指定个数PWM,则N个PWM波形,触发N次中断。次类方法看起来看不错,实际应用的时候,当PWM的频率高的时候,程序就会频繁进入中断,导致整个程序的实时性变差。低频的时候可以用,一般频率不超过1KHz,1mS中断一次。方法2:定时器中断法输出PWM的同时,采用高级定时器的重复次数计数器,将脉冲数放在计数器里面,到达个数的时候溢出中断。小结:这个方法比较简单,注意计数器是8位,所以只能计数256个脉冲,需要增加个数的,可以在256个溢

STM32硬件SPI发送超8字节数据格式

stm32单片机的SPI+DMA从机接收_stm32spidma接收_williamlee_的博客-CSDN博客问题原由一般CPU提供的spi接口,支持的是整字节访问,如8bit、16bit等。而非整字节的spi外设(芯片)也是很常见,哪怕是整字节的,很多厂家也是做得与标准spi外设有差别,估计是避开专利问题。而芯片原厂提供的Demo也大多是采用GPIO模拟spi。一般情况下,根据芯片手册说明及访问时序图,可以使用CPU集成的标准硬件spi访问,以提高速度和节约CPU资源。2常用非标spi外设常见的非标spi外设是DAC、ADC,ADI的器件最常见。【1】ADC,常用12bit、14bit、2

基于STM32超声波测距系统设计

基于STM32超声波测距系统设计摘要随着社会的发展和科技的进步,人们对测距的要求越来越高,特别是在一些要求实时测距的场合,传统的测距方式已经无法满足人们的需求,而超声波测距由于其非接触和实时反馈的特点在生活中得到广泛应用。本系统硬件部分由电源模块、控制模块、显示模块、报警模块、超声波模块组成。电源模块的芯片是NCP1117系列芯片,目的是给单片机提供3.3V的稳定电压;控制模块用的是STM32F103C8T6芯片,用于控制整个测距系统的运行;显示模块用的LCD1602显示器,用于显示系统所测的距离的值和报警值,单位mm;报警模块用的是蜂鸣器和LED灯,在系统所测的距离值低于报警值时发出声光警报

stm32 Bootloader设计(YModem协议)

stm32Bootloader设计(YModem协议)Chapter1stm32Bootloader设计(YModem协议)YModem协议:STM32Bootloader软件设计STM32Bootloader使用方法准备工作stm32Bootloader修改:stm32目标板程序.bin偏移地址修改:Chapter2STM32+IAP+Ymodem完美结合一、关于ISP、ICP、IAP1.ISP2.ICP3.IAPIAP通信口二、关于Ymodem协议1.起始帧2.数据帧格式3.结束帧的数据格式三、ST官网IAP例程四、IAP例程几个要点1.例程概要说明2.IAP软件工程3.说明五、APP代码

stm32利用mqtt与小程序通信

stm32利用mqtt与小程序通信stm32连接服务器端小程序连接服务器本项目实现的功能如下:通过stm32连接esp8266,然后利用mqtt协议连接到服务器,同时小程序端也连接到服务器,通过订阅和发布主题来使得这两个客户端能进行数据的传输。stm32连接服务器端本章所用到的器件如下:STM32F103ZET6最小系统板ESP8266-01S模块USB转microUSB数据线四根杜邦线连接如下:32板3.3v----------->ESP8266的3.3v32板GND---------->ESP8266的GND32板的PC10-------->ESP8266的RX32板的PC11------

STM32 基础知识

1.STM32微控制器的核心特性是什么?STM32微控制器是基于ARMCortex-M处理器,它具有高性能处理能力和低功耗的特性,适合用于嵌入式系统STM32系列具有多种多样的内存大小和丰富的内置外设选项,包括多通道ADC,定时器,通信接口UART,SPI,I2C,此外它支持广泛的中断和事件管理,并且提供了复杂的电源管理方案**2.如何配置STM32的GPIO进行数字输入输出?首先我们需要使能GPIO的时钟使用库函数来对GPIO端口进行初始化,比如配置引脚位推挽输出,配置它的速度,配置上下拉电阻最后我们通过寄存器ODR(输出数据寄存器)以及BSRR(置位/复位寄存器)来对引脚输出高低电平3.在

基于STM32的电子时钟设计,代码开源!!!

电子时钟设计前言一、运行环境及硬件参考二、硬件设计1.原理图2.硬件实物三、软件设计3.1VFD驱动原理3.2VFD驱动程序3.2.1驱动指令编写3.2.2屏幕初始化3.2.3显示数字3.2.4定时显示3.3按键3.4esp32获取时间3.4.1wifi模块初始化3.4.2从服务器获取时间四、总结前言使用STM32+ESP32开发一个电子时钟,拥有时钟显示,报警,自动对时等功能的电子时钟一、运行环境及硬件参考MCU:STM32F103通信:串口通信,波特率:115200、数据位:8、停止位:1、校验:None开发软件:keilmdk主要硬件连接:stm32与esp32通过串口相连按键:SLLB

STM32CubeMX安装及使用教程(一)

背景随着芯片行业不断发展,STM32系列芯片不断扩大市场份额。为了方便开发者的不同需求,意法半导体(ST)推出了一款图形化配置工具-STM32CubeMX。STM32CubeMX可以通过图形配置直接导入C语言初始代码,提高了工作效率,大大减轻了因工程配置而带来的烦恼。与此同时,针对不同开发者也更容易开发STM32系列芯片。如果想做一个简易的Demo程序,只需要设置一些相关配置就可以让MCU动起来。软件下载官方链接:STM32CubeMX-STM32Cubeinitializationcodegenerator-STMicroelectronics点击GetSoftware,即可下载最新的 ST

基于STM32_HAL库实现超声波测距

核心板        :STM32F103C8T6。超声波测距模块 :HC-SR04超声波测距模块实验目的      :利用超声波测距,将测量的距离打印在串口并输出。HC-SR04超声波测距模块介绍    接口定义:Vcc、Trig(控制端——PA2)、Echo(接收端——PA11)、Gnd     模块工作原理:采用IO触发测距,给至少10us的高电平信号;模块自动发送8个40khz的方波,自动检测是否有信号返回;有信号返回,通过IO输出一高电平,高电平持续的时间就是超声波从发射到返回的时间,测试距离=(高电平时间*声速(340M/S))/2; 测距方法介绍:    距离=超声波来回的时间/

【小项目】STM32环境监测 | MQ2可燃气体传感器+雨滴传感器+DHT11温湿度传感器+OLED屏幕

目录概述固件编写DHT11温湿度传感器概述代码MQ2可燃气体传感器和雨滴传感器概述ADC外设代码OLED屏幕概述代码main.c文件概述代码总结项目代码下载概述前些阵子参加了广东省电赛,因为疫情的原因比赛不能在线下进行,甚至连回学校调试也不行,于是乎就水了一个省三。备赛的时候,队长给我布置了这个小项目,说有可能会用在比赛的作品中,但实际就不知道了,所以在这里分享一下代码。固件编写这个需求对性能要求不高,像人见人爱、人手一个的STM32F103C8T6也能胜任,但因为我没带回家,所以用了野火的霸道V2开发板。这块开发板用的是STM32F103ZET6芯片。DHT11温湿度传感器概述温湿度传感器玩