• PIO参考手册

    本文原始文档来自于RP2040官方文档,该译文内容源自互联网 https://github.com/charlee/rp2040-pio-zhcn本文的编写重新参考了最新的RP2350官方文档,更新并补充了许多新的内容,包括新版本PIO的特性和新加...
  • SWD采样时序

    最近在工作中遇到一个技术问题,在翻看ARM的一份技术手册《Arm Debug Interface Architecture Specification》,看到SWD章节时,我突然有个疑惑,SWD的DIO信号到达是在CLK的上升沿采样还是下降沿采样? ...
  • 重新做了一版ARM仿真器

    简介我最近又重新设计制作的了一款ARM仿真器,相比于之前做的版本,增加了一块屏幕,并使用编码器拨轮进行交互,还内置了一块电池,可以实现脱机程序烧录。 下面是主要配置: 160x128 像素分辨率的1.8寸屏幕 RP2350 MCU 内置16MB...
  • 一个整数无法正常溢出导致的bug

    lvg是一款非常流行的图形库,最近在使用它的过程中发现一个有意思的问题,这里做简单记录。话说事情是这样的,我为按钮设计了一个动画,大概是按钮一直沿y轴周期性的往复移动。 123456789lv_anim_t by;lv_anim_init(&...
  • 简单聊聊LevelX

    简介LevelX,一款专为嵌入式存储打造的存储中间件,常与ThreadX等产品协同作业。它为嵌入式实时系统提供了卓越的Flash存储磨损均衡功能,即便独立使用也游刃有余。LevelX能够与各种文件系统和实时系统完美融合,适应多变的应用场景。 Thre...
  • 移植MicroPython时的一些思考

    今年4月份尝试手动将MicroPython移植到自己的平台上,在移植的过程中发现MicroPython的内部模块有大量的底层依赖,这使得移植工作视乎有点庞大。当时基本上仅完成了BASIC_FEATURES等级的移植,相当于完成了最小系统,在REPL可...
  • Black Magic Debug与CMSIS-DAP合体

    移植Black Magic Probe固件虽然BMP官方已经支持了许多的芯片,但是我决定做一些不一样的尝试,我最开始将Black Magic Probe的代码移植到了STM32H750芯片平台上,希望它较高的主频可以实现更快的调试速度。但实际测试下来...
  • C语言宏的图灵完备

    这里讨论的C语言宏系统仅关于#define,不包含#include, #if,#ifdef,#elif,#else,#endif等。 C语言宏的可选参数前段时间在某个嵌入式软件项目中涉及一个这样的功能,需要将一个wav音频文件嵌入式到二进制固件中...
  • 复刻一个BlackMagicProbe

    Black MagicBlack Magic Probe是一个内建GDB server的嵌入式芯片调试器,可以用来调试ARM、riscv等单片机。关于该调试器的详细信息可以参考官网网。 克隆版本我基于官方的固件,设计了一个电路板,做了一个自己的版本,...
  • 一个简单但强大的协程库-PtPlus

    去年我基于Protothreads协程库实现了一些有意思的扩展功能以方便使用该协程库。相关的两篇文章可以翻看去年的博客。 更优雅的使用Protothreads协程框架 PT协程的一个小扩展 最近我继续完善了相关的功能,并增加了一些新的功能。实现了...
/5