微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > S3C2440系统时钟

S3C2440系统时钟

时间:11-21 来源:互联网 点击:

r3,[r2] ; 将数据寄存器(r2)里的值放入r3

bic r3,r3,#0x1e0 ; 清除bit[5]~bit[8],bit[n]代表led1~led4

orr r3,r3,#0x1c0 ; 清对应Led位-亮灯,设置相应位-灭灯(点亮led1)

str r3,[r2] ; 将控制亮灯数据写入数据寄存器r2

ldr r0,=DELAYVAL ; 设置延迟数

bl delay ; 调用延迟子程序

ldr r3,[r2] ; 将数据寄存器(r2)里的值放入r3

bic r3,r3,#0x1e0 ; 清除bit[5]~bit[8],bit[n]代表led1~led4

orr r3,r3,#0x1a0 ; 清对应Led位-亮灯,设置相应位-灭灯(点亮led2)

str r3,[r2] ; 将控制亮灯数据写入数据寄存器r2

ldr r0,=DELAYVAL ; 设置延迟数

bl delay ; 调用延迟子程序

ldr r3,[r2] ; 将数据寄存器(r2)里的值放入r3

bic r3,r3,#0x1e0 ; 清除bit[5]~bit[8],bit[n]代表led1~led4

orr r3,r3,#0x160 ; 清对应Led位-亮灯,设置相应位-灭灯(点亮led3)

str r3,[r2] ; 将控制亮灯数据写入数据寄存器r2

ldr r0,=DELAYVAL ; 设置延迟数

bl delay ; 调用延迟子程序

ldr r3,[r2] ; 将数据寄存器(r2)里的值放入r3

bic r3,r3,#0x1e0 ; 清除bit[5]~bit[8],bit[n]代表led1~led4

orr r3,r3,#0xe0 ; 清对应Led位-亮灯,设置相应位-灭灯(点亮led4)

str r3,[r2] ; 将控制亮灯数据写入数据寄存器r2

ldr r0,=DELAYVAL ; 设置延迟数

bl delay ; 调用延迟子程序

b led_loop

delay

sub r0,r0,#1 ; r0=r0-1

cmp r0,#0x0 ; 将r0的值与0相比较

bne delay ; 比较的结果不为0,继续调用delay

mov pc,lr ; 返回

END ; 程序结束符

该实验首先关闭了看门狗定时器,然后修改系统时钟,将默认系统工作频率12MHz提高到400MHz,由于CPU工作在较高频率下,其执行速度明显比未启动系统时钟时高的多,可以通过注释掉系统时钟初始化代码跳转指令bl clock_init,对比LED的跑马灯效果可以证明。

++++++++++++++++++++++++++++++++++++++++++

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top