10_epit_timer.zip
大小:367.2KB
价格:10积分
下载量:0
评分:
5.0
上传者:H2z1220
更新日期:2024-10-23

Linux学习笔记14-EPIT 定时器实验例程

资源文件列表(大概)

文件名
大小
10_epit_timer/
-
10_epit_timer/Makefile
1.43KB
10_epit_timer/bsp/
-
10_epit_timer/bsp/beep/
-
10_epit_timer/bsp/beep/bsp_beep.c
1.09KB
10_epit_timer/bsp/beep/bsp_beep.cZone.Identifier
26B
10_epit_timer/bsp/beep/bsp_beep.h
143B
10_epit_timer/bsp/beep/bsp_beep.hZone.Identifier
26B
10_epit_timer/bsp/clk/
-
10_epit_timer/bsp/clk/bsp_clk.c
4.16KB
10_epit_timer/bsp/clk/bsp_clk.cZone.Identifier
26B
10_epit_timer/bsp/clk/bsp_clk.h
139B
10_epit_timer/bsp/clk/bsp_clk.hZone.Identifier
26B
10_epit_timer/bsp/delay/
-
10_epit_timer/bsp/delay/bsp_delay.c
458B
10_epit_timer/bsp/delay/bsp_delay.cZone.Identifier
26B
10_epit_timer/bsp/delay/bsp_delay.h
131B
10_epit_timer/bsp/delay/bsp_delay.hZone.Identifier
26B
10_epit_timer/bsp/epittimer/
-
10_epit_timer/bsp/epittimer/bsp_epittimer.c
1.59KB
10_epit_timer/bsp/epittimer/bsp_epittimer.h
184B
10_epit_timer/bsp/exit/
-
10_epit_timer/bsp/exit/bsp_exit.c
1.49KB
10_epit_timer/bsp/exit/bsp_exit.cZone.Identifier
26B
10_epit_timer/bsp/exit/bsp_exit.h
199B
10_epit_timer/bsp/exit/bsp_exit.hZone.Identifier
26B
10_epit_timer/bsp/gpio/
-
10_epit_timer/bsp/gpio/bsp_gpio.c
3.38KB
10_epit_timer/bsp/gpio/bsp_gpio.cZone.Identifier
26B
10_epit_timer/bsp/gpio/bsp_gpio.h
1.46KB
10_epit_timer/bsp/gpio/bsp_gpio.hZone.Identifier
26B
10_epit_timer/bsp/int/
-
10_epit_timer/bsp/int/bsp_int.c
2.32KB
10_epit_timer/bsp/int/bsp_int.cZone.Identifier
26B
10_epit_timer/bsp/int/bsp_int.h
676B
10_epit_timer/bsp/int/bsp_int.hZone.Identifier
26B
10_epit_timer/bsp/key/
-
10_epit_timer/bsp/key/bsp_key.c
1.33KB
10_epit_timer/bsp/key/bsp_key.cZone.Identifier
26B
10_epit_timer/bsp/key/bsp_key.h
230B
10_epit_timer/bsp/key/bsp_key.hZone.Identifier
26B
10_epit_timer/bsp/led/
-
10_epit_timer/bsp/led/bsp_led.c
1.13KB
10_epit_timer/bsp/led/bsp_led.cZone.Identifier
26B
10_epit_timer/bsp/led/bsp_led.h
163B
10_epit_timer/bsp/led/bsp_led.hZone.Identifier
26B
10_epit_timer/epit.bin
1.79KB
10_epit_timer/epit.dis
28.46KB
10_epit_timer/epit.elf
68.56KB
10_epit_timer/imx6ul/
-
10_epit_timer/imx6ul/MCIMX6Y2.h
3.29MB
10_epit_timer/imx6ul/MCIMX6Y2.hZone.Identifier
26B
10_epit_timer/imx6ul/cc.h
771B
10_epit_timer/imx6ul/cc.hZone.Identifier
26B
10_epit_timer/imx6ul/core_ca7.h
32.71KB
10_epit_timer/imx6ul/core_ca7.hZone.Identifier
26B
10_epit_timer/imx6ul/fsl_common.h
7.52KB
10_epit_timer/imx6ul/fsl_common.hZone.Identifier
26B
10_epit_timer/imx6ul/fsl_iomuxc.h
113.8KB
10_epit_timer/imx6ul/fsl_iomuxc.hZone.Identifier
26B
10_epit_timer/imx6ul/imx6ul.h
155B
10_epit_timer/imx6ul/imx6ul.hZone.Identifier
26B
10_epit_timer/imx6ul.lds
240B
10_epit_timer/imxdownload2
16.99KB
10_epit_timer/load.img
5.79KB
10_epit_timer/load.imx
4.79KB
10_epit_timer/obj/
-
10_epit_timer/obj/bsp_beep.o
936B
10_epit_timer/obj/bsp_beep.oZone.Identifier
26B
10_epit_timer/obj/bsp_clk.o
1.04KB
10_epit_timer/obj/bsp_clk.oZone.Identifier
26B
10_epit_timer/obj/bsp_delay.o
904B
10_epit_timer/obj/bsp_delay.oZone.Identifier
26B
10_epit_timer/obj/bsp_epittimer.o
1.21KB
10_epit_timer/obj/bsp_exit.o
1.42KB
10_epit_timer/obj/bsp_exit.oZone.Identifier
26B
10_epit_timer/obj/bsp_gpio.o
1.39KB
10_epit_timer/obj/bsp_gpio.oZone.Identifier
26B
10_epit_timer/obj/bsp_int.o
1.43KB
10_epit_timer/obj/bsp_int.oZone.Identifier
26B
10_epit_timer/obj/bsp_key.o
1.2KB
10_epit_timer/obj/bsp_key.oZone.Identifier
26B
10_epit_timer/obj/bsp_led.o
932B
10_epit_timer/obj/bsp_led.oZone.Identifier
26B
10_epit_timer/obj/main.o
1.22KB
10_epit_timer/obj/main.oZone.Identifier
26B
10_epit_timer/obj/start.o
1.32KB
10_epit_timer/obj/start.oZone.Identifier
26B
10_epit_timer/project/
-
10_epit_timer/project/main.c
706B
10_epit_timer/project/start.S
5.24KB
10_epit_timer/project/start.SZone.Identifier
26B

资源内容介绍

Linux学习笔记14---EPIT 定时器实验例程
#include "bsp_clk.h"/* * @description: 使能I.MX6U所有外设时钟 * @param : 无 * @return : 无 */void clk_enable(void){CCM->CCGR0 = 0XFFFFFFFF;CCM->CCGR1 = 0XFFFFFFFF;CCM->CCGR2 = 0XFFFFFFFF;CCM->CCGR3 = 0XFFFFFFFF;CCM->CCGR4 = 0XFFFFFFFF;CCM->CCGR5 = 0XFFFFFFFF;CCM->CCGR6 = 0XFFFFFFFF;}/* * @description: 初始化系统时钟,设置系统时钟为792Mhz,并且设置PLL2和PLL3各个 PFD时钟,所有的时钟频率均按照I.MX6U官方手册推荐的值. * @param : 无 * @return : 无 */void imx6u_clkinit(void){unsigned int reg = 0;/* 1.1、判断当前ARM内核是使用的那个时钟源启动的,正常情况下ARM内核是由pll1_sw_clk驱动的,而 * pll1_sw_clk有两个来源:pll1_main_clk和tep_clk。 * 如果我们要让ARM内核跑到792M的话那必须选择pll1_main_clk作为pll1的时钟源。 * 如果我们要修改pll1_main_clk时钟的话就必须先将pll1_sw_clk从pll1_main_clk切换到step_clk, *当修改完pll1_main_clk以后在将pll1_sw_clk切换回pll1_main_clk。而step_clk的时钟源可以选择 * 板子上的24MHz晶振。 */if((((CCM->CCSR) >> 2) & 0x1 ) == 0) {CCM->CCSR &= ~(1 << 8);CCM->CCSR |= (1 << 2);}/* 1.2、设置pll1_main_clk为792MHz * 因为pll1_sw_clk进ARM内核的时候会被二分频! * 配置CCM_ANLOG->PLL_ARM寄存器 * bit13: 1 使能时钟输出 * bit[6:0]: 66, 由公式:Fout = Fin * div_select / 2.0,792=24*div_select/2.0, * 得出:div_select= 66 */CCM_ANALOG->PLL_ARM = (1 << 13) | ((66 << 0) & 0X7F); CCM->CCSR &= ~(1 << 2);CCM->CACRR = 0;reg = CCM_ANALOG->PFD_528;reg &= ~(0X3F3F3F3F);reg |= 32<<24;/* PLL2_PFD3=528*18/32=297Mhz */reg |= 24<<16;/* PLL2_PFD2=528*18/24=396Mhz(DDR使用的时钟,最大400Mhz) */reg |= 16<<8;/* PLL2_PFD1=528*18/16=594Mhz */reg |= 27<<0;/* PLL2_PFD0=528*18/27=352Mhz */CCM_ANALOG->PFD_528=reg;reg = 0;reg = CCM_ANALOG->PFD_480;reg &= ~(0X3F3F3F3F);reg |= 19<<24;/* PLL3_PFD3=480*18/19=454.74Mhz */reg |= 17<<16;/* PLL3_PFD2=480*18/17=508.24Mhz */reg |= 16<<8;/* PLL3_PFD1=480*18/16=540Mhz*/reg |= 12<<0;/* PLL3_PFD0=480*18/12=720Mhz */CCM_ANALOG->PFD_480=reg;CCM->CBCMR &= ~(3 << 18); CCM->CBCMR |= (1 << 18);CCM->CBCDR &= ~(1 << 25);while(CCM->CDHIPR & (1 << 5));/* 修改AHB_PODF位的时候需要先禁止AHB_CLK_ROOT的输出,但是 * 我没有找到关闭AHB_CLK_ROOT输出的的寄存器,所以就没法设置。 * 下面设置AHB_PODF的代码仅供学习参考不能直接拿来使用!! * 内部boot rom将AHB_PODF设置为了3分频,即使我们不设置AHB_PODF, * AHB_ROOT_CLK也依旧等于396/3=132Mhz。 */#if 0CCM->CBCDR &= ~(7 << 10);CCM->CBCDR |= 2 << 10;while(CCM->CDHIPR & (1 << 1));#endifCCM->CBCDR &= ~(3 << 8);CCM->CBCDR |= 1 << 8;CCM->CSCMR1 &= ~(1 << 6);CCM->CSCMR1 &= ~(7 << 0);}

用户评论 (0)

发表评论

captcha