s5pv210--clocks的设置----汇编代码
来源:互联网 发布:linux如何修改时间 编辑:程序博客网 时间:2024/05/16 17:49
今天写了点代码,不过还没想到怎么测试,先贴出来了,大家给个意见,
写了这个代码,在真正感觉到自己是个菜鸟,这个代码也是按照前面几个帖子的步骤写的:
AREA CLOCK, CODE
ENTRY
start
; 关闭看门狗
ldr r0, =0xE2700000
mov r1, #0
str r1, [r0]
;第一步: 打开一个PLL,如:APLL_CON[31] = 1
ldr r0 , = 0xE0100100 ;APLL_CON0
ldr r1 , = 0xE0100108 ;MPLL_CON0
ldr r2 , = 0x1<<31
str r2 , [r0]
str r2 , [r1]
;第二步: 等待lock的上锁时间,APLL_LOCK[0-15] = 0xFFFF
ldr r0 , = 0xE0100000 ;APLL_LOCK
ldr r1 , = 0xE0100008 ;MPLL_LOCK
ldr r3 , = 0x0000ffff
str r3 , [r0]
str r3 , [r1]
;第三步: 选择PLL的输出时钟代替参考的输入时钟,在PLL输出时钟稳定的时,如APLL_SEL = 1、CLK_SRC0 = 0x10001111
ldr r0 , = 0xE0100200 ;CLK_SRC0
ldr r1 , = 0x10001111
str r1, [r0]
;第四步: 设置PLL的输出频率,即PMS,这几位的值,如:APLL_CON0的M=0x7d,P=0x3,S=0x1
ldr r0 , = 0xE0100100 ;APLL_CON0
ldr r1 , = 0xE0100108 ;MPLL_CON
ldr r3 , = 0x7d <<16 | 3 <<8 | 0x1
ldr r4 , = 0x29b<<16 | 0xc<<8 | 0x1
str r3 , [r0]
str r4 , [r1]
;第五步: 用除法器改变系统的输出频率,即设置寄存器如:CLK_DIV0 =0x14131440
ldr r0 , = 0xE0100300 ;CLK_DIV0
ldr r1 , = 0x14131440
str r1, [r0]
END
这个代码编译器用的是 armasm就是ads的编译器
这个代码有毛病,,,
需要把第一步放到第四步后边,就可以了,,,嘿嘿
- s5pv210--clocks的设置----汇编代码
- s5pv210 clocks的使用
- s5pv210的汇编中断
- 5.S5PV210 时钟初始化汇编代码
- s5pv210--clocks管理,锁相环和分频器的作用和用法配置
- 八.ARM裸机学习之S5PV210的时钟系统2(汇编代码及时钟框图深入理解)
- (二)S5pv210的GPIO使用_part1<LED汇编版>
- s5pv210的locks寄存器设置流程
- 4.S5PV210时钟设置的关键寄存器
- CodeBlocks设置Intel反汇编代码语法
- S5PV210 设置SVC栈
- 基于S5PV210的中断处理的过程和代码分析
- s5pv210——定时器的知识和代码操作
- s5pv210——定时器的知识和代码操作
- linux的中断子系统简介(汇编和hard irq部分)_ARM平台(S5PV210)
- [Xcode]_[解决Xcode设置断点,调试窗口出现反汇编代码的异常情况]
- GCC生成的汇编代码
- 大数乘除的汇编代码
- 构造数独和解数独
- VC编译LUA与调用
- 一个android工程代码多个差异化项目管理方法探讨
- java开发常用的jar包
- sub.java
- s5pv210--clocks的设置----汇编代码
- 查询并删除重复记录的SQL语句
- Exploded location overlaps an existing deployment解决办法
- android LayoutInflater的获取
- yaffs2文件系统移植
- 安装后新建Android出现“AndroidManifest.xml 系统找不到指定的文件”解决方案
- 【学习笔记】IOS(1)之UIAlertView
- 堆(Heap)的实现
- strust2和velocity的配置