草庐IT

stm32---输入捕获实验实操(巨详细)

这次来分享上次没说完的输入捕获的知识点实验中用到两个引脚,一个是通用定时器 TIM3 的通道 1,即 PA6,用于输出 PWM 信号,另一个是高级控制定时器 TIM1 的通道 1,即 PA8,用于 PWM 输入捕获,实验中直接用一根杜邦线短接即可 PA6 和 PA8 即可,同时可用示波器监控 PA6 的波形,看看实验捕获的数据是否正确。PA6:用定时器的输出比较功能输出波形。PA8:用定时器的输入捕获功能捕获波形。步骤1.通用定时器产生 PWM 配置2.高级定时器 PWM 输入配置3.编写中断服务程序,计算测量的频率和占空比,并仿真调试看是否一致。编程的要点主要分成两部分,一个是通用定时器的 

【STM32】STM32学习笔记-STM32简介(02)

00.目录文章目录00.目录01.STM32简介1.1STM32是什么1.2STM32应用领域1.3STM32命名规则1.4STM32选型02.ARM简介2.1ARM是什么2.2ARM系列03.STM32开发板3.1MCU简介3.2STM32开发板3.3STM32硬件资源04.STM32系统架构05.STM32引脚定义06.STM32启动配置07.STM32最小系统电路08.附录01.STM32简介STM32是ST公司基于ARMCortex-M内核开发的32位微控制器STM32常应用在嵌入式领域,如智能车、无人机、机器人、无线通信、物联网、工业控制、娱乐电子产品等STM32功能强大、性能优异、

已解决1:STM32+SYN6288语音模块中文播报汉字乱码;2:警告: passing ‘char [5O]’to parame ter of type ‘uos o’(aka ‘unsigned

目录遇到的问题1:使用STM32+SYN6288语音模块时,可以正常进行英文和数字的播报,但改为中文进行播报时,播报的是乱码汉字。遇到的问题2:出现警告warning:passing'char[5O]’toparameteroftype'uoso’(aka'unsignedchar*)convertsbetweenpointerstointegertypeswithdifferentsign修改处源码两个问题亲测无误,完美解决。源码来自:绿深旗舰店SYN6288语音合成模块STM32F405RGT6测试程序所用模块:绿深SYN6288语音合成模块遇到的问题1:使用STM32+SYN6288语音

毕设分享 stm32智能语音垃圾分类系统(项目开源)

文章目录1简介2绪论2.1课题背景与目的3系统设计3.1系统架构3.2硬件部分3.2.1传感器模块3.2.2语音模块3.2.3电机及其驱动模块3.2.4稳压模块3.3软件部分3.3.1自动翻盖子程序设计3.4实现效果3.5部分相关代码4最后1简介Hi,大家好,这里是丹成学长,今天向大家介绍一个单片机项目毕业设计stm32智能语音垃圾分类系统(项目开源)大家可用于课程设计或毕业设计🧿项目分享:见文末!2绪论2.1课题背景与目的学长设计的系统主要使用stm32单片机为基础设计并开发一个智能垃圾桶系统。该系统实现智能开盖,垃圾装满语音报警的功能。设计主要以单片机为控制中心,通过红外传感器检测探测范围

STM32以太网(ETH) 学习笔记1 —— ETH接口功能说明

目 录以太网接口功能说明:SMI、MI和RMII1.站管理接口:SMISMI帧格式SMI写操作SMI读操作SMI时钟选择2.介质独立接口:MIIMII时钟源3.精简介质独立接口:RMIIRMII时钟源以太网接口功能说明:SMI、MI和RMII        以太网外设包括带专用DMA控制器的MAC802.3(介质访问控制)。它支持介质独立接口(MII)和简化介质独立接口(RMII),并通过SYSCFG_PMC寄存器的bit23在两个接口间进行切换,以太网控制器处于复位模式或使能时钟前,应用程序必须设置MII/RMII模式。        在进行数据发送时,首先将数据由系统存储器以DMA的方式送

STM32第六节:GPIO输出——使用固件库点亮LED

前言    从这节课开始呢我们就正式进入了固件库编程,我们学习了GPIO口的相关知识,那么我们的第一个程序就写GPIO输出——使用固件库点亮LED吧。下面就让我们一起来学习,创作不易,点个三连支持一下吧!STM32第六节:GPIO输出——使用固件库点亮LEDLED原理    首先,我们还是先熟悉一下LED的原理图,我们所需要操作的io口为PB(0,1,5),即GPIOB寄存器上的操作。通过控制这三个端口的高低电平,来控制灯的亮灭。        对于F103的固件库编程拷贝模板    首先我们先拷贝一份上节课的工程模板,然后命名为本节课的内容(最好是英文,要不然可能会报错)。这里需要模板的可以

STM32基于寄存器编程

在51中让一个引脚输出高低电平只需要一个步骤,而在32中至少需要三个步骤。开启对应GPIO的时钟配置对应IO口设置IO口本文将一步步进阶的讲解,四种寄存器编程的方法。使用地址赋值进行配置使用ST的宏进行配置只控制需要的位(位运算)与(&),或(|)左移>使用ST的宏进行位运算使用地址赋值进行配置 第一步:启动对应IO口时钟,这里我们以PA0,PA1,PA8为例。 从数据手册上可以看出,GPIOA在APB2时间线上,所以启动对应IO口时钟线,就是启动APB2。如何打开寄存器时钟?        这里以APB2外设使能寄存器(RCC_APB2ENR) 为例。启动寄存器本质上就是,找到寄存器的地址后

一、蓝桥杯嵌入式STM32G431RBT6_点亮LED

文章目录前言1.CubeMx配置1.1时钟源的选择1.2时钟树的配置1.3配置引脚1.4文件配置1.5工程配置2.代码编写2.1代码编写步骤2.2LED测试代码编写3.代码编写方法二前言下面对STM32G431进行模块化学习,本文先学习CubeMX的配置以及点灯操作。1.CubeMx配置1.1时钟源的选择1.2时钟树的配置HCLK一般取80(使用ADC的情况下)1.3配置引脚在产品手册中可以找到STM32G431的LED原理图,从下图可以看出,8颗LED灯通过74HC573驱动,LED灯采用低电平的方式点亮,控制引脚连PD2引脚。我们可以在PD2高电平的基础上,控制GPIOPC8~PC15的高

stm32的IIC协议以及IIC通信驱动OLED屏幕

    最近,一直在搞stm32开发板,今天涉及到了OLED屏幕与IIC协议,记录一下学习过程。    I2C总线是一种总线标准,由数据线SDA和时钟线SCL构成通信线路,既可用于发送数据,也可接收数据,是一种半双工通信协议。总线上的主设备与从设备之间以字节(8位)为单位进行双向的数据传输。        主机启动总线,并产生时钟用于传送数据,此时任何接收数据的器件均被认为是从机。I2C器件一般采用开漏结构与总线相连,所以I2C_SCL和I2C_SDA均需接上拉电阻,也正因此,当总线空闲时,这两条线路都处于高电平状态,当连到总线上的任一器件输出低电平,都将使总线拉低。     关于具体的读写操

在ubuntu上使用vscode+gcc-arm-none-eabi+openocd工具开发STM32

文章目录所需工具安装调试搭建过程中遇到的问题写在前面  老大上周让我用vscode开发STM32,我爽快的答应了,心想大学四年装了这么多环境了这不简简单单,更何况vscode这两年还用过,然而现实总是令人不快的——我竟然花了差不多两周时间在这上面,并且不知道花费了多少流量😭😭😭。这玩意就给了所需要的主要工具,形象一点就如标题,问其他人他们也搞不定。因此,大家有空还是多涉猎一些开发环境,这玩意以前有兄弟跟我提过,但是我觉得没意义,所以没用过😅😅😅。所需工具代码编写idevscode调试连接工具openocd交叉编译工具链gcc-arm-none-eabi调试工具gdb-multiarch工程管理