在学习写一个Bootloader的过程中,想要通过串口助手直接把bin文件发到STM32并写入到APP_FLASH。 35kB的bin文件,只能成功写入十几个字节,还每次都不一样多。 把波特率从115200降低到9600时能写入6kB数据,继续降低到2400时能写入7kB数据到Flash。 还请大佬指教~ userapplen =0; timeout = HAL_MAX_DELAY; /* Clean the input path */ __HAL_UART_FLUSH_DRREGISTER(&huart1); uint32_t data32[UART_BUF_SIZE / 4]; HAL_StatusTypeDef state; HAL_FLASH_Unlock(); while(1) { state = HAL_UART_Receive(&huart1, uart_buf, 4, 5000); memcpy(data32, uart_buf, 4); // 关闭总中断 __disable_irq(); // 写Flash HAL_FLASH_Program(FLASH_TYPEPROGRAM_WORD, APPLICATION_ADDRESS + userapplen, data32[0]); printf("Programming\r\n"); // 开启总中断 __enable_irq(); if(state != HAL_OK) { HAL_FLASH_Lock(); printf("Programming completed Successfully! %ldBtye\r\n", userapplen += huart1.RxXferCount); break; } userapplen += 4; } |
Cube IDE下载程序时报错Target no device found,但是ST-LinkUpgrade可以识别到且可以更新固件
ffmpeg移植到SMT32H7上面有可能吗
请问CubeIDE导入模型生成的代码卡死在MX_X_CUBE_AI_Process()函数有人遇到过吗
STM32CubeIDE V1.16.0 配置stm32g431cb(128K Flash)生成的链接文件(.ld)显示flash只有112K,这是为什么?
请问STM32CubeIDE使用STlink下载板子无反应,都排查了一遍没有问题
stm32cubeide更新后启动 发生了错误,请参阅日志文件
stm32g431rbt怎么显示汉字
关于STM32CubeIDE编译设置问题,是否有像keil一样有编译后执行Bat脚本的功能和设置?
STM32F103做从站 上电过程,上位机不断发送数据造成,通讯失败,请大侠指导一下
请问:TOUCH GFX 与ST32CUBE-IDE是什么关系
好!!!!
简单地将!HAL_OK做为结束标志来判断似乎不太合理。因为可能是出错、可能是busy、可能是超时。
另外,RxXferCount应该是 还没有接收到的数据个数,并非已收到的数据个数。
基本操作流程及做法可以参考下其它系列的IAP例程。