韦东山一期视频学习笔记-系统时钟

一、系统时钟结构分析

  • OM[3]、OM[2]外部引脚接地使用晶振作为MPLLin
  • MPLLCON控制MPLL输出时钟的P/M/S三个参数,直接决定了FCLK
  • MPLL的计算公式


  • CLKDIVN寄存器控制从FCLK生成HCLK和PCLK的分频


二、代码编写

实验目的

时钟FCLK=400M、HCLK=100M、PCLK=50M


CLKDIVN[2:1]=2'b10
CLKDIVN[0]=1'b1
CLKDIVN设置为0x05


MPLLCON设置参考以下官方表格,MPLLCON[19:12]=92,MPLLCON[9:4]=1,MPLLCON[1:0]=1
(92 << 12) | (1 << 4) | (1<<0)


cpu需要设置为异步模式



  • 注意汇编文件要要大写S格式
  • 把汇编中时钟初始化部分屏蔽led闪烁频率会有明显区别
start.S
.text
.global _start
_start:
    //****关闭看门狗****
    ldr r0, =0x53000000
    mov r1, #0
    str r1, [r0]

    //****设置MPLL时钟****
    //设置LOCKTIME
    ldr r0, =0x4C000000
    ldr r1, =0xFFFFFFFF
    str r1, [r0]

    //设置CLKDIVN
    ldr r0, =0x4C000014
    ldr r1, =0x5
    str r1, [r0]

    //设置CPU异步模式
    mrc p15,0,r0,c1,c0,0 
    orr r0,r0,#0xc0000000 //R1_nF:OR:R1_iA 
    mcr p15,0,r0,c1,c0,0

    //设置MPLLCON
    ldr r0, =0x4C000004
    ldr r1, =(92 << 12) | (1 << 4) | (1<<0)
    str r1, [r0]    


    //****设置栈****
    ldr sp, =4096 //nand启动 设置在4k顶部
    //ldr sp, =0x4000000 + 4096 //nor启动

    //****调用main****
    bl main
halt:
    b halt
Makefile
objs = start.o led.o

dep_files := $(patsubst %, .%.d, $(objs))

dep_files := $(wildcard $(dep_files))

CFLAGS = -Iinclude

led.bin : $(objs)
    arm-linux-ld -Ttext 0x00000000 $^ -o led_elf
    arm-linux-objcopy -O binary -S led_elf $@

ifneq ($(dep_files),)
include $(dep_files)
endif

%.o : %.c
    arm-linux-gcc $(CFLAGS) -c -o $@ $< -MD -MF .$@.d

%.o : %.S
    arm-linux-gcc -c -o $@ $^

clean:
    rm *.o led_elf led.bin $(dep_files)

distclean:
    rm $(dep_files)

.PHONY: clean 
C文件
#define GPBCON (*(volatile unsigned int *)0x56000010)
#define GPBDAT (*(volatile unsigned int *)0x56000014)

void delay(int tt);

int main(){
    GPBCON = 0x00015400;
    GPBDAT = 0x00000000;
    
    GPBDAT |= (1<<5) | (1<<6) | (1<<7) | (1<<8);
    while(1){
        GPBDAT &= ~(1<<6);
        delay(10000);
        GPBDAT |= (1<<6);
        delay(10000);
    }
}

void delay(int tt){
    int a,b;
    for(a=0;a<=tt;a++)
    for(b=0;b<=100;b++);
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 219,110评论 6 508
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,443评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 165,474评论 0 356
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,881评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,902评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,698评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,418评论 3 419
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,332评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,796评论 1 316
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,968评论 3 337
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,110评论 1 351
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,792评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,455评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,003评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,130评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,348评论 3 373
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,047评论 2 355

推荐阅读更多精彩内容