
AT91SAM9X35时钟设置步骤详解
5星
- 浏览量: 0
- 大小:None
- 文件类型:DOC
简介:
本文详细介绍了如何为AT91SAM9X35微处理器进行时钟配置,涵盖各个关键步骤和注意事项,帮助开发者快速掌握相关知识。
AT91SAM9X35 是一款基于 ARM926EJ-S 内核的微处理器,由Atmel公司(现已被Microchip收购)设计,并广泛应用于嵌入式系统中。在该芯片的配置过程中,时钟管理是至关重要的一个环节,因为它直接影响到系统的性能和功耗。本段落将详细讲解AT91SAM9X35 的时钟配置原理和步骤。
首先,在配置开始阶段需要切换至主时钟源MAINCK,这通常指的是外部晶体振荡器。通过读写内存地址来实现这一操作。`PMC_MCKR.CSS = 1`表示选择主时钟源,而 `PMC_MOR = 0x10374009` 则用于配置外部12MHz晶振并启用。这里的具体数值包含了多个标志位,如ME、MSB、MORSTEN 和 MOSCXTEN 分别控制着晶体振荡器的启用和启动条件。
接下来是PLL(锁相环)的配置步骤以生成所需的频率输出。`CKGR_PLLAR.MULA = 199` 和 `CKGR_PLLAR.DIVA = 3` 的设置用于计算 PLL 输出频率,公式为 `MAINCK * (MULA + 1) / DIVA` ,这里得出PLLACK(即PLL A的输出)为800MHz。此外,UTMI字段被设为40以确保USB时钟达到480 MHz。
设定 MCK (主系统总线时钟)频率是下一个关键步骤。通过设置 `PMC_MCKR.PLLADIV2 = 1` 和 `PMC_MCKR.MDIV = 3` ,将PLLACK的输出分频,使得MCK最终为133MHz(即400 MHz 输入经MDIV=3 分频后的结果),这一频率通常用于DDR内存。
PCK (外设时钟)是针对特定外围设备设计的。通过设置 `PMC_MCKR.PRES` 来调整其频率,示例中将 PRES 设置为 0 ,不进行分频处理,因此 PCK 直接从 MCK 获取400MHz 的信号,供 CPU 使用。
最后一步是切换至 PLLACK(800 MHz)作为系统时钟源。通过设置 `PMC_MCKR.CSS = 2` 来使能PLL输出,确保所有之前配置的时钟设定生效,并让CPU及其他组件按照新的频率运行。
总结来说,AT91SAM9X35 的时钟配置涉及选择合适的主时钟源、调整锁相环生成所需频率以及对MCK和PCK进行分频设置以满足不同系统组件的需求。这一过程需要精确的计算与编程来确保系统的稳定性和性能表现。在实际应用中,还应考虑功耗、稳定性及兼容性等因素,进一步优化时钟配置方案。
全部评论 (0)


