
1 实验目的
(1) 了解系统时钟在嵌入式系统中的作用;
(2) 掌握系统时钟的使用。
2 实验设备
(1) S3C2410嵌入式开发板,JTAG仿真器。
(2) 软件:PC机操作系统Win98、Win2000或Windows XP,ADS1.2集成开发环境,仿真器驱动程序,超级终端通讯程序。
3 实验内容
(1) 编程实现系统时钟功能,使在开发板上跑马灯显示;
(2) 改变频率大小,比较跑马灯闪的频率,例如400MHz和100MHz、200MHz的比较。
4 实验步骤
(1) 参照模板工程,新建一个工程ClOCK,添加相应的文件,并修改CLOCK的工程设置;
(2) 创建Main.c并加入到工程CLOCK中;
(3) 将可参考的LedTest文件和System_clock文件组合修改实现功能
关键代码如下:
start
ldr r0, = 0x53000000 ; 看门狗关闭代码
mov r1, #0
str r1, [r0]
bl clock_init ; 调用时钟初始化函数
bl led_loop ; 调用点亮Led函数
clock_init ; 时钟初始化代码
ldr r1, =0x10011 ; MPLL is 400MHz
led_loop ; 循环点亮Led
(5) 编译CLOCK;
(6) 改变频率,观察跑马灯;
(7) 实验现象:
MPLL为400MHz时跑马灯的显示频率比为200MHz时快。
5 实验总结
通过这次实验我掌握了跑马灯的实现和系统时钟的实现方法,以及MPLL的计算。
在实验过程中遇到了很多的问题,在将两个代码进行整合的时候,出现了很多错误,但最终通过一点点修改和老师的讲解都解决了。
通过实验现象对代码有了更深的理解,每一段代码实现胡功能有了更深的理解,可以说是收获颇多。
