VSCode+CubeMX开发STM32笔记-定时器编码器接口使用
使用VSCode+CubeMx开发STM32,这里介绍使用定时器的编码器接口来使用增量型编码器EC11;
1.建立工程1.1 创建项目文件从已有的仓库中创建一个工程:
1git clone https://github.com/makerinchina-iot/vscode_stm32cubemx_hello.git encoder
使用VSCode打开工程后,需要更改如下名字:
文件夹根目录下CMakeLists.txt 文件中修改工程名字为encoder:
1set(CMAKE_PROJECT_NAME encoder)
stm32cubemx配置文件更改为 encoder.ioc ,并更改以下文件名:
1234... ProjectManager.ProjectFileName=encoder.ioc ProjectManager.ProjectName=encoder...
1.2 引脚配置使用STM32CubeMx打开ioc配置文件,然后配置对应的编码器引脚:
定时器配置:设置为Encoder Mode,引脚配置为上拉模式;
外部中断引脚用于编码器 ...
VSCode+CubeMX开发STM32笔记-I2S接口与MAX89357播放声音
使用VSCode+CubeMx开发STM32,这里介绍使用I2S接口连接MAX98357模块播放声音;
1.建立工程1.1 创建项目文件从已有的仓库中创建一个工程:
1git clone https://github.com/makerinchina-iot/vscode_stm32cubemx_hello.git MAX98357
使用VSCode打开工程后,需要更改如下名字:
文件夹根目录下CMakeLists.txt 文件中修改工程名字为MAX98357:
1set(CMAKE_PROJECT_NAME MAX98357)
stm32cubemx配置文件更改为 ntc.ioc ,并更改以下文件名:
1234... ProjectManager.ProjectFileName=MAX98357.ioc ProjectManager.ProjectName=MAX98357...
1.2 引脚配置使用STM32CubeMx打开ioc配置文件,然后配置对应的I2S引脚;
2. 编写代码2.1 i2s输出音频配置好i2s接口后,直接使用i2s函数输出数据到MAX8 ...
VSCode+CubeMX开发STM32笔记-使用串口和SWD调试接口输出日志
使用VSCode+CubeMx开发STM32,这里介绍分别使用串口以及SWD调试接口输出日志功能;
1.建立工程1.1 创建项目文件从已有的仓库中创建一个工程:
1git clone https://github.com/makerinchina-iot/vscode_stm32cubemx_hello.git log
使用VSCode打开工程后,需要更改如下名字:
文件夹根目录下CMakeLists.txt 文件中修改工程名字为log:
1set(CMAKE_PROJECT_NAME log)
stm32cubemx配置文件更改为 log.ioc ,并更改以下文件名:
1234... ProjectManager.ProjectFileName=log.ioc ProjectManager.ProjectName=log...
1.2 引脚配置使用STM32CubeMx打开ioc配置文件,然后配置对应的串口引脚;
2. 编写代码2.1 基本的串口输出(1)首先在main中添加串口测试代码,测试串口正常输出:
12const uint8_t test_out[] = ...
VSCode+CubeMX开发STM32笔记-SPI与Flash模块使用
使用VSCode+CubeMx开发STM32,这里介绍SPI接口读写Flash模块W25Q64;
1.建立工程1.1 创建项目文件从已有的仓库中创建一个工程:
1git clone https://github.com/makerinchina-iot/vscode_stm32cubemx_hello.git w25q64_flash
使用VSCode打开工程后,需要更改如下名字:
文件夹根目录下CMakeLists.txt 文件中修改工程名字为w25q64_flash:
1set(CMAKE_PROJECT_NAME w25q64_flash)
stm32cubemx配置文件更改为 w25q64_flash.ioc ,并更改以下文件名:
1234... ProjectManager.ProjectFileName=w25q64_flash.ioc ProjectManager.ProjectName=w25q64_flash...
1.2 引脚配置使用STM32CubeMx打开ioc配置文件,然后配置对应的SPI引脚;
SPI1配置好时钟和时钟极性等模式; ...
VSCode+CubeMX开发STM32笔记-PWM输出与舵机控制
使用VSCode+CubeMx开发STM32,这里介绍使用PWM控制舵机SG90;
1.建立工程1.1 创建项目文件从已有的仓库中创建一个工程:
1git clone https://github.com/makerinchina-iot/vscode_stm32cubemx_hello.git motor
使用VSCode打开工程后,需要更改如下名字:
文件夹根目录下CMakeLists.txt 文件中修改工程名字为motor:
1set(CMAKE_PROJECT_NAME motor)
stm32cubemx配置文件更改为 motor.ioc ,并更改以下文件名:
1234... ProjectManager.ProjectFileName=motor.ioc ProjectManager.ProjectName=motor...
1.2 引脚配置使用STM32CubeMx打开ioc配置文件,然后配置对应的PWM引脚;
这里定时器根据SG90舵机需要的PWM频率确定,SG90需要PWM频率为50Hz,因此设置定时器分频为640,计数值为2000,即可达到 ...
VSCode+CubeMX开发STM32笔记-ADC与电位器测量电压
使用VSCode+CubeMx开发STM32,这里介绍使用ADC测量电位器电压;
1.建立工程1.1 创建项目文件从已有的仓库中创建一个工程:
1git clone https://github.com/makerinchina-iot/vscode_stm32cubemx_hello.git adc
使用VSCode打开工程后,需要更改如下名字:
文件夹根目录下CMakeLists.txt 文件中修改工程名字为adc:
1set(CMAKE_PROJECT_NAME adc)
stm32cubemx配置文件更改为 adc.ioc ,并更改以下文件名:
1234... ProjectManager.ProjectFileName=adc.ioc ProjectManager.ProjectName=adc...
1.2 引脚配置使用STM32CubeMx打开ioc配置文件,然后配置对应的ADC引脚;
这里设置为连续转换模式
2. 编写代码2.1 基本的ADC使用因为之前设置了ADC为连续转换模式,因此在设置ADC开始后,可以连续获取ADC结果:
12345 ...
VSCode+CubeMX开发STM32笔记-使用硬件I2C接口与OLED显示
使用VSCode+CubeMx开发STM32,这里介绍使用硬件I2C接口驱动OLED屏幕;
1.建立工程1.1 创建项目文件从已有的仓库中创建一个工程:
1git clone https://github.com/makerinchina-iot/vscode_stm32cubemx_hello.git oled
使用VSCode打开工程后,需要更改如下名字:
文件夹根目录下CMakeLists.txt 文件中修改工程名字为oled:
1set(CMAKE_PROJECT_NAME oled)
stm32cubemx配置文件更改为 oled.ioc ,并更改以下文件名:
1234... ProjectManager.ProjectFileName=oled.ioc ProjectManager.ProjectName=oled...
1.2 引脚配置使用STM32CubeMx打开ioc配置文件,然后配置对应的硬件I2C引脚;
2. 编写代码2.1 基本的硬件I2C使用由CubeMx配置好I2C后,直接使用接口 HAL_I2C_Master_Transmit 或 ...
VSCode+CubeMX开发STM32笔记-输入捕获与超声波测距
使用VSCode+CubeMx开发STM32,这里介绍分别使用串口以及SWD调试接口输出日志功能;
1.建立工程1.1 创建项目文件从已有的仓库中创建一个工程:
1git clone https://github.com/makerinchina-iot/vscode_stm32cubemx_hello.git hc_sr04
使用VSCode打开工程后,需要更改如下名字:
文件夹根目录下CMakeLists.txt 文件中修改工程名字为hc_sr04:
1set(CMAKE_PROJECT_NAME hc_sr04)
stm32cubemx配置文件更改为 hc_sr04.ioc ,并更改以下文件名:
1234... ProjectManager.ProjectFileName=hc_sr04.ioc ProjectManager.ProjectName=hc_sr04...
1.2 引脚配置使用STM32CubeMx打开ioc配置文件,然后配置对应的trig引脚为输出,echo引脚为输入捕获并设置定时器参数:
2. 编写代码2.1 模块测量时序超声波模块测量 ...
VSCode+CubeMX开发STM32笔记-使用软件模拟I2C接口与SHT30温湿度传感器
使用VSCode+CubeMx开发STM32,这里使用模拟软件I2C接口来连接SHT30温湿度传感器;
1.建立工程1.1 创建项目文件从已有的仓库中创建一个工程:
1git clone https://github.com/makerinchina-iot/vscode_stm32cubemx_hello.git sht30
使用VSCode打开工程后,需要更改如下名字:
文件夹根目录下CMakeLists.txt 文件中修改工程名字为sht30:
1set(CMAKE_PROJECT_NAME sht30)
stm32cubemx配置文件更改为 sht30.ioc ,并更改以下文件名:
1234... ProjectManager.ProjectFileName=sht30.ioc ProjectManager.ProjectName=sht30...
1.2 引脚配置使用STM32CubeMx打开ioc配置文件,然后配置对应的引脚,这里配置SCL引脚为GPIOB0,SDA引脚为GPIOB1,两个引脚都配置为输出模式:
2 编写代码2.1 模拟软件I2C接 ...
VSCode+CubeMX开发STM32笔记-Uart串口使用
使用VSCode+CubeMx开发STM32,这里介绍GPIO外部中断和按键的使用;
1.建立工程1.1 创建项目文件从已有的仓库中创建一个工程:
1git clone https://github.com/makerinchina-iot/vscode_stm32cubemx_hello.git button
使用VSCode打开工程后,需要更改如下名字:
文件夹根目录下CMakeLists.txt 文件中修改工程名字为button:
1set(CMAKE_PROJECT_NAME button)
stm32cubemx配置文件更改为 button.ioc ,并更改以下文件名:
1234... ProjectManager.ProjectFileName=button.ioc ProjectManager.ProjectName=button...
1.2 引脚配置使用STM32CubeMx打开ioc配置文件,然后配置按键对应的引脚:
然后在NVIC中使能中断:
2. 编写代码在main中添加中断回调函数如下:
1234567891011void HA ...