
STM32
stm32单片机学习
Song J
这个作者很懒,什么都没留下…
展开
-
STM32CubeIDE(一):配置工程并开启SWV调试
硬件平台:野火霸天虎开发板(STM32F407ZGT6)软件平台:STM32CubeIDE 1.5.0调试器:ST-Link/V2工程配置1、创建工程2、选择芯片3、配置工程CubeMX配置1、选择外部晶振2、配置Debug接口(SWV)此处不能选择Serial Wire,否则无法开启SWV3、配置时钟根据配置生成源文件成功工程文件结构SWV(Serial Wire Viewer)STM32CubeIDE支持SWV/ITM的显示功能ST官方对SWV的描述原创 2020-11-22 22:41:04 · 7554 阅读 · 7 评论 -
STM32CubeIDE(十一):FreeRTOS选项中Disable、CMSIS_V1和CMSIS_V2的区别
CMSIS原创 2020-11-22 18:04:55 · 11688 阅读 · 2 评论 -
蓝桥杯嵌入式组(九):输入捕获
蓝桥杯嵌入式组(九):输入捕获通过 PA1 - TIM2_CH2、PA2 - TIM2_CH2 捕获外部输入的PWM代码:void PWM_Capture_Init(void){ GPIO_InitTypeDef GPIO_InitStructure; TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure; TIM_ICInitTypeDef TIM_ICInitStructure; NVIC_InitTypeDef NVIC_InitStruct原创 2020-11-20 19:44:39 · 672 阅读 · 2 评论 -
蓝桥杯嵌入式组(八):PWM输出
蓝桥杯嵌入式组(八):PWM输出通过 PA7 - TIM3_CH2 输出一路PWM。代码:/** * PWM初始化 * 频率:0 - 10K Hz,默认1000Hz * 占空比 0.0 - 1.00,默认50% */void PWM_TIM3_CH2_Init(void){ TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure; TIM_OCInitTypeDef TIM_OCInitStructure; GPIO_InitTypeDef原创 2020-11-20 18:48:46 · 753 阅读 · 0 评论 -
蓝桥杯嵌入式组(七):DS18B20
蓝桥杯嵌入式组(七):DS18B20DS18B20是一种单总线温度传感器,蓝桥杯选手资料包提供了底层驱动,实现逻辑需要手写。代码:float DS18B20_GetValue(void){ uint8_t val[2] = {0}; int16_t x = 0; float temp = 0; _disable_irq(); ow_reset(); ow_byte_wr(OW_SKIP_ROM); ow_byte_wr(DS18B20_CONVERT); Delay_us(500原创 2020-11-14 00:26:00 · 433 阅读 · 0 评论 -
蓝桥杯嵌入式组(六):多路AD采集
蓝桥杯嵌入式组(六):多路AD采集蓝桥杯板(主板+拓展板)共有3路ADC采集口,分别是PA4(ch4)、PA5(ch5)、PB0(ch8)。代码:void ADC_Config(void){ GPIO_InitTypeDef GPIO_InitStructure; ADC_InitTypeDef ADC_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE); RCC_APB2PeriphClockCmd(R原创 2020-11-14 00:13:17 · 651 阅读 · 0 评论 -
蓝桥杯嵌入式组(五):AT24C02
蓝桥杯嵌入式组(五):AT24C02AT24C02原理图:IO对应关系:SCL => PB6SDA => PB7代码:static void AT24C02_Delay(void){ uint32_t i = 0x10000; while(i--);}void AT24C02_Write(uint8_t addr, uint8_t* src, uint8_t len){ I2CStart(); I2CSendByte(0xA0); I2CWaitAck(原创 2020-11-13 01:05:43 · 339 阅读 · 0 评论 -
蓝桥杯嵌入式组(四):按键
蓝桥杯嵌入式组(四):按键按键原理图:IO对应关系:Button1 => PA0Button2 => PA8Button3 => PB1Button4 => PB2非阻塞式代码:struct _KEYType { uint32_t Value; uint32_t LastTime; bool Status;}K[4];void Button_Init(void){ GPIO_InitTypeDef GPIO_InitStructure; TIM_原创 2020-11-13 00:05:49 · 526 阅读 · 0 评论 -
蓝桥杯嵌入式组(三):LED
蓝桥杯嵌入式组(三):LEDLED通过74HC573锁存器控制IO对应关系:LE(高电平使能) => PD2D0-D7(数据)=> PC8 - PC15代码:/* LED初始化 */void LED_Init(void){ GPIO_InitTypeDef GPIO_InitStructure; GPIO_InitStructure.GPIO_Pin = 0xFF00; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MH原创 2020-11-12 23:49:49 · 207 阅读 · 0 评论 -
蓝桥杯嵌入式组(二):串口
蓝桥杯嵌入式组(二):串口串口是一个重要的现场调试工具,蓝桥杯板上提供的USB通过FT2232连接至USART2。/* USART2初始化 */void USART2_Init(uint32_t baud){ GPIO_InitTypeDef GPIO_InitStructure; USART_InitTypeDef USART_InitStructure; NVIC_InitTypeDef NVIC_InitStructure; GPIO_InitStructure.GPIO_Pin原创 2020-11-12 23:20:28 · 325 阅读 · 0 评论 -
蓝桥杯嵌入式组(一):时基
蓝桥杯嵌入式组(一):时基通过SysTick定时器提供时间基准,通过此时基可以实现精准延时,并且为状态机的实现提供时间基准。#include "stm32f10x.h"/* 定时相关宏 */#define TickPerSecond (1000)#define usPerTick (1000000/TickPerSecond)/* 时间变量 */volatile uint32_t SystemTime = 0;/* 定时器中断间隔1ms */SysTick_Config(SystemCo原创 2020-11-12 23:06:57 · 294 阅读 · 0 评论