![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
STM32
刘更友
记录学习过程
展开
-
HAL-STM32-USB-FLASH-FATFS系统文件
1.系统配置2.添加硬石 spi Flash驱动/** ****************************************************************************** * 文件名程: bsp_spiflash.c * 作 者: 硬石嵌入式开发团队 * 版 本: V1.0 * 编写日期: 2015-10-04 * 功 能: 板载串行Flash底层驱动实现 ************...原创 2022-05-24 17:22:41 · 534 阅读 · 0 评论 -
HAL-STM32-USB内部Flash虚拟U盘更新程序
1.IAP部分添加fat32文件(修改Flash擦除代码,F401ccu6按扇区删除,F103按页删除)static bool _fat32_write_firmware(const uint8_t *b, uint32_t addr){ bool return_status = true; HAL_StatusTypeDef status; HAL_FLASH_Unlock(); uint32_t offset = add.原创 2022-04-13 00:05:06 · 1863 阅读 · 7 评论 -
STM32-HAL 学习-单通道ADC-08
原创 2022-04-06 23:33:17 · 353 阅读 · 0 评论 -
STM32-HAL 学习-4通道ADC-DMA-09
1.时钟配置2.ADC配置3.主函数原创 2022-04-01 22:13:02 · 214 阅读 · 0 评论 -
STM32-HAL 学习-TIM输入捕获-07
1.时钟配置如前面2.定时器输入捕获通道一设置3.主函数(注意开启定时器中断)uint16_t capture = 0;uint8_t End_status = 0;uint16_t Cap_Timer = 0;uint32_t H_Timer = 0;int main(void){ /* USER CODE BEGIN 1 */ /* USER CODE END 1 */ /* MCU Configuration-------------..原创 2022-04-01 16:48:23 · 2764 阅读 · 0 评论 -
STM32-HAL 学习-Systick滴答延时-06
1.时钟配置如前面2.函数修改while (1) { /* USER CODE END WHILE */ /* USER CODE BEGIN 3 */ HAL_GPIO_TogglePin(led1_GPIO_Port,led1_Pin); HAL_Delay(500*1000); //500ms HAL_GPIO_TogglePin(led2_GPIO_Port,led2_Pin); HAL_Delay(1000*1000); //1s原创 2022-03-27 23:42:51 · 331 阅读 · 0 评论 -
STM32-HAL 学习-UART发送与接收-05
1.时钟配置参照前面设置2.Uart配置3.重定义printfuart.h 里面添加stdio.h头文件uart.c文件里添加重定义函数int fputc(int ch , FILE *f){ HAL_UART_Transmit(&huart1,(uint8_t *)&ch,1,0xFFFF); return ch;}int fgetc(FILE *f){ uint8_t ch = 0; HAL_UART_Receive(&a原创 2022-03-27 23:21:37 · 505 阅读 · 0 评论 -
STM32-HAL 学习-PWM-04
1.Tim-PWM设置2.函数(呼吸灯)int main(void){ /* USER CODE BEGIN 1 */ uint16_t pwmValue = 0; /* USER CODE END 1 */ /* MCU Configuration--------------------------------------------------------*/ /* Reset of all peripherals, Initializes the Flas.原创 2022-03-23 15:39:35 · 223 阅读 · 0 评论 -
STM32-HAL 学习-基本定时器-03
1.时钟设置(72Mhz)2.Basic Timer设置3.使能定时器中断4.函数/* USER CODE BEGIN 0 */uint32_t Timer = 0;void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim){ if(htim->Instance==TIM6) { Timer++; }}/* USER CODE END 0 *//** * @brief原创 2022-03-23 14:04:01 · 1053 阅读 · 0 评论 -
STM32-HAL 学习-外部中断-02
1.时钟设置如-012.IO外部中断设置3.使能外部中断4.添加中断回调函数void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin){ if(HAL_GPIO_ReadPin(KEY1_GPIO_Port,KEY1_Pin) == GPIO_PIN_SET) { HAL_GPIO_TogglePin(LED1_GPIO_Port,LED1_Pin); }}...原创 2022-03-23 12:00:36 · 89 阅读 · 0 评论 -
STM32-HAL 学习-GPIO设置-01
项目场景:提示:这里简述项目相关背景:例如:项目场景:示例:通过蓝牙芯片(HC-05)与手机 APP 通信,每隔 5s 传输一批传感器数据(不是很大)问题描述提示:这里描述项目中遇到的问题:例如:数据传输过程中数据不时出现丢失的情况,偶尔会丢失一部分数据APP 中接收数据代码:@Override public void run() { bytes = mmInStream.read(buffer); mHandler.obtainMessage(READ_DATA, b原创 2022-03-23 11:42:19 · 475 阅读 · 0 评论