- 博客(14)
- 收藏
- 关注
原创 蓝桥杯学习笔记十一:RTC配置和使用
Cubmx配置:然后再参照之前的配置好时钟和串口(不要忘了打开闹钟的中断)。main.c:#include "main.h"#include "rtc.h"#include "usart.h"#include "gpio.h"#include "stdio.h"#include "string.h" RTC_TimeTypeDef sTime; RTC_DateTypeDef sDate; RTC_AlarmTypeDef sAlarm; void HAL_RT
2022-02-10 22:29:13
3749
1
原创 蓝桥杯学习笔记十:PWM占空比测量实验
实验目的:选定一个引脚(PA1)PWM产生,然后用输入捕获查看上升沿和下降沿之间的计数值,然后根据分频数计算占空比,再串口输出测量到的频率和占空比。配置视频:补充----测量占空比的MX配置_哔哩哔哩_bilibili这两个和时钟配置不必说。以上是输入捕获配置(注意内部时钟,直接和间接模式,打开中断,一个上升沿,一个下降沿触发中断)上图是配置的PWM(不需要开中断)上图是串口配置(别忘了开中断)最后生成代码之后,再在main.c文件...
2022-02-09 22:55:59
2162
原创 蓝桥杯学习笔记九:串口收发触发中断加外部中断加滴答定时器中断
擦,检查问题花费了90分钟,最后发现是数据线有问题,换了根线就好了。想象:按下KEY1,串口发送:”按下KEY1“松开KEY1,串口发送”松开KEY1“上位机发送”0~8“对应LED灯亮灭闹钟:每五秒lcd显示一次红白红白闪烁,并显示”时间到!“(用滴答定时器做)...
2022-02-06 10:28:51
924
原创 stm32f103c8t6外部中断实验
中断就是cpu在执行程序时,有其他事件需要占用cpu,cpu接收到这个中断请求后暂停原程序的执行,去执行中断函数,中断函数执行完成之后,继续回到原来的程序继续执行。c8t6每个GPIO都可以产生中断,中断线有16个,中断服务函数最多有6个。19个中断检测沿,16个中断线对应最多16个中断,但是cpu一次只能处理一个事件,所以就要对这些中断进行优先级排序。中断线 0-4 每个中断线对应一个中断函数,中断线 5-9 共用中断函数 EXTI9_5_IRQHandler,中断线 10-15 共用中断函数
2022-02-04 19:44:06
4951
原创 蓝桥杯学习笔记八:捕获计数器
一、什么是捕获计数器(说人话)?比如说,我们想知道一个高电平输入到某引脚持续的时间(信号频率其实也是在求信号输入的持续时间),stm32里的定时器肯定是可以实现这一功能的。我们刚所说的定时器其实在此时不太准确,应该称之为计数器,因为定时功能的实现其实是基于计数功能的使用。定时器是一秒钟计数80M个数,在预分频80之后,也就是一秒钟计数1M次,如果在输入信号的上升沿(就是高电平时)占0.1M个数,那就是100ms的高电平维持。二、那怎样配置定时器才能实现这样的功能呢?以捕获上升沿为例:1、
2022-01-26 22:28:44
1055
原创 蓝桥杯学习笔记七:ADC的使用
蓝桥杯官方板子上有两个电压采集的旋钮电阻。电压采集一是PB15,属于ADC2 15通道,电压采集一是PB12,属于ADC1 11通道配置的时候就注意ADC是12位的,0-4095,最大3.3VMX_ADC1_Init()ADC1初始化HAL_ADC_Start()开启ADCHAL_ADC_GetValue()获得电位值CubMx配置:选择开启ADC的引脚,开启单输入模式。单输入模式:直接接受信号差分输入模式:就两个信号输入,更稳定...
2022-01-26 16:00:00
595
原创 蓝桥杯学习笔记六:usart Rx的配置和使用(uart)
为什么是uart而不是usart?因为是在XCOM里直接输入完成所有的数据再发送,接着单片机再逐个接收数据直至结束符,所以是异步模式,也就是uart为什么涉及到中断?因为在实际应用中肯定不知道什么时候才接收数据,所以需要中断的形式。程序运行的过程?1、打开中断入口(也就是准备接收) HAL_UART_Receive_IT(&huart1, rx, 1);//huart1代表是uart1...
2022-01-24 14:24:35
2011
原创 蓝桥杯学习笔记五:usart Tx使用
usart简介:USART(Universal Synchronous/Asynchronous Receiver/Transmitter),即通用同步/异步串行接收/发送器。UART(Universal Asynchronous Receiver/Transmitter)是异步通信方式。虽然STM32支持USART,但是就一般使用而言,很少使用同步模式,多是使用异步模式。“同步”就是发送方发出数据后,等接收方发回响应以后才发下一个数据包的通讯方式。“异步”就是发送方发出数据后,不等接收
2022-01-24 10:34:03
3496
原创 蓝桥杯学习笔记四:stm32延时函数总结,滴答定时器中断来实现流水灯
Stm32延时手段大体分为两种:软件延时,滴答定时器延时1、软件延时://毫秒级的延时void delay_ms(u16 time){ u16 i=0; while(time--) { i=12000; //自己定义 while(i--) ; }}软件延时不精确2、SysTick 定时器延时处理器内部有SysTick定时器,他的时钟来源可以是外部时钟也可以是内部时钟,是一个倒数的计数器,当计到0 时,将从REL...
2022-01-23 14:13:38
4728
原创 蓝桥杯学习笔记三:Delay函数毫秒变微秒
平时的HAL_Delay()都是毫秒单位的,但是进去这个函数看看的话,也看不出来是咋回事,我也不理解。但是就说在网上知道了一个方法:用SysTick_Config();这个函数就是来控制Delay函数的单位1代表计数器计数多少次。比如SysTick_Config(80);80000000/1000=1000000,所以Delay里面为1000000才代表是1s,也就是Delay(1)为1微秒。同理可知,如SysTick_Config(80000)时,Delay(1)为1ms。但是这样不好,因为好多地方用
2022-01-22 21:36:32
1935
原创 蓝桥杯学习笔记 二:中断的理解
1月20日:1、设计了按键控制led亮灭的函数,lcd显示时间的函数,特别是在显示一个可变的字符串时,常常用sprintf这个函数,应当牢记2、深刻认识了中断的意义和分类:(Linux-中断的本质 - John_ABC - 博客园) 使用计算机的过程中,经常会遇到这么一种情景: 1. 你正在看电影 2. 你的朋友发来一条QQ信息 3. 你一边回复朋友的信息,一边继续看电影 这个过程中,一切是那么的顺其自然。但理论上来说,播放电影的时候,CPU正在一丝不苟的执行着一条
2022-01-20 21:17:58
614
原创 基于arduino 蓝牙麦克拉姆轮小车
#include <SoftwareSerial.h>// Pin10接HC05的TXD// Pin1接HC05的RXDSoftwareSerial BT(0, 1);char val;int L1_IN1 = 7;int L1_IN2 = 5;int L1_ENA = 6;//左前轮int R1_IN1 = 4;int R1_IN2 = 2;int R1_ENA = 3;//右前轮int L2_IN1 = 12;int L2_IN2 = 13;int L2_ENA = 11;..
2021-08-03 17:07:24
583
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人