ESP-IDF引用自定义组件头文件失败

摘要: 如题,折腾一番,在网上看了在工程里面创建新组件的内容,有说不需要修改main组件中的CMakeLists.txt,看了一些开源工程也没看见在这边做修改,最后终于结合着一位up主的评论(espidf-创建自己的组件_哔哩哔哩_bilibili)和官方例程找到原因。 如果工程目录下的CMakeLists 阅读全文
posted @ 2025-11-10 16:59 fhbui 阅读(11) 评论(0) 推荐(0)

ESP-IDF开发环境搭建(Fedora)

摘要: 如果想在Fedora里进行SSH外部连接,需要修改一些地方: sudo vi /etc/ssh/ssh_config,在里面将被注释的Port 22打开; 回到终端执行systemctl enable sshd.service 终端执行systemctl start sshd.service ESP 阅读全文
posted @ 2025-11-08 21:03 fhbui 阅读(22) 评论(0) 推荐(0)

OTA远程升级实现记录

摘要: STM32程序更新实现 MCU程序更新逻辑是: STM32的flash地址从0x0x0800 0000开始,将flash中分出三个分区,分别作为BootLoader、APP1、APP2,每个区都可能存储着各自的代码程序 MCU上电、复位后从 0x0800 0000 进入BootLoader程序,检测 阅读全文
posted @ 2025-11-05 11:48 fhbui 阅读(12) 评论(0) 推荐(0)

关于STM32中调用 HAL_FLASHEx_Erase 扇区擦除后发生 HardFault_Handler 的问题

摘要: 标题中提及的对象是Flash扇区擦除,而实际上引起 HardFault_Handler 的是栈溢出。我直接在函数中创建了一个 uint32_t 类型的数组且数目为256个(1024字节),而程序中设定的堆栈却只有0x400(1024字节,这个可以在startup_stm32XXXX.s启动文件查找并 阅读全文
posted @ 2025-10-26 16:54 fhbui 阅读(41) 评论(0) 推荐(0)

LVGL PC端模拟器搭建(vscode)

摘要: (纯记录,非手把手教学,但文末有相关参考链接可供学习) 以vscode为例,除了有基本的vscode软件,还需要下载安装以下内容:(路径不含中文) cmake MinGW SDL2 LVGL模拟器源码:https://github.com/lvgl/lv_port_pc_eclipse/tree/r 阅读全文
posted @ 2025-09-02 00:12 fhbui 阅读(582) 评论(0) 推荐(0)

LVGL移植

摘要: 源码裁剪 源码所需要的内容如下: 【文件夹】demos、examples(里面只保留porting)、src 【.h文件】lv_conf_template.h、lvgl.h 其中,以下文件需要进行改名: lv_conf_template.h -> lv_conf.h lv_port_disp_tem 阅读全文
posted @ 2025-08-30 15:45 fhbui 阅读(34) 评论(0) 推荐(0)

SDIO学习记录

摘要: 为了使用SDIO对SD卡进行读写,移植了ST的官方使用例程源码,但是移植后发现程序执行 BSP_SD_WriteBlocks() 后卡死在 while((BSP_SD_GetCardState() != SD_TRANSFER_OK)) ,后来比对野火的例程(也是移植的ST官方)做出下面修改,问题得 阅读全文
posted @ 2025-02-25 23:24 fhbui 阅读(109) 评论(0) 推荐(0)

[问题] Delay_us等延时函数与HAL库延迟函数冲突导致程序卡死

摘要: 今天使用了OLED驱动代码,其中为了适应MCU较高速度而加入了Delay_us(4),后来再调用HAL库的HAL_Delay()出现了程序卡死在HAL库延迟函数之中。为此对延迟函数作进一步学习。 问题原因 首先是Delay_us()函数原型(代码来源江科大的代码) void Delay_us(uin 阅读全文
posted @ 2025-02-04 22:19 fhbui 阅读(387) 评论(0) 推荐(0)

[debug记录] UART数据收发

摘要: 程序无法进入HAL_UART_RxCpltCallback 配置接收中断后需要使能接收中断,方式有如下三种。 //使能RX接受中断(三种方式) SET_BIT(USART1->CR1, USART_CR1_RXNEIE); __HAL_UART_ENABLE_IT(&uart1_handle,UAR 阅读全文
posted @ 2025-01-26 16:25 fhbui 阅读(75) 评论(0) 推荐(0)

DMA笔记

摘要: PSIZE:外设数据宽度 MSIZE:存储器数据宽度 DMA工作流程 一个DMA控制器有8个数据流,其中的每个数据流有8个通道与其他外设连接。当一个外设请求占用某一数据流通道时,相同数据流的其他通道处于不可用状态。 8个数据流会进入仲裁器,仲裁器会先后根据软件上的数据流优先级配置、硬件上的数据流编号 阅读全文
posted @ 2025-01-26 09:34 fhbui 阅读(70) 评论(0) 推荐(0)