请选择 进入手机版 | 继续访问电脑版
查看: 1432|回复: 0

RT1052+定时器移植+LED翻转

[复制链接]
  • TA的每日心情

    2018-11-11 18:46
  • 签到天数: 1 天

    [LV.1]初来乍到

    9

    主题

    19

    帖子

    0

    注册会员

    Rank: 2

    积分
    92
    最后登录
    2018-12-4
    发表于 2018-11-6 22:40:34 | 显示全部楼层 |阅读模式
    定时器使用的是Pit定时器,pit定时器有四路,例程上用的是通道0。
    但是在使用例程的时候编译找不到fsl_debug_console_conf.h头文件,配置也没有问题,实在没有办法只好把它移植到LED工程里面。
    需要移植的参数如下
    /* Enable clock gate for GPIO1 */
        CLOCK_EnableClock(kCLOCK_Gpio1);

        /* Set PERCLK_CLK source to OSC_CLK*/
        CLOCK_SetMux(kCLOCK_PerclkMux, 1U);
        /* Set PERCLK_CLK divider to 1 */
        CLOCK_SetDiv(kCLOCK_PerclkDiv, 0U);

        /*
         * pitConfig.enableRunInDebug = false;
         */
        PIT_GetDefaultConfig(&pitConfig);

        /* Init pit module */
        PIT_Init(PIT, &pitConfig);

        /* Set timer period for channel 0 */
        PIT_SetTimerPeriod(PIT, kPIT_Chnl_0, USEC_TO_COUNT(1000000U, PIT_SOURCE_CLOCK));

        /* Enable timer interrupts for channel 0 */
        PIT_EnableInterrupts(PIT, kPIT_Chnl_0, kPIT_TimerInterruptEnable);

        /* Enable at the NVIC */
        EnableIRQ(PIT_IRQ_ID);

        /* Start channel 0 */
        PRINTF("\r\nStarting channel No.0 ...");
        PIT_StartTimer(PIT, kPIT_Chnl_0);

    设置定时器频率为 PIT_SetTimerPeriod(PIT, kPIT_Chnl_0, USEC_TO_COUNT(1000000U, PIT_SOURCE_CLOCK));
    USEC_TO_COUNT(1000000U, PIT_SOURCE_CLOCK)是us级定时器,还有ms级定时器MSEC_TO_COUNT,根据介绍计算相关计数,1000000/1000000U=1S。
    然后设置中断,使能通道0。
    中断响应函数PIT_IRQHandler
    通过读取各通道的状态PIT_GetStatusFlags(PIT, kPIT_Chnl_0);
    kPIT_TimerFlag,值为1。也就是为1的时候触发该通道定时器。
    然后清除定时器
    PIT_ClearStatusFlags(PIT, kPIT_Chnl_0, kPIT_TimerFlag);
    通过定时器来控制LED的翻转
    USER_LED_TOGGLE();
    定时器.jpg


    哎...今天够累的,签到来了~
    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2024-3-28 20:48 , Processed in 0.122787 second(s), 21 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2021, Tencent Cloud.

    快速回复 返回顶部 返回列表