关于GPIO端口高低电平捕捉及循迹避障传感器的使用方法 本文讲述的是GPIO_ReadInputData(GPIO_TypeDef* GPIOx)函数的使用方法:本文使用的是下图所示的红外循迹模块,探测到物体时经过自带模块会从D0端输出一个低电平,此时传感器的灯会亮起,这个低电平需要传送到单片机的GPIO口。本文使用的是野火F429开发板,设置PD6接口为输入端,用于捕捉高低电平信号。这里值得注意的是,因为探测信号输入到单片机为低电平,所以我们要将PD6接口初始化为高电平,所以是上拉输入!野火F429的LED灯为原理图为用if语句判断,用 GPI
GPIO八种模式 (1)GPIO_Mode_AIN 模拟输入(2)GPIO_Mode_IN_FLOATING 浮空输入(3)GPIO_Mode_IPD 下拉输入(4)GPIO_Mode_IPU 上拉输入(5)GPIO_Mode_Out_OD 开漏输出(6)GPIO_Mode_Out_PP 推挽输出(7)GPIO_Mode_AF_OD 复用开漏输出(8)GPIO_Mode_AF_PP 复用推挽输出在STM32中选用IO模式(1) 浮空输入_IN_FLOATING ——浮空输入,可以做KEY识别,RX1(2)
定时器输出PWM原理 模式//结构体初始化:init1、2、3、4表示不同通道,通道1234。//设置比较值,一般情况下可以在结构体内设置,特殊情况下也可以调用这个函数设置来改变占空比。//使能输入比较预装载:设置APER是0还是1,让ARR在这个周期生效还是下个周期。//使能自动重装在的预装载寄存器允许位:使能就可以了//配置修改极性:很少用,因为在结构体已经配置完成。...
STM32重定向 一、重定向定向什么要用到printf函数首先要在usart.h中添加头文件#include<stdio.h>然后我们需要重定向fputcWEAK修饰符表示我们未手动定义这些时候,这些已经被默认定义,编译不会出错,但是我们可以重新定义他,系统就会以我们定义的去运行二、正式开始编程输出fputc函数1.1定义1.2声明不用在main.c和usart.h中再次声明这个函数,因为之前的printf已经默认声明过但是不要忘记在usart.h中包含stdio.h1.3调用在mai
STM32中printf重定向(串口输出) 一、理解:什么是重定向?重定向是指将fputc里面的输出指向目标设备。因printf函数调用了fputc,而fputc输出有默认指向的目标,且不同库中的fputc输出指向不同,所以需要重写fputc相同的东西换不同的出口,就像电脑,同样的内容,可以通过显示器显示出来,也可以通过投影仪显示出来具体怎么实现没关心过, 只知道怎么用 重定向就和名字一样, 就是把你要printf的东西选择一个通道print出去,可能是UART0,UART1,或者DEBUG里那个虚拟的UART在STM32测试串口的时候经常需
串口接收字符1-4(④串口的发送) 传口的发送本次试验是用单片机发送字符到上位机电脑端,所以我们用到send函数在usart.h中找到函数第一个参数:USART1第二个参数:‘o’ //发送单个字符oUSART_SendData(USART1, ‘o’);如果我们想发送多个字符怎么办呢?那我们到.h中找到判断标识符函数**//判断串口目前的状态**USART_GetFlagStatus(USART_TypeDef* USARTx, uint16_t USART_FLAG);将其复制到main函数里.
串口接收字符1-4(③配置串口结构体) 串口的结构体在FWLIB>usart.c>usart.h中我们不用带时钟的那个结构体,我们用USART_InitTypeDef加.访问端口,一共是六个①波特率:115200; 直接设置!②硬件流(宏定义):USART_HardwareFlowControl_None; 这里我们不用硬件流③模式(宏定义):USART_Mode.
串口接收字符1-4(①配置时钟) 一、新建工程①在固件库USER中创建新文件夹usart,再在其中新建usart.c和usart.h的文本②把新建两个文件新添加到工程中,.c:双击工程文件USER,找到.c 然后打开.c后在其中添加头文件,.h文件在编译后会自动添加到.c下二、软件编程在usart.c中写串口函数void usart_init(void){}1.根据PPT,先配置时钟1.1开启usart时钟①找到对应的APB2时钟函数在FWLIB中找到rcc.c>rcc.h ,找到其中对应的APB2,复
串口库函数讲解 提示:本次用的是最小系统板,所以没有UART4\UART5在总线中发现USART1用的是APB2和其他的串口不一样,所以我们用到的波特率也不一样注释异步第一个:波特率,其中USARTDIV部分我们直接设置,系统会自动算出这个值第二个:字长,即有效数据位,可以有8位,也可以有9位第三个:停止位,正常我们经常使用1个停止位第四个:奇偶校验位,Even是偶 校验位 Odd是奇校验位第五个:模式,模式设置为收或者发(可以同时设置为收发)第六个:硬件流控制,我们通常不用,设置为..
外部中断感应灯应用 1.固件库的USER中创建exti文件夹,用来存放.c文件2.在extiwe文件夹中新建exti.c和exti.h3.在keil中双击USER工程,把exti.c添加进来在exti.c中把exti.h头文件包含进来
STM32外部中断 如何配置中断步骤1.初始化GPIO结构体(前面已学过)2.初始化EXTI3.配置优先级NVIC4.编写中断函数具体步骤一、初始化用来中断的GPIO口二、初始化EXTI边沿监测电路----->上升沿/下降沿触发中断在FWLIB-.exti.c-exti.h结构体含义①端口已经定,直接复制就可以②模式选择,我们通常使用产生中断③触发方式④是否使能或禁用三、配置VNIC(中断优先级)配置中断的优先级,中断嵌套NVIC结构体①FWLIB-misc.c–stm3.
Markdown编辑器 这里写自定义目录标题新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdo