这里的单脉冲控制是指在PWM下产生指定个数的脉冲。 先在CubeMx中按照PWM进行配置。 定义一个变量表示脉冲个数。 uint8_t PWMnum = 5; 开启PWM中断。 HAL_TIM_PWM_Start_IT(&htim1, TIM_CHANNEL_1); 定义脉冲完成回调函数。 uint ...
分类:
其他好文 时间:
2020-05-23 15:03:36
阅读次数:
135
说明 这节实现的功能: STM32+W5500实现MQTT通信控制, 通过MQTT调试助手控制开发板两路继电器 485/422接口输入的数据通过W5500(MQTT) 转发给MQTT调试助手 MQTT调试助手发送的信息通过W5500(MQTT)转发到485/422接口输出 细节功能: 1.DHCP动 ...
分类:
其他好文 时间:
2020-05-23 09:58:54
阅读次数:
132
(1) STM32的复位时间至少要大于2个机器周期才生效,复位时间与RC值有关。 (2) 复位按键打开时,RES被拉R2拉高,合上按键,由于电容两端电压不能突变,电容会开始放电,放完后RES电位降到GND。 ...
分类:
其他好文 时间:
2020-05-22 21:46:00
阅读次数:
388
STM32中APB1和APB2控制对应表 分类 APB1 电源接口 UART2、UART3 CAN TIM2、3、4 SPI2 IIC1、IIC2 看门狗 USB APB2 GPIO_A-E USART1 ADC123 TIM1、8 SPI1 ALL ...
分类:
其他好文 时间:
2020-05-22 12:41:47
阅读次数:
91
按键可以用按键扫描的方法和外部中断的方法。 外部中断看前面,个人推荐使用外部中断更好。 其余情况可以用按键扫描,这里只讲按键扫描的方法。 先在main.h中定义按键名称 #define KEY0 HAL_GPIO_ReadPin(GPIOC,GPIO_PIN_5) //KEY0按键PC5 #defi ...
分类:
其他好文 时间:
2020-05-22 09:35:56
阅读次数:
124
用短路块短接BOOT与VDD,然后重启,发现新硬件后自动安装了驱动但设备管理器显示是bootloader,卸载连同驱动后显示如下: DFU设备列表也显示正确: ...
分类:
其他好文 时间:
2020-05-19 11:04:18
阅读次数:
72
1 GPIO port STM32一共有7组GPIO port,分别是GPIOA[15:0]~GPIOG[15:0],每组GPIO port 有16个 pin;每组GPIO port都有一组寄存器; GPIO寄存器的控制单位是GPIO port,而不是pin;所以寄存器的最小处理单位是一个16位的字 ...
分类:
其他好文 时间:
2020-05-16 18:29:30
阅读次数:
60
数组(容器) 数组是一组数据类型相同的数据的组合,将这些数据统一的管理起来 数组本身是一个引用数据类型,数组内存储的类型可以是基本类型,也可以是引用类型 数组的特点 数组是一个引用数据类型 数组是在堆内存中的一串连续的地址存在 数组在初始化时必须指定长度 堆内存的数组空间长度一旦确定,不能再发生改变 ...
分类:
编程语言 时间:
2020-05-15 18:11:40
阅读次数:
73
1 系统时钟树 单片机首先要在正确的时钟频率下才能正常工作,几乎外设的使用都会用到时钟,先了解一下原理也是不错的; 时钟树对系统的时钟结构进行了描述,时钟来源主要有4个,分别是HSI, HSE, LSI, LSE; 1.1 HSI 高速内部时钟信号: 由内部的RC振荡器生成,8MHz, 1.2 HS ...
分类:
其他好文 时间:
2020-05-14 01:22:48
阅读次数:
62
1、确定鉴相频率 OSC_2X:2倍频 PLL_R_PRE:用于降低输入频率,限制PLL-R分频器最大250M的限制,其他情况不需要使用。 PLL_R:分频得到鉴相器频率fPD,输入进来的频率最大250Mhz MULT:该方法对移相器的频率很有帮助,避免了整数边界激励,如果引入干净或者回路带宽较宽, ...
分类:
其他好文 时间:
2020-05-13 11:44:09
阅读次数:
268