STM32
文章平均质量分 76
KINO32
欢迎加入QQ群913070414共同交流学习
展开
-
STM32使用DMA+空闲中断方式实现串口数据接收
(1)DMA:直接存储器存取(DMA)(Direct Memory Access)也是一个挂载在AHB总线上的外设,用来提供在外设和存储器之间或者存储器和存储器之间的高速数据传输。无须CPU干预,数据可以通过DMA快速地移动,这就节省了CPU的资源来做其他操作。两个DMA控制器有12个通道(DMA1有7个通道,DMA2(只存在于大容量和互联网产品中)有5个通道),每个通道专门用来管理来自于一个或多个外设对存储器访问的请求。还有一个仲裁器来协调各个DMA请求的优先权。原创 2024-05-23 21:40:47 · 579 阅读 · 0 评论 -
STM32控制HC-SR04超声模块获取距离
(1)引脚介绍VCC:电源引脚,接单片机3.3/5VGND:电源地Trig:超声信号触发引脚Echo:超声信号接收引脚(2)时序图介绍:通过Trig触发引脚设置一个大于10us的TTL高电平,触发内部循环发送8个40KHZ的超声波,然后通过接收引脚判断接收信号高电平的持续时间,通过声速进行计算来回的距离,如果超过38ms仍未接收到回波也会触发高电平,此时电平持续时间最长。原创 2024-05-23 21:03:01 · 536 阅读 · 0 评论 -
STM32控制DS1302时钟模块获取实时时间
时间记录:2024/4/30。原创 2024-05-01 00:54:15 · 1002 阅读 · 0 评论 -
STM32使用软件SPI协议操作TFT18彩屏
(1)SPI设备通过4根线进行通信,CS片选线,选择从设备,SCK时钟线,由主设备产生时钟,主机MOSI线连从机MISO线,由主机向从机发送信息,主机MISO线连接从机MOSI线,由从机向主机发送信息(2)SPI分为4种通信方式模式0:CPOL=0,CPHA=0,空闲时SCK时钟线为低电平,在奇数边沿进行数据采集,在偶数边沿时进行数据变换,数据采集在上升沿,数据变换在下降沿。原创 2024-02-20 22:18:21 · 2237 阅读 · 0 评论 -
STM32的FLASH操作
(1)flash大小64K,地址0x08000000-0x08010000(2)此芯片内存大小属于中容量产品,根据数据手册可知中容量产品一个扇区的大小为1K(3)我们在这里需要知道的点就是,可以将数据保存在flash中实现掉电保存。原创 2024-02-20 01:02:53 · 1547 阅读 · 1 评论 -
ESP8266-01s通过MQTT协议数据上云
时间记录:2024/2/17。原创 2024-02-18 00:03:31 · 1819 阅读 · 0 评论 -
esp8266-01s WIFI模块使用(一)- AT指令
时间记录:2024/2/15。原创 2024-02-15 23:03:25 · 3321 阅读 · 0 评论 -
STM32的ADC电压采集
时间记录:2024/2/9。原创 2024-02-09 17:47:37 · 3577 阅读 · 0 评论 -
STM32输出PWM波控制180°舵机
(1)脉冲宽度调制(2)占空比:高电平时间占整个周期时间的比例(3)STM32通过定时器实现PWM时具有两种模式PWM1模式:向上计数模式下,CNT当前计数寄存器的值小于CCR比较寄存器的值时输出有效电平,大于时输出无效电平,向下计数模式下,CNT当前计数寄存器的值小于CCR比较寄存器的值时输出无效电平,大于时输出有效电平。原创 2024-02-08 22:16:41 · 1758 阅读 · 0 评论 -
STM32控制JQ8400语音播报模块
标示说明ONE LINE一线操作引脚BUSY忙信号引脚,正在播放语音时输出高电平RX串口两线操作接收引脚TX串口两线操作发送引脚GND电源地引脚DC-5V电源引脚,3.3-5VDAC-RDAC输出右声道引脚DAC-LDAC输出左声道引脚SPK-喇叭-引脚SPK+喇叭+引脚。原创 2024-02-08 02:00:06 · 3148 阅读 · 0 评论 -
STM32通用定时器、计数器
(1)通用定时器时钟频率介绍内部时钟AHB为72MHz,经过APB1预分频器2分频变为36MHz,TIMxClk定时器时钟由时钟树可以看出,如果APB1预分频系数不为1则频率x2,所以频率为72MHz(2)定时时间计算1.2.1 TIMxCLK的频率为72MHz,一个时钟周期时间为1/TIMxCLK=1/72M(s)原创 2024-01-30 22:51:51 · 1211 阅读 · 0 评论 -
STM32控制DHT11温湿度传感器模块获取温湿度数据
(1)VCC:电源引脚,3.3-5.5V(2)DATA:数据输入输出引脚(3)NC:保留引脚,悬空即可(4)GND:电源地引脚(1)一次完整的数据传输为40bit,高位先传(2)40bit数据介绍:8bit湿度整数数据+8bit湿度小数数据+8bit温度整数数据+8bit温度小数数据+8bit校验数据,前四byte数据值相加之和等于校验值。原创 2024-01-29 22:05:48 · 1231 阅读 · 0 评论 -
STM32控制DS18B20温度传感器获取温度
(1)测温范围-55℃~+125℃,在-10℃到+85℃范围内误差为±0.4(2)返回的温度数据为16位二进制数据(3)STM32和DS18B20通信使用单总线协议,仅通过一个端口即可进行通信(4)具有掉电保护功能, DS18B20 内部含有 EEPROM ,通过配置寄存器可以设定数字转换精度和报警温度,在系统掉电以后,它仍可保存分辨率及报警温度的设定值。原创 2024-01-28 23:02:42 · 3856 阅读 · 0 评论 -
STM32实现软件IIC协议操作OLED显示屏(2)
(1)显示分辨率128*64点阵(2)IIC作为从机的地址0x78(3)操作步骤:主机先发送IIC起始信号S,然后发送OLED的地址0x78,然后获取校验位ACK,接着发送控制字节,告诉OLED接下来发送的一个字节数据是指令字节还是数据字节,Co=0,接下来只包含数据,D/C=0时,接下来的是指令字节,D/C=1时,接下来的是数据字节,最后发送一个IIC结束信号1.3.1 写指令代码vIICStop();1.3.2 写数据代码vIICStop();原创 2024-01-27 02:40:15 · 2308 阅读 · 0 评论 -
STM32实现软件IIC协议操作OLED显示屏(1)
(1)协议介绍IIC(又称I2C,Inter-Integrated Circuit),即集成电路总线,是一种两线式串行总线,由PHILIPS公司开发,用于连接微控制器及其外围设备。多用于主机和从机在数据量不大且传输距离短的场合下的主从通信。I2C总线由数据线SDA和时钟线SCL构成通信线路,既可用于发送数据,也可接收数据,是一种半双工通信协议。总线上的主设备与从设备之间以字节(8位)为单位进行双向的数据传输。(2)传输模式标准模式:100K bit/s快速模式:400K bit/s。原创 2024-01-25 21:43:16 · 1558 阅读 · 0 评论 -
STM32使用中断方式进行USART数据收发以及printf函数的重写
欢迎入群共同学习交流时间记录:2024/1/5协议介绍(1)起始位,一位逻辑电平0表示(2)数据位,8-9位,逻辑高低电平,一般使用8位(3)校验位,分为奇校验、偶校验、无校验(4)停止位,0.5、1、1.5、2个逻辑电平1表示(5)波特率,数据传输的速度,1S发送接收的比特位数,常用的115200、9600串口介绍串口1: TX:PA9 RX:PA10串口2: TX:PA2 RX:PA3串口3: TX:PB10 RX:PB11(1)使能GPIO时钟,配置GPI原创 2024-01-05 21:48:13 · 2015 阅读 · 1 评论 -
STM32的位带操作
stm32中支持位带操作的区域分为两部分,均为1MB的大小,分别为SRAM区的最低1MB范围(APB1/2、AHB外设)和片内外设区的最低1MB范围外设位带区与外设位带别名区的地址转换公式:AliasAddr = 0x42000000+ (A-0x40000000)*8*4+n*4SRAM位带区与SRAM位带别名区的地址转换公式:AliasAddr = 0x22000000+ (A-0x20000000)*8*4 +n*4使用位带的原因,可以像51一样,直接设置单个端口的电平状态为0或1。原创 2024-01-02 22:50:32 · 767 阅读 · 0 评论 -
STM32系统滴答定时器SysTick实现精确ms和us延时
STM32F103C8T6单片机为例,系统时钟为72MHz,则一个时钟周期为(1/72M)秒,即1/72us。3.2 计算延时1us和1ms的时钟周期。3.7 清除SysTick使能位停止计数。3.5 使能SysTick开始计数。时间记录:2023/12/11。(1)CTRL控制及状态寄存器。(2)LOAD重装载数值寄存器。3.6 循环判断是否到达计数值。3.4 向当前值寄存器写入值。(3)VAL当前数值寄存器。3.3 装入自动重装载值。原创 2023-12-11 23:50:15 · 1758 阅读 · 0 评论 -
STM32单片机控制WS2812彩色灯带
_NOP();宏为空操作,大概1/72usGPIO口可直接控制1 数据传输时序图2 数据传输时间3 数据传输方式4 24bit数据结构(高位先发)原创 2023-12-02 20:08:07 · 1399 阅读 · 1 评论 -
STM32入门2-外部中断(按键操作)
外部中断:简单易懂的理解就是你在吃饭,这时候有人给你打电话(中断请求),然后你先去接起电话(中断响应),打完电话后接着回来吃饭(中断返回),当然中间还有一个多中断同时发生时根据中断优先级进行选择的步骤配置步骤(1) 使能GPIO口时钟配置为输出模式(2) 使能AFIO时钟,绑定外部中断线文件中的void函数绑定外部中断线(3) 初始化外部中断EXTI文件中的voidEXTI_Init。原创 2023-12-02 14:55:28 · 1209 阅读 · 1 评论 -
STM32入门1-点灯大师
1.STM32GPIO口八大模式介绍模式名称性质特征浮空输入数字输入可读取引脚电平,若悬空则电平不确定上拉输入数字输入可读取引脚电平,内接上拉电阻,悬空时默认电平为高电平下拉输入数字输入可读取引脚电平,内接下拉电阻,悬空时默认电平为低电平模拟输入模拟输入GPIO无效,直接接入内部ADC开漏输出数字输出可输出引脚电平,可输出高低电平,但是高电平由上拉电阻提供推挽输出数字输出可输出引脚电平,可输出高低电平,由引脚控制复用开漏输出数字输出。原创 2023-12-02 01:37:29 · 1093 阅读 · 0 评论 -
基于标准库的STM32开发模板
startup_stm32f10x_xx.s:启动文件,后缀hd:大容量设备,md:中容量设备,ld:低容量设备stm32f10x.h:STM32外设寄存器描述文件,定义了寄存器和外设的映射地址system_stm32f10x.c:配置系统时钟的文件core_cm3.c:内核寄存器的映射地址定义stm32f10x_conf.h:配置库函数头文件引用关系stm32f10x_it.c:存放中断函数。原创 2023-11-26 20:53:48 · 942 阅读 · 0 评论 -
STM32F103单片机介绍
由意法半导体(ST公司)开发,基于Cortex-M架构,STM32F103C8T6单片机属于Cortex-M3架构,CPU主频为72MHz,RAM大小为20K(SRAM),ROM大小为64K(FLASH),工作电压2-3.6V,硬件采用LQFP48封装英文缩写名称英文缩写名称NVIC嵌套向量中断控制器CANCAN通信SysTick系统滴答定时器USBUSB通信RCC复位和时钟控制RTC实时时钟GPIO通用IO口CRCCRC校验AFIO复用IO口PWR电源控制。原创 2023-11-26 17:52:47 · 1730 阅读 · 0 评论 -
STM32开发软件MDK5下载安装步骤
记录时间:2023/11/25。原创 2023-11-25 22:20:51 · 2781 阅读 · 0 评论 -
单片机串口数据接收时数据进行拼接
【代码】单片机串口数据接收时数据进行拼接。原创 2023-11-24 10:27:42 · 577 阅读 · 1 评论