自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(4)
  • 收藏
  • 关注

原创 STM32F429 + LVGL 9.5 异步 DMA2D 切换标签卡死问题

摘要:STM32F429IGT平台使用LVGL 9.5.0时,开启DMA2D异步绘制(LV_DRAW_DMA2D_ASYNC=1)后,切换复杂界面会触发死锁。问题根因是LVGL官方bug(v9.5.0未修复):dispatch_cb()中若绘制区域与裁剪区无交集,会直接返回而未清除任务占用标志,导致后续wait_finish_cb()无限等待未触发的DMA2D中断。官方PR#10182已修复(需手动移植到9.5.0),核心改动为无交集时立即标记任务完成并释放资源。修复后异步模式运行正常。

2026-08-17 19:25:07 380

原创 Keil MDK 常用快捷键总结

Keil 常用快捷键

2025-07-08 19:17:37 1604

原创 理解C语言数组传参与数组名的本质

本文深入解析C语言数组名本质及传参机制。数组名在多数情况下等价于首元素地址(arr+1跳过1个元素),但在sizeof运算时表示整个数组(特例)。数组传参本质是传递首元素地址,因此函数内修改会影响原数组。实验证明:arr_inc1(int arr[5])和arr_inc2(int *p)两种写法等效,都通过指针操作修改数组元素。而变量传参是值传递,需用指针才能修改原值。关键结论:数组名是地址常量(除sizeof外),数组传参实为地址传递,这是与变量传参的本质区别。

2025-07-07 01:06:22 785

原创 MCS-51单片机扩展并行I/O实现读与写(8255A与理解MOVX指令时序)

摘要:51单片机通过8255A扩展IO口时,需使用74LS373锁存器配合P0口复用地址/数据总线。74LS373在ALE下降沿锁存地址信号(A1A0),8255A根据地址选择寄存器(PA/PB/PC/控制口)。MOVX指令自动生成时序:先输出地址并锁存,再传输数据,通过WR/RD信号控制读写。Proteus仿真验证了该设计,程序成功实现PB口数据转发至PA口。时序分析表明,ALE周期性脉冲不影响操作,仅当WR有效时8255A才会响应。(148字)

2025-04-30 21:30:34 1623 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除