跳转到内容

Hempl/闪存

来自维基教科书,开放世界中的开放书籍

Mizar32 有三种版本,具有不同的闪存和静态 RAM 容量

  • 型号 A:512KB 闪存 / 64KB SRAM / 32MB SDRAM
  • 型号 B:256KB 闪存 / 64KB SRAM / 32MB SDRAM
  • 型号 C:128KB 闪存 / 32KB SRAM / 32MB SDRAM

闪存内置于 AT32UC3A0128/256/512 处理器芯片中,并从地址 0x80000000 响应。

前 8KB (0x80000000-0x80001FFF) 包含“Atmel AT32UC3 USB DFU 引导加载程序”,它可以通过 USB 端口下载和写入新的内容到闪存的其余部分。当芯片复位或上电时,它从 0x80000000 开始执行,即 USB DFU 引导加载程序。它检查用户按钮是否按下,如果是,则准备下载和编程闪存的其余部分。如果按钮未按下,则跳至地址 0x80020000,其中包含 Hempl 解释器可执行代码的第一个字。

或者,可以使用 emBLOD(嵌入式引导加载程序)编程从 0x80020000 开始的闪存,它将可执行代码从 SD 卡上的文件“autorun.bin”加载到 SDRAM 中并执行它。在 SDRAM 中,代码运行速度大约是闪存中程序的 6 倍,但您可以加载和运行高达 32MB 的程序。

如果您有 JTAG 编程设备,可以通过覆盖 USB DFU 引导加载程序来编程整个 128/256/512KB。

还有一个 512 字节的闪存区域,位于 0x80800000 - 0x808001FF,即“闪存用户页面”,它在最后一个字中保留了 USB DFU 引导加载程序的配置字,但除此之外是免费的。

进一步阅读

[编辑 | 编辑源代码]
华夏公益教科书