亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? xtmrctr.c

?? ucos2在macroblaze上的移植代碼
?? C
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
/* $Id: xtmrctr.c,v 1.9 2002/06/14 21:59:35 linnj Exp $ *//********************************************************************************       XILINX IS PROVIDING THIS DESIGN, CODE, OR INFORMATION "AS IS"*       AS A COURTESY TO YOU, SOLELY FOR USE IN DEVELOPING PROGRAMS AND*       SOLUTIONS FOR XILINX DEVICES.  BY PROVIDING THIS DESIGN, CODE,*       OR INFORMATION AS ONE POSSIBLE IMPLEMENTATION OF THIS FEATURE,*       APPLICATION OR STANDARD, XILINX IS MAKING NO REPRESENTATION*       THAT THIS IMPLEMENTATION IS FREE FROM ANY CLAIMS OF INFRINGEMENT,*       AND YOU ARE RESPONSIBLE FOR OBTAINING ANY RIGHTS YOU MAY REQUIRE*       FOR YOUR IMPLEMENTATION.  XILINX EXPRESSLY DISCLAIMS ANY*       WARRANTY WHATSOEVER WITH RESPECT TO THE ADEQUACY OF THE*       IMPLEMENTATION, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OR*       REPRESENTATIONS THAT THIS IMPLEMENTATION IS FREE FROM CLAIMS OF*       INFRINGEMENT, IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS*       FOR A PARTICULAR PURPOSE.**       (c) Copyright 2002 Xilinx Inc.*       All rights reserved.*******************************************************************************//*****************************************************************************//**** @file xtmrctr.c** Contains required functions for the XTmrCtr driver.** <pre>* MODIFICATION HISTORY:** Ver   Who  Date     Changes* ----- ---- -------- -----------------------------------------------* 1.00a ecm  08/16/01 First release* 1.00b jhl  02/21/02 Repartitioned the driver for smaller files* </pre>*******************************************************************************//***************************** Include Files *********************************/#include "xbasic_types.h"#include "xstatus.h"#include "xparameters.h"#include "xtmrctr.h"#include "xtmrctr_i.h"/************************** Constant Definitions *****************************//**************************** Type Definitions *******************************//***************** Macros (Inline Functions) Definitions *********************//************************** Function Prototypes ******************************//************************** Variable Definitions *****************************//*****************************************************************************//**** Initializes a specific timer/counter instance/driver. Initialize fields of* the XTmrCtr structure, then reset the timer/counter** @param    InstancePtr is a pointer to the XTmrCtr instance to be worked on.* @param    DeviceId is the unique id of the device controlled by this XTmrCtr*           component.  Passing in a device id associates the generic XTmrCtr*           component to a specific device, as chosen by the caller or*           application developer.** @return**   - XST_SUCCESS if initialization was successful*   - XST_DEVICE_IS_STARTED if the device has already been started*   - XST_DEVICE_NOT_FOUND if the device doesn't exist** @note** None.*******************************************************************************/XStatus XTmrCtr_Initialize(XTmrCtr *InstancePtr, Xuint16 DeviceId){    XTmrCtr_Config *TmrCtrConfigPtr;    int TmrCtrNumber;    Xuint32 StatusReg;    XASSERT_NONVOID(InstancePtr != XNULL);    /*     * Lookup the device configuration in the temporary CROM table. Use this     * configuration info down below when initializing this component.     */    TmrCtrConfigPtr = XTmrCtr_LookupConfig(DeviceId);    if (TmrCtrConfigPtr == (XTmrCtr_Config *)XNULL)    {        return XST_DEVICE_NOT_FOUND;    }    /* Check each of the timer counters of the device, if any are already     * running, then the device should not be initialized. This allows the user     * to stop the device and reinitialize, but prevents a user from     * inadvertently initializing.     */    for (TmrCtrNumber = 0; TmrCtrNumber < XTC_DEVICE_TIMER_COUNT; TmrCtrNumber++)    {        /*         * read the current register contents and check if the timer counter         * is started and running, note that the register read is not using         * the base address in the instance so this is not destructive if         * the timer counter is already started         */        StatusReg = XTimerCtr_mReadReg(TmrCtrConfigPtr->BaseAddress,                                      TmrCtrNumber, XTC_TCSR_OFFSET);        if (StatusReg & XTC_CSR_ENABLE_TMR_MASK)        {            return XST_DEVICE_IS_STARTED;        }    }    /*     * Set some default values, including setting the callback     * handlers to stubs.     */    InstancePtr->BaseAddress = TmrCtrConfigPtr->BaseAddress;    InstancePtr->Handler = XNULL;    InstancePtr->CallBackRef = XNULL;    /*     * Clear the statistics for this driver     */    InstancePtr->Stats.Interrupts = 0;    /* Initialize the registers of each timer/counter in the device */    for (TmrCtrNumber = 0; TmrCtrNumber < XTC_DEVICE_TIMER_COUNT; TmrCtrNumber++)    {        /*         * set the Compare register to 0         */        XTmrCtr_mWriteReg(InstancePtr->BaseAddress, TmrCtrNumber,                           XTC_TLR_OFFSET, 0);        /*         * reset the timer and the interrupt, the reset bit will need to         * be cleared after this         */        XTmrCtr_mWriteReg(InstancePtr->BaseAddress, TmrCtrNumber,                           XTC_TCSR_OFFSET,                           XTC_CSR_INT_OCCURED_MASK | XTC_CSR_LOAD_MASK);        /*         * set the control/status register to complete initialization by         * clearing the reset bit which was just set         */        XTmrCtr_mWriteReg(InstancePtr->BaseAddress, TmrCtrNumber,                           XTC_TCSR_OFFSET, 0);    }    /*     * indicate the instance is ready to use, successfully initialized     */    InstancePtr->IsReady = XCOMPONENT_IS_READY;    return XST_SUCCESS;}/*****************************************************************************//**** Starts the specified timer counter of the device such that it starts running.* The timer counter is reset before it is started and the reset value is* loaded into the timer counter.** If interrupt mode is specified in the options, it is necessary for the caller* to connect the interrupt handler of the timer/counter to the interrupt source,* typically an interrupt controller, and enable the interrupt within the* interrupt controller.** @param    InstancePtr is a pointer to the XTmrCtr instance to be worked on.* @param    TmrCtrNumber is the timer counter of the device to operate on.*           Each device may contain multiple timer counters. The timer number*           is a zero based number with a range of*           0 - (XTC_DEVICE_TIMER_COUNT - 1).** @return** None.** @note** None.*******************************************************************************/void XTmrCtr_Start(XTmrCtr *InstancePtr, Xuint8 TmrCtrNumber){    Xuint32 ControlStatusReg;    XASSERT_VOID(InstancePtr != XNULL);    XASSERT_VOID(TmrCtrNumber < XTC_DEVICE_TIMER_COUNT);    XASSERT_VOID(InstancePtr->IsReady == XCOMPONENT_IS_READY);    /*     * read the current register contents such that only the necessary bits     * of the register are modified in the following operations     */    ControlStatusReg = XTimerCtr_mReadReg(InstancePtr->BaseAddress,                                         TmrCtrNumber, XTC_TCSR_OFFSET);    /*     * reset the timer counter such that it reloads from the compare register     * and the interrupt is cleared simultaneously, the interrupt can only be     * cleared after reset such that the interrupt condition is cleared     */    XTmrCtr_mWriteReg(InstancePtr->BaseAddress, TmrCtrNumber,                       XTC_TCSR_OFFSET,                       XTC_CSR_LOAD_MASK | XTC_CSR_INT_OCCURED_MASK);    /*     * remove the reset condition such that the timer counter starts running     * with the value loaded from the compare register     */    XTmrCtr_mWriteReg(InstancePtr->BaseAddress, TmrCtrNumber,                       XTC_TCSR_OFFSET,                       ControlStatusReg | XTC_CSR_ENABLE_TMR_MASK);}/*****************************************************************************//**** Stops the timer counter by disabling it.** It is the callers' responsibility to disconnect the interrupt handler of the* timer_counter from the interrupt source, typically an interrupt controller,* and disable the interrupt within the interrupt controller.** @param    InstancePtr is a pointer to the XTmrCtr instance to be worked on.* @param    TmrCtrNumber is the timer counter of the device to operate on.*           Each device may contain multiple timer counters. The timer number*           is a zero based number with a range of*           0 - (XTC_DEVICE_TIMER_COUNT - 1).** @return** None.** @note** None.*

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美成人r级一区二区三区| 欧美一区二区女人| 欧美精选一区二区| 精品久久五月天| 亚洲三级在线观看| 麻豆久久久久久| 成人爱爱电影网址| 欧美一级一区二区| 国产精品拍天天在线| 91豆麻精品91久久久久久| 欧美日韩午夜在线视频| 日韩一区二区精品| 亚洲婷婷在线视频| 激情丁香综合五月| 欧美艳星brazzers| 国产精品视频在线看| 美日韩一级片在线观看| 97久久超碰国产精品| www欧美成人18+| 日韩精品免费专区| 天堂成人国产精品一区| 丁香五精品蜜臀久久久久99网站| 国模一区二区三区白浆| 日本丰满少妇一区二区三区| 久久综合精品国产一区二区三区| 亚洲精品一区二区三区99| 色婷婷激情综合| 欧美性大战久久久| 综合激情成人伊人| 国产另类ts人妖一区二区| 91精品免费在线观看| 一区二区三区免费看视频| 亚洲福利视频一区二区| 91影视在线播放| 国产精品久久久久影院亚瑟| 激情小说亚洲一区| 欧美一级一区二区| 美女一区二区在线观看| 欧美美女一区二区在线观看| 日韩午夜av一区| 亚洲成年人影院| 99视频在线精品| 国产精品女人毛片| 中文字幕一区二区视频| 国产成人aaa| 一区在线观看视频| 依依成人综合视频| 99精品欧美一区| 欧美一级一级性生活免费录像| 国产欧美一区二区精品婷婷| 国产一区二区在线观看免费| 97se亚洲国产综合自在线| 欧美三级一区二区| 夜夜嗨av一区二区三区中文字幕| 久久综合综合久久综合| 欧美影视一区在线| 国产亚洲欧洲一区高清在线观看| 久久精品视频一区二区三区| 国产成人av一区二区三区在线| 91黄视频在线观看| 亚洲电影在线播放| 日韩限制级电影在线观看| 美国毛片一区二区三区| 久久久99精品免费观看| av男人天堂一区| 亚洲日本va在线观看| 欧美日韩专区在线| 精品亚洲成a人在线观看| 久久久.com| 91视频免费播放| 日韩精品欧美成人高清一区二区| 国内外成人在线| 欧美日韩另类国产亚洲欧美一级| 日本一区二区视频在线观看| 国产91综合一区在线观看| 久久综合狠狠综合| av在线一区二区| 日韩福利视频导航| 国产精品久久777777| 欧美日韩在线电影| 国产成人免费视频| 亚洲第一主播视频| 国产午夜精品理论片a级大结局| 亚洲成av人片在线观看无码| 精品欧美一区二区久久| 亚洲国产sm捆绑调教视频| 欧美tk丨vk视频| 91色porny蝌蚪| 首页亚洲欧美制服丝腿| 欧美亚洲高清一区| 国内精品写真在线观看| 一区二区三区毛片| 精品国产91乱码一区二区三区 | 婷婷夜色潮精品综合在线| 波波电影院一区二区三区| 亚洲国产欧美一区二区三区丁香婷| 91视频.com| 国产在线一区观看| 精品91自产拍在线观看一区| 一本一本大道香蕉久在线精品| 国产精品成人网| 99精品视频在线观看| 亚洲色大成网站www久久九九| 99免费精品视频| 韩国欧美国产一区| 午夜精品视频一区| 亚洲色图一区二区| 2020国产精品| 在线观看视频一区二区| 成人av网址在线| 亚洲欧美一区二区三区久本道91| 色婷婷亚洲一区二区三区| 99久久精品国产网站| 96av麻豆蜜桃一区二区| av激情成人网| 91黄色免费版| 91.xcao| 欧美一区二区三区视频免费播放| 国产高清一区日本| 国产精品一二三四五| 成人小视频在线观看| 丁香激情综合国产| 91视视频在线直接观看在线看网页在线看| 日韩中文字幕1| 激情图片小说一区| 国产a区久久久| 日本伦理一区二区| 欧美精品免费视频| 2024国产精品| 最新国产成人在线观看| 一区二区三区电影在线播| 丝袜亚洲另类欧美| 久久国产剧场电影| 9i在线看片成人免费| 欧美日韩亚洲不卡| 久久亚洲影视婷婷| 日韩一二在线观看| 国产精品欧美久久久久一区二区| 日韩免费看的电影| 国产欧美日韩不卡| 亚洲狠狠爱一区二区三区| 精品一区二区在线播放| 成人免费电影视频| 欧美日韩国产高清一区二区| 欧美一区二区三区免费视频| 国产欧美日韩综合精品一区二区| 91精品在线免费| 亚洲国产成人自拍| 午夜精彩视频在线观看不卡| 国产一区二区三区免费| 蜜臀av国产精品久久久久| 成人中文字幕在线| 欧美日韩精品高清| 欧美激情一区在线| 亚洲h精品动漫在线观看| 国产一区三区三区| 久久99久久久欧美国产| 色94色欧美sute亚洲线路一久| 国产69精品久久99不卡| 欧美日韩国产中文| 国产精品久久久久天堂| 久久成人久久爱| 久草中文综合在线| 欧美吻胸吃奶大尺度电影| 久久久久国产精品麻豆ai换脸| 国产日韩视频一区二区三区| 亚洲香肠在线观看| 99免费精品在线| 亚洲精品一区二区三区在线观看| 2021久久国产精品不只是精品| 久久精品视频一区二区三区| 亚洲bdsm女犯bdsm网站| 波多野结衣亚洲| 久久久精品影视| 久久国产剧场电影| 国产一区二区三区日韩| 成人在线视频一区| 久久中文字幕电影| 日本亚洲视频在线| 欧美另类z0zxhd电影| 亚洲一区二区在线免费观看视频| 调教+趴+乳夹+国产+精品| gogo大胆日本视频一区| 91精品91久久久中77777| 亚洲欧洲av色图| 丁香婷婷综合网| 日本一区二区高清| 国产乱码精品一区二区三| 久久综合视频网| 国内外成人在线| www一区二区| 国产精品一区二区不卡| 精品毛片乱码1区2区3区| 久热成人在线视频| 久久影音资源网| 久88久久88久久久| 久久综合给合久久狠狠狠97色69| 亚洲男人的天堂在线观看| 91在线你懂得| 亚洲影院在线观看|