草庐IT

STM32WBA

全部标签

STM32——串口概念及应用

目录通讯接口背景知识两种通讯方式对比串口通讯 常见的串行通信接口STM32串口通信基础  STM32的串口通信接口 UART异步通信方式引脚连接方法 UART异步通讯方式特点串口通信过程 串口异步通讯需要定义的参数 STM32常用串口寄存器常用三种串口相关寄存器STM32常用库函数控制SR寄存器的库函数控制DR寄存器的库函数  控制BBR与CR1寄存器的库函数串口应用串口配置基本步骤使用printf发送字符串至串口正点原子接收并发回消息程序讲解 通讯接口背景知识两种通讯方式对比通讯方式并行通讯串行通讯传输原理数据各个位同时传输数据按位顺序传输优点速度快占用引脚资源少缺点占用引脚资源多速度相对较

STM32 寄存器配置笔记——GPIO配置输出

一、概述    本文主要介绍GPIO作为输出时的寄存器配置。包括时钟配置,输出模式配置。以STM32F10xxx系列为例,配置PA8、PD2端口作为输出,输出高/低电平。二、配置流程    1)GPIO外设时钟     通过查找STM32F10xxx中文参考手册得知,GPIOPORT口的时钟配置在RCC_APB2ENR寄存器的第2~6位,如下图:使能PORTA和PORTD的时钟:RCC->APB2ENR|=1APB2ENR|=1   2) 配置GPIO模式   PORTA的PIN8和PORTD的PIN2配置为通用推挽(PP)输出模式,GPIO速度配置为50MHZ。CRL寄存器配置的是PIN0~

STM32 使用串口下载程序

STM32使用串口下载程序1.串口下载的原理在ROM区的0x08000000位置,存储的就是编译后的程序代码,你把什么程序写入到这个位置,STM32就执行什么样的程序。如果想使用串口下载程序的话,我们只需要把数据通过串口发送给STM32,STM32接收数据,然后刷新到0x08000000这一块位置就行了。但是接收并转存数据,这个过程本身也是程序,如果利用程序进行自我更新,这是一个问题。就像是一个机器人,给自己换电池一样,换电池,需要先拆掉旧电池,再装上新电池,但是一旦把旧电池拆掉,机器人本身就无法工作了,这样之后装上新电池的工作就没法完成了,所以为了能让机器人换电池,我们还需要再额外做一个小机

stm32+安信可esp8266+AT指令+腾讯云平台

这篇文章是讲解esp8266使用AT指令连接腾讯云物联网平台的一些大致内容。一般连接连接云平台都是使用MQTT协议,以下是MQTT协议的特点:MQTT(MessageQueuingTelemetryTransport)是一种轻量级的通信协议,用于在物联网和低带宽、高延迟或不稳定网络环境下进行传输。它被设计用于传输小型数据包,并且具有低能耗、低带宽占用和可靠性的特点。MQTT协议基于发布-订阅模式,其中有两个角色:消息发布者和消息订阅者。发布者负责将消息发送到经纪人(Broker),而订阅者则通过订阅特定主题(Topic)来接收感兴趣的消息。MQTT协议的核心思想是实现高效、可靠的消息传输。它采

STM32开发(2)----CubeMX的安装和使用

CubeMX的安装和使用前言一、CubeMX简介二、软件安装二、软件使用HSE和LSE时钟源设置时钟树配置功能引脚配置配置Debug选项生成工程源码总结前言本章对STM32CubeMX的安装和使用做简单介绍一、CubeMX简介STM32CubeMX是一种图形化工具,它允许非常简单地配置STM32微控制器和微处理器,并通过逐步过程为Arm®Cortex®-M内核生成相应的初始化C代码,或为Arm™Cortex®-a内核生成部分Linux®设备树。STM32CubeMX具有如下特性:①直观的选择MCU型号,可指定系列、封装、外设数量等条件;②微控制器图形化配置;③自动处理引脚冲突;④动态设置时钟树

Arduino下 ESP32蓝牙与PC蓝牙数据传输

Arduino下ESP32蓝牙与PC蓝牙数据传输ESP32PC端测试效果ESP32打开Arduino,选择“文件”—“示例”—“BluetoothSerial”—“SerialToSerialBT”:然后选择开发板和端口,编译烧录,在下方发送框内输入要发送的信息//ThisexamplecodeisinthePublicDomain(orCC0licensed,atyouroption.)//ByEvandroCopercini-2018////ThisexamplecreatesabridgebetweenSerialandClassicalBluetooth(SPP)//andalsode

STM32-RTC实时时钟详解

RTCRTC的本质很简单,就是一个时钟经过精确分频最后得到的一个1Hz的时钟,也可以说是计数器,其他大部分功能都是基于这个计数器设计的数字逻辑。本文讲的RTC是基于STM32F030来讲的,相比与F1系列的RTC来说,M0的将很多原本需要软件实现的功能硬件化了,使用起来更加便利。先说说STM32F030的RTC有些什么功能:集成日历功能,不用像STM32F103一样需要软件算法来做;夏令时补偿;闹钟功能;集成了周期性自动唤醒单元;外部参考时钟;时钟平移校准(亚秒级);数字校准时间戳;入侵检测;备份寄存器先看看RTC的框图:从框图中圈出来的部分可以看到,上面提到的RTC功能,大部分在框图上面都有

android - "Bitmap.createScaledBitmap"是否将 32 位图像转换为 24 位图像?

在我的应用程序中,我以这种方式加载32位(ARGB_8888)图像:Bitmap.ConfigmBitmapConfig;mBitmapConfig=Bitmap.Config.ARGB_8888;BitmapFactory.Optionsoptions=newBitmapFactory.Options();options.inPreferredConfig=mBitmapConfig;mBitmap=BitmapFactory.decodeFile(SourceFileName,options);然后缩放:mBitmap=Bitmap.createScaledBitmap(mBitm

STM32-CAN配置与库函数解析,实现环回模式通信

STM32-CAN配置与库函数解析CAN总线介绍:https://blog.csdn.net/weixin_46251230/article/details/129147612STM32-CAN控制器介绍:https://blog.csdn.net/weixin_46251230/article/details/129150872STM32CubeMx配置因为bxCAN是挂载在APB1总线上的,所以设置APB1总线的时钟为36M选择CAN接口进行配置勾选主CAN模式,这里并不是主机的意思配置位时间参数根据STM32参考手册里位时间特性的介绍,来配置最小时间单位Tq在位时间参数里可以配置分频系数

Java Uint32(存储长)至4个字节阵列

我正在写入具有UINT32的存储格式,最大值为“4294967295”。当然,Java中的整数在“2147483647”中不到一半。因此,在内部,我必须使用Long或Guava的UnsignEdinteger。要写入此格式,字节阵列长度必须为4,它适合整数恰好,但是将长度转换为字节阵列需要长度为8。如何将表示“4294967295”的最大值作为4个字节数组转换为“4294967295”?看答案只需将其转换为8个字节数组,然后仅采用最后4个字节:publicstaticbyte[]fromUnsignedInt(longvalue){byte[]bytes=newbyte[8];ByteBuff