zoukankan      html  css  js  c++  java
  • IMX51+WINCE6.0平台缩写意义

    1.以EPIT为例

    EPIT(Enhanced Periodic Interrupt Timer)为增强型周期中断定时器,其中有CR控制寄存器,要设置CR寄存器的SWR位,代码如下:

    // Assert software reset for the timer
        OUTREG32(&pEPIT->CR, CSP_BITFMASK(EPIT_CR_SWR));

    其中CSP_BITFMASK宏定义如下:

    #define CSP_BITFMASK(bit) (((1U << (bit ## _WID)) - 1) << (bit ## _LSH))

    这里的bit就是EPIT_CR_SWR,结合宏定义,可知此宏定义相当于下面的定义:

    #define CSP_BITFMASK(bit) (((1U << (EPIT_CR_SWR_WID)) - 1) << (EPIT_CR_SWR _LSH))

    WINCE6.0 BSP包中大部分都是这样对寄存器进行操作,这里的WID是指SWR位的宽度(WIDTH),因为CR的SWR域只有一位,所以EPIT_CR_SWR_WID=1;EPIT_CR_SWR _LSH(LSH表示LEFT SHIT左移)表示CR寄存器SWR域在寄存器中的位置(CR[16]),所以EPIT_CR_SWR _LSH=16

    在这方面,飞思卡尔在对寄存器控制代码比三星的规范,但要定义好很多宏。


  • 相关阅读:
    redis导入导出工具redisdump,centos7安装使用
    mysql 锁表情况,处理笔记
    python语言
    pythonhello world
    常用单词
    Django课堂笔记 1
    JS之随机点名系统
    js之简易计算器
    JS之放大镜效果
    SQLServer索引漫谈
  • 原文地址:https://www.cnblogs.com/LoongEmbedded/p/5298599.html
Copyright © 2011-2022 走看看