![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
stm32
文章平均质量分 82
醉意丶千层梦
这个作者很懒,什么都没留下…
展开
-
STM32F407ZE基于RT-Thread和ZigBee实现多传感器检测以及数据上传到oneNet
文章目录一、RT-Thread1.简介2.使用声明任务线程、任务栈大小、任务函数创建线程以及开启线程调度定义任务函数二、ZigBee1.简介2.使用三、esp8266WiFi模块四、传感器检测MQ-2烟雾传感器特点读取光敏电阻特点读取火焰传感器特点读取五、效果一、RT-Thread1.简介RT-Thread Nano 是一个极简版的硬实时内核,它是由 C 语言开发,采用面向对象的编程思维,具有良好的代码风格,是一款可裁剪的、抢占式实时多任务的 RTOS。其内存资源占用极小,功能包括任务处理、软件定时器原创 2022-01-12 16:31:22 · 3354 阅读 · 0 评论 -
STM32F103基于W5500实现Modbus简单TCP通信
文章目录一、Modbus/TCP协议1.查询报文2.响应报文二、从机代码1.初始化从机网络2.简单响应函数3.main函数循环等待连接三、效果四、总结一、Modbus/TCP协议1.查询报文00 6D 00 00 00 06 01 03 00 00 00 0100 6D 查询编号00 00 协议00 06 数据包长度01 设备编号03 功能码00 00 起始地址00 01 查询寄存器个数2.响应报文00 6D 00 00 00 05 01 03 02 00 1700 6D 查询编号原创 2021-12-14 15:25:53 · 14741 阅读 · 4 评论 -
STM32F103C8基于RT-Thread实现简单多任务
文章目录一、RT-Thread二、CubeMX移植三、简单demo四、总结五、参考一、RT-Thread参考官网RT-Thread Nano 简介二、CubeMX移植参考官方文档基于 CubeMX 移植 RT-Thread Nano注意:1.需要初始化USART1且需要修改USART2位USART12.取消注释#include "finsh_config.h"的注释三、简单demo创建两个线程线程一的灯500ms闪烁一次线程二的灯1000ms闪烁一次其中main函数在这里也是其中的原创 2021-12-11 18:28:20 · 2115 阅读 · 0 评论 -
STM32F103基于RTC实现简单日历
文章目录一、 RTC1.定义:2.应用3.应用领域4.特点二、CubeMX创建项目1.配置RCC2.配置RTC3.配置串口4.配置时钟5.配置项目三、RTC操作1.HAL库RTC相关操作函数2.读取RTC初始日期定义日期时间对象获取日期和时间并输出结果3.输出当前时间初始化日期和时间获取日期和时间并输出结果四、总结五、参考六、源码一、 RTC1.定义:RTC的英文全称是Real-Time Clock,翻译过来是实时时钟芯片。 RTC芯片是一种能提供日历/时钟(世纪、年、月、时、分、秒)及数据存储等功能原创 2021-11-29 21:33:53 · 4264 阅读 · 0 评论 -
STM32F103基于uCOS实现多任务
文章目录一、项目创建1.配置GPIO2.配置RTC3.配置USART14.配置RCC5.配置时钟6.配置项目二、usOS移植三、创建多任务1.定义相关变量以及任务函数2.定义相关任务函数3.创建任务4.最终效果四、总结五、参考六、源码一、项目创建1.配置GPIO2.配置RTC3.配置USART14.配置RCC5.配置时钟6.配置项目二、usOS移植参考文章STM32F103C8T6移植uC/OS-III基于HAL库超完整详细过程三、创建多任务1.定义相关变量以及任务函数/原创 2021-11-29 19:54:06 · 6561 阅读 · 2 评论 -
STM32F103基于spi实现OLED显示
文章目录一、原理二、实现1.显示中文2.滚动显示3.显示字符串4.读取温湿度5.显示温湿度三、结果1.开机显示欢迎信息2.循环读取温湿度以及滚动显示我的id四、总结五、参考六、源码1.github2.gitee一、原理SPI的定义SPI(Serial Peripheral Interface)就是串行外围设备接口。SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚。SPI 是一个环形总线结构,由 ss(cs)、sck、sdi、sdo 构成,时序主要是在 s原创 2021-11-20 15:47:18 · 10042 阅读 · 5 评论 -
STM32F103基于I2C协议的AHT20温湿度传感器的数据采集
文章目录一、原理1.I2C2.软件I2C3.硬件I2C二、实现1.配置2.代码三、结果四、总结五、参考六、源码githubgitee一、原理1.I2CI2C总线是由Philips公司开发的一种简单、双向二线制同步串行总线。它只需要两根线即可在连接于总线上的器件之间传送信息。主器件用于启动总线传送数据,并产生时钟以开放传送的器件,此时任何被寻址的器件均被认为是从器件.在总线上主和从、发和收的关系不是恒定的,而取决于此时数据传送方向。如果主机要发送数据给从器件,则主机首先寻址从器件,然后主动发送数据至从原创 2021-11-20 14:33:32 · 1982 阅读 · 1 评论 -
通过串口发送图片
文章目录一、要求二、接线三、结果四、总结五、参考一、要求将两台笔记本电脑,借助 usb转rs232 模块和杜邦线,建立起串口连接。然后用串口助手等工具软件(带文件传输功能)将A笔记本上的一张图片(大约1M)通过串口发送给B笔记本。二、接线A电脑三、结果四、总结五、参考...原创 2021-11-08 21:11:35 · 6074 阅读 · 0 评论 -
基于HAL库实现DMA串口通信
文章目录前言一、DMA二、通过CubeMX创建项目1.设置RCC2.设置USART13.创建项目三、个人代码四、效果五、参考前言软件版本: STM32CubeMX:6.30 KEIl:5.31 FlyMcu:0.188 SSCOM: 5.13.1硬件: STM32F103C8T一、DMADMA,全称Direct Memory Access,即直接存储器访问。DMA传输将数据从一个地址空间复制到另一个地址空间,提供在外设和存储器之间或者存储器和存储器之间的高速数原创 2021-10-31 15:01:34 · 2987 阅读 · 0 评论 -
HAL库中断方式进行串口通信
文章目录前言一、通过CubeMX配置项目1.设置RCC2.设置SYS3.设置USART4.设置NVIC5.创建项目二、在keil配置代码1.打开通过CubeMX生成的项目2.在main函数前定义全局变量3.在main函数中设置接收中断4.main函数中的while循环里面添加传输代码5.在main函数下面重写中断处理函数6.main函数全部代码7.编译并烧录三、效果四、参考前言软件版本: STM32CubeMX:6.30 KEIl:5.31 FlyMcu:0.188 SSCOM原创 2021-10-30 20:10:01 · 6723 阅读 · 3 评论 -
stm32外部中断模式控制灯亮灭
文章目录前言一丶通过STMCube配置项目1.引脚配置如图2.配置EXIT3.配置SYS4.配置GPIO5.代码创建出勾上这个6.创建项目二、通过KEil配置代码1.打开生成的项目,找到stm32f1xx_it.c2.找到EXTI9_5_IRQHandler这个函数,选中HAL_GPIO_EXTI_IRQHandler这个语句按F12跳到该函数3.往下找到HAL_GPIO_EXTI_Callback这个函数4.编译生成hex文件5.通过FlyMcu进行烧录三、效果四、参考前言软件版本:STM32Cub原创 2021-10-28 22:12:00 · 5179 阅读 · 0 评论 -
基于HAL库实现stm32简单串口通信
文章目录一、原理1.USERT介绍2.USERT功能3.USERT框图二、项目1.通过stm32cubeMX创建keil项目三、效果四、总结五、参考一、原理1.USERT介绍通用同步异步收发器(USART)提供了一种灵活的方法与使用工业标准NRZ异步串行数据格式的外部设备之间进行全双工数据交换。USART利用分数波特率发生器提供宽范围的波特率选择。它支持同步单向通信和半双工单线通信,也支持LIN(局部互连网),智能卡协议和IrDA(红外数据组织)SIR ENDEC规范,以及调制解调器(CTS/R原创 2021-10-20 22:46:22 · 3050 阅读 · 1 评论 -
基于HAL库实现流水灯
文章目录一、项目创建二、使用一、项目创建1.在stm32cube选择对应型号单片机,本次实验采用stm32f103c8T6型号。2.选择要用到引脚,本次实验使用A4、B5、C14引脚。点击对应的引脚选择GPIO_output最终效果3.配置系统调试接口,选择Serial Wire4.配置GPIOGPIO output level:有low和high两种选择,一般选择lowGPIO mode:推挽输出和开漏输出两者模式,两者模式的区别在于推挽输出中1代表VCC,0表示GND;开原创 2021-10-19 14:57:34 · 1218 阅读 · 0 评论 -
stm32寄存器实现流水灯
文章目录一、GPIO端口初始化1.时钟配置2.输入输出模式和输出速率设置代码实现1.c语言2.汇编代码效果一、GPIO端口初始化1.时钟配置本次实验采用GPIOA、B、C三个端口。该三个端口都属于APB2总线找到时钟使能寄存器映射基地址找到端口偏移地址以及对应端口所在位置使能对应端口时钟//----------------APB2使能时钟寄存器 ---------------------#define RCC_APB2ENR *((unsigned volatile int原创 2021-10-17 18:25:06 · 4180 阅读 · 2 评论