stm32l071专题

蓝桥杯物联网竞赛_STM32L071_20_用printf将数据显示在OLED上

需求: 第十五届国赛确实有点变态,显示部分大概有6个所以需要大量将sprintf与OLED_ShowString配合使用才能显示相应格式的数据,所以我在想能不能简化一下这一部分直接用写好的printf语句将数据显示到显示屏上呢? 代码: #include <stdarg.h>void myprintf(unsigned char address, const char* format, .

蓝桥杯物联网竞赛_STM32L071_19_输出方波信号(PWM)

国赛考了一个方波,第一次考这个,连个示波器都没有 CUBMX配置: 按上述配置刚好是32MHZ / 32 / 100 = 1KHZ 理论: 频率:就是一秒钟能产生多少个脉冲,如下图: 这算是一个脉冲,1KHZ说明一秒钟产生1000个这样的脉冲,频率越大,单位时间产生的脉冲越多,等效成的模拟信号量自然就越平稳,例如2HZ也就是一秒俩脉冲,前0.5秒憋出一个脉冲自然就不流畅 占

蓝桥杯物联网竞赛_STM32L071_16_EEPROM

仍然是没有考过的知识点 朴素的讲就是板子中一块不会因为断电重启而导致数值初始化的一片地址 要注意的是有时候容易把板子什么写错导致板子什么地址写坏了导致程序无法烧录,这个时候记得一直按flash键烧录,烧录时会报错,点击确定,松开flash键立即烧录即可烧录进去 一个字是4字节,一个字节8位, 一个字32位 代码: uint32_t VALUE = 0;void Function_E

KIl5:Stm32L071下载出现flash download faild “cortex-m0+“的解决方法

首先看看有没有芯片,没有芯片下载一下 下载并在device选择对应的芯片 选择调试器 选择flash

蓝桥杯物联网竞赛_STM32L071_12_按键中断与串口中断

按键中断: 将按键配置成GPIO_EXTI中断即外部中断 模式有三种上升沿,下降沿,上升沿和下降沿都会中断 external -> 外部的 interrupt -> 打断 trigger -> 触发 detection -> 探测 NVIC中将中断线ENABLE 找接口函数 在接口函数中写入中断后的操作,如果事件发生,程序会直接进入中断函数 串口中断: 在NVI

蓝桥杯物联网竞赛_STM32L071_11_知识体系的查漏与补缺

太久没学单片机了,再重新过一遍查漏补缺,对其中之前没怎么在意的,而现在又发觉的问题进行再分析与补充 1. debug serial wire是干什么用的 这个东西我勾选不勾选都对我的程序没有什么影响,我很好奇是干什么用的,网上查的是仿真调试用的,估计是keil5调试单片机程序的时候用的吧,如果勾选则将其指定的引脚指定为调试引脚,当作其他复用功能无效。当然上面是我在网上查的,我调试一般用ole

蓝桥杯物联网竞赛_STM32L071_9_按键矩阵扩展模块

原理图: 矩阵按键原理图: 实验板接口原理图: 得到对应图: 扫描按键原理: 按键的COLUMN1、2、3分别制0,每次只允许其中一个为0其他都是1(POW1和POW2正常状况为上拉),当有一个按键按下POW1和POW2必有一个被制0,这样就是能找到按键的标号 所以很明确COLUMN1、2、3应该制为输出电平,而POW1和POW2应该制输入电平用来读取按键被按下而传入的低电平

蓝桥杯物联网竞赛_STM32L071_7_LORA发送接收

理论: LoRa(长距离低功耗无线射频)是利用无线电频谱中的电磁波进行通信的一种技术。它使用无线电频段中的射频信号来传输数据。电磁波是一种波动形式的能量,具有特定的频率和波长,可以传播在真空和大多数介质中,包括空气、水和固体物质等。LoRa技术利用电磁波在射频范围内进行通信,使得设备可以进行远距离的低功耗数据传输。 其中PA4是控制数据的传输开始与结束的引脚,低电平有效 LORA发送

蓝桥杯物联网竞赛_STM32L071_5_串口接收发送数据

理论: 串口采取异步通信,即不依赖时钟节拍来接收或发送数据,而是采用互相约定的波特率传输数据。 波特率与单位时间传输的比特数有关,波特率越大传输的数据越多 传输一个比特花费的时间T = 1 / 比特率 接受和发送数据的时候需要接受端和发送端: UART传输数据是一位一位的向接收端传输,为了知道何时传输,又或者为了保证传输数据的完整正确性,规定了传输协议: 分别为开始、数据、校验、停止,

蓝桥杯物联网竞赛_STM32L071_2_继电器控制

Stm32l071原理图: PA11与PA12连接着UNL2803 ULN2803是一种集成电路芯片,通常被用作高电压和高电流负载的驱动器。 ULN2803是一个达林顿阵列,当输入引脚(IN1至IN8)被连接到正电源时,相应的输出引脚(OUT1至OUT8)将会断开或保持在高阻抗状态。这意味着输出引脚不会提供任何电流或电压输出。 当输入引脚被连接到正电源时,通常用于让外部组件(如微控制器或其

蓝桥杯物联网_STM32L071_2_继电器控制

CubeMX配置: Function.c及Function.h: #include "Function.h"#include "gpio.h"void Function_LD5_ON(void){HAL_GPIO_WritePin(LD5_GPIO_Port, LD5_Pin, GPIO_PIN_RESET);}void Function_LD5_OFF(void){HAL_GPIO

蓝桥杯物联网_STM32L071_1_CubMxkeil5基础配置

CubMx配置: project工程中添加.h和.c文件: keil5配置: 运行: 代码提示与解决中文乱码: