STM32 HAL库之串口详细篇
一、基础认识 (一) 并行通信 原理:数据的各个位同时传输 优点:速度快 缺点:占用引脚资源多,通常工作时有多条数据线进行数据传输 8bit数据传输典型连接图: 传输的数据是二进制:11101010,则通信使用8条线同时进行数据传输,发送端一次性发送8位数据,接收端一次性接收8位数据。 (二) 串行 ... »
一、基础认识 (一) 并行通信 原理:数据的各个位同时传输 优点:速度快 缺点:占用引脚资源多,通常工作时有多条数据线进行数据传输 8bit数据传输典型连接图: 传输的数据是二进制:11101010,则通信使用8条线同时进行数据传输,发送端一次性发送8位数据,接收端一次性接收8位数据。 (二) 串行 ... »
1.简介 霍尼韦尔 HMC5883L 是一种表面贴装的高集成模块,并带有数字接口的弱磁传感器芯片,应用于低成本罗盘和磁场检测领域。HMC5883L 包括最先进的高分辨率 HMC118X 系列磁阻传感器,并附带霍尼韦尔专利的集成电路包括放大器、自动消磁驱动器、偏差校准、能使罗盘精度控制在 1°~2°的 ... »
1.简介 霍尼韦尔 HMC5883L 是一种表面贴装的高集成模块,并带有数字接口的弱磁传感器芯片,应用于低成本罗盘和磁场检测领域。HMC5883L 包括最先进的高分辨率 HMC118X 系列磁阻传感器,并附带霍尼韦尔专利的集成电路包括放大器、自动消磁驱动器、偏差校准、能使罗盘精度控制在 1°~2°的 ... »
1、在ST官网下载STM32CubeIDE而不是STM32CubeMX,并且STM32CubeIDE是免费的。(STM32CubeIDE不支持中文路径,不然编译会出错) 2、如果你用的是keil开发环境那么 STM32CubeIDE =(STM32CubeMX + Keil)STM32CubeMX只 ... »
"STM32F103VET6<_>FreeRTOS" 1、项目功能实现 1)LED灯定时闪烁 2)KEY按键检测 3)FreeRTOS任务创建 4)串口输出程序运行状态 2、软件代码实现 1)LED灯初始化代码 1 1 #ifndef __BSP_LED_H 2 2 #define __BSP_LE ... »
单片机的RAM和ROM 单片机的ROM,叫只读程序存储器,是FLASH存储器构成的,如U盘就是FLASH存储器。所以,FLASH和ROM是同义的。单片机的程序,就是写到FLASH中了。 而RAM是随机读/写存储器,用作数据存储器,是在运行程序时,存放数据的。 内存区 内存主要分为:代码区、常量区、静 ... »
初探RT-Thread系统在GD32E103x芯片上的使用,点亮LED灯 前言 随着中美贸易战的加剧,很多公司越来越重视使用国产技术的重要性。使用国产技术,一方面可规避国外对技术的封锁造成产品核心技术的断供,另一方面还可以支持国内技术的迭代和进步。 兆易创新国内一家致力于开发先进存储器技术和 ... »
1.器件简介 本次测试采用R903V1红外接收头与NEC协议的红外遥控器,接收头原理图如下: 器件的供电电压VCC在2.7V~5.5V之间,输出电压VOUT正常在0.2v ~(VCC-0.3±0.2)v,注意高低电平输出脉冲宽度最小都在400us~800us之间。 NEC 码的位定义:一个脉冲对应 ... »
直奔主题,最近项目上接触了FDCAN,主控为STM32H743。在开发过程中存在了几点疑惑,特此记录。 波特率设置问题 CAN通讯的波特率计算方式为: BaudRate = Tq *(SYNC_SEG + BS1 + BS2) 其中 SYNC_SEG 段固定长度为 1Tq,而 BS1及 BS2 段可 ... »
结合存储器映像理解stm32标准库中定义外设地址的方法。 stm32f103zet6是32位的。它所能访问的地址空间范围为2^32=4GB,把4GB分为8个block,分别为block0-block-7。把这8个block用于不同的用途。 block0-block7的用途 图1 —————————— ... »
网上好多初学者 都想知道如何更好的用IAP,BOOTLOADER 功能 我给大家一个我自己的基于Xmodem的例子, 开发环境 KEIL 5.14 + STD标准库 芯片 STM32F103ZET6 外部晶振8MHz 用串口1通讯,通讯收发都用查询方式,没有用中断 另外用了systick 来做固定时 ... »
今天我用到RTX里面使用printf ,发现程序死掉了 我发现很多人遇到了这样的问题 找了网上很多的文章,说是这个是RTX的一个先天不足的问题 我发现了正点原子的 原子哥的解决方案,如下所示: 产生原因: 使用库里的printf函数在输出结束后会调用__used void _mutex_acquir ... »
STM32的USART组件支持异步、同步、单线半双工、多处理器、IrDA、LIN、SmartCard等模式,本文介绍的是异步即UART模式。 总线通信有三种模型:轮询、中断和DMA。DMA对我来说是陌生的内容,以后单独开篇细讲。 HAL HAL把寄存器组组织成组件,组件包含外设的各个寄存器。在USA ... »
1.AD7799介绍 AD7799结构图如下所示: 其中REFIN参考电压建议为2.5V, REFIN电压低于0.1V时,则差分输入ad值就无法检测了,如下图所示: 注意: 如果REG_CONFIG的REF_DET开启的话,那么输入AD值电压低于0.5V时,则差分输入ad值就无法检测了,如下图所示: ... »
1. 基础知识注意:在RTOS中是优先值越高则优先级越高(和ucos/linux的相反) 在移植的时候,主要裁剪FreeRTOS/Source/portable文件夹,该文件夹用来针对不同MCU做的一些处理,如下图所示,我们只需要使用: 1.1配置工程时,选择memMang时,一般使用heap_4. ... »
写在前面 最近需要使用一款STM32L4系列的芯片进行开发,需要学习使用HAL库。在进行串口中断使用的时候遇到了一些小麻烦,写下解决方案供大家参考。 1.UART相关的头文件引用错误 由于本人直接使用MDK进行开发,没有使用CubeMX,所以一些初始化需要手动进行。在引用UART相关的头文件时,记得 ... »
如何使用cubemx 配置freertos,实时查看FreeRTOS任务列表和运行状态 ... »
______________________________________ 目的 ______________________________________ 不管是Keil还是IAR对代码补全,高亮等编辑功能支持的不是很好,虽然现在的Keil 5.25对界面的支持好了很多,但是很多人还是青睐于第 ... »
工具 : ________________________________________________________________ putty F429Discovery 开发板 Notepad++ 注意:不知道为什么 其他的终端工具有问题,推荐 putty 基本没有发现问题 putty 实 ... »
参考资料:1、ST HAL库官网资料 2、https://blog.csdn.net/u014470361/article/details/79206352#comments 一、STM32CubeMX配置外部时钟 注意在进行外部时钟配置时,即“High Speed Clock”和“Low Spee ... »