【ARM 裸机】I.MX 启动方式之启动头文件 2

接上一节:【ARM 裸机】I.MX 启动方式之启动头文件 1

2.3、DCD

DCD,Device Configuration Data ,就是配置 6ULL 寄存器的,DCD 数据最大限制 1768 字节;

CCGR0 是不是很熟悉?对,在写汇编驱动的时候配置过这个寄存器;

接下来会设置 DDR 初始化参数 ;

接下来会配置 MMDC(DDR 控制器),参看 I.MX6ULL 参考手册第 35 章;

2.4、其他的数据

检查数据命令,NOP 命令,解锁命令也都属于 DCD 数据,只是没有管它而已。

可以得出,DCD 里面的初始化配置主要包括三方面:设置 CCGR0~CCGR6 这 7 个外设时钟使能寄存器,默认打开所有的外设时钟;配置 DDR3 所用的所有 IO;配置 MMDC 控制器,初始化 DDR3;

在这一节:【ARM 裸机】汇编 led 驱动之烧写 bin 文件 中说到,我们编译出来的 .bin 文件不能直接烧写到 SD卡中,需要在.bin 文件前面加上 IVT、BOOT DATA 和 DCD 这三个数据块,这三个数据块是有指定格式的,必须按照格式填写,然后将其放到 .bin 文件前面,最终合成的文件才是直接烧写到 SD 卡中的文件。

相关推荐
MarcoPage16 分钟前
Python 字典推导式入门:一行构建键值对映射
java·linux·python
埃伊蟹黄面1 小时前
计算机的“身体”与“灵魂”:冯·诺依曼架构与操作系统
linux
winner88813 小时前
Linux 软件安装 “命令密码本”:yum/apt/brew 一网打尽
linux·运维·服务器
思麟呀5 小时前
Linux的基础IO流
linux·运维·服务器·开发语言·c++
GilgameshJSS5 小时前
STM32H743-ARM例程41-FMC_INDEP
arm开发·stm32·单片机·嵌入式硬件
winner88815 小时前
嵌入式Linux驱动开发全流程:工具协作+核心概念拆解(从入门到理解)
linux·运维·驱动开发
ShiinaKaze5 小时前
fatal error: bits/c++config.h: No such file or directory
linux·gcc·g++
Archy_Wang_16 小时前
脚本自动生成专业Linux巡检报告
linux·运维·服务器
java_logo6 小时前
SGLANG Docker容器化部署指南
linux·运维·docker·容器·eureka·1024程序员节
花阴偷移7 小时前
逆向基础--汇编源程序认识(08)
汇编