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

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

?? dio.h

?? uC_OS_II_外圍接口程序源代碼.rar
?? H
字號(hào):
/*
*********************************************************************************************************
*                                   Embedded Systems Building Blocks
*                                Complete and Ready-to-Use Modules in C
*
*                                         Discrete I/O Module
*
*                            (c) Copyright 1999, Jean J. Labrosse, Weston, FL
*                                          All Rights Reserved
*
* Filename   : DIO.H
* Programmer : Jean J. Labrosse
*********************************************************************************************************
*/

/*
*********************************************************************************************************
*                                        CONFIGURATION CONSTANTS
*********************************************************************************************************
*/

#ifndef  CFG_H

#define  DIO_TASK_PRIO             40
#define  DIO_TASK_DLY_TICKS         1
#define  DIO_TASK_STK_SIZE        512

#define  DIO_MAX_DI                 8       /* Maximum number of Discrete Input  Channels (1..255)     */
#define  DIO_MAX_DO                 8       /* Maximum number of Discrete Output Channels (1..255)     */

#define  DI_EDGE_EN                 1       /* Enable code generation to support edge trig. (when 1)   */

#define  DO_BLINK_MODE_EN           1       /* Enable code generation to support blink mode (when 1)   */

#endif

#ifdef   DIO_GLOBALS
#define  DIO_EXT
#else
#define  DIO_EXT  extern
#endif

/*
*********************************************************************************************************
*                                       DISCRETE INPUT CONSTANTS
*********************************************************************************************************
*/

                                            /* DI MODE SELECTOR VALUES                                 */
#define  DI_MODE_LOW                0       /* Input is forced low                                     */
#define  DI_MODE_HIGH               1       /* Input is forced high                                    */
#define  DI_MODE_DIRECT             2       /* Input is based on state of physical input               */
#define  DI_MODE_INV                3       /* Input is based on the complement of the physical input  */
#define  DI_MODE_EDGE_LOW_GOING     4       /* Low  going edge detection of input                      */
#define  DI_MODE_EDGE_HIGH_GOING    5       /* High going edge detection of input                      */
#define  DI_MODE_EDGE_BOTH          6       /* Both low and high going edge detection of input         */
#define  DI_MODE_TOGGLE_LOW_GOING   7       /* Low  going edge detection of input                      */
#define  DI_MODE_TOGGLE_HIGH_GOING  8       /* High going edge detection of input                      */

                                            /* DI EDGE TRIGGERING MODE SELECTOR VALUES                 */
#define  DI_EDGE_LOW_GOING          0       /* Negative going edge                                     */
#define  DI_EDGE_HIGH_GOING         1       /* Positive going edge                                     */
#define  DI_EDGE_BOTH               2       /* Both positive and negative going                        */

/*$PAGE*/
/*
*********************************************************************************************************
*                                       DISCRETE OUTPUT CONSTANTS
*********************************************************************************************************
*/

                                            /* DO MODE SELECTOR VALUES                                 */
#define  DO_MODE_LOW                0       /* Output will be low                                      */
#define  DO_MODE_HIGH               1       /* Output will be high                                     */
#define  DO_MODE_DIRECT             2       /* Output is based on state of user supplied state         */
#define  DO_MODE_BLINK_SYNC         3       /* Sync.  Blink mode                                       */
#define  DO_MODE_BLINK_ASYNC        4       /* Async. Blink mode                                       */

                                            /* DO BLINK MODE ENABLE SELECTOR VALUES                    */
#define  DO_BLINK_EN                0       /* Blink is always enabled                                 */
#define  DO_BLINK_EN_NORMAL         1       /* Blink depends on user request's state                   */
#define  DO_BLINK_EN_INV            2       /* Blink depends on the complemented user request's state  */

/*
*********************************************************************************************************
*                                            DATA TYPES
*********************************************************************************************************
*/

typedef struct dio_di {                /* DISCRETE INPUT CHANNEL DATA STRUCTURE                        */
    BOOLEAN   DIIn;                    /* Current state of sensor input                                */
    INT16U    DIVal;                   /* State of discrete input channel (or # of transitions)        */
    BOOLEAN   DIPrev;                  /* Previous state of DIIn for edge detection                    */
    BOOLEAN   DIBypassEn;              /* Bypass enable switch (Bypass when TRUE)                      */
    INT8U     DIModeSel;               /* Discrete input channel mode selector                         */
#if DI_EDGE_EN
    void    (*DITrigFnct)(void *);     /* Function to execute if edge triggered                        */
    void     *DITrigFnctArg;           /* arguments passed to function when edge detected              */
#endif
} DIO_DI;


typedef struct dio_do {                /* DISCRETE OUTPUT CHANNEL DATA STRUCTURE                       */
    BOOLEAN   DOOut;                   /* Current state of discrete output channel                     */
    BOOLEAN   DOCtrl;                  /* Discrete output control request                              */
    BOOLEAN   DOBypass;                /* Discrete output control bypass state                         */
    BOOLEAN   DOBypassEn;              /* Bypass enable switch (Bypass when TRUE)                      */
    INT8U     DOModeSel;               /* Discrete output channel mode selector                        */
    INT8U     DOBlinkEnSel;            /* Blink enable mode selector                                   */
    BOOLEAN   DOInv;                   /* Discrete output inverter selector (Invert when TRUE)         */
#if DO_BLINK_MODE_EN
    INT8U     DOA;                     /* Blink mode ON time                                           */
    INT8U     DOB;                     /* Asynchronous blink mode period                               */
    INT8U     DOBCtr;                  /* Asynchronous blink mode period counter                       */
#endif
} DIO_DO;
/*$PAGE*/
/*
*********************************************************************************************************
*                                          GLOBAL VARIABLES
*********************************************************************************************************
*/

DIO_EXT  DIO_DI      DITbl[DIO_MAX_DI];
DIO_EXT  DIO_DO      DOTbl[DIO_MAX_DO];

#if      DO_BLINK_MODE_EN
DIO_EXT  INT8U       DOSyncCtr;
DIO_EXT  INT8U       DOSyncCtrMax;
#endif

/*
*********************************************************************************************************
*                                          FUNCTION PROTOTYPES
*********************************************************************************************************
*/

void     DIOInit(void);

void     DICfgMode(INT8U n, INT8U mode);
INT16U   DIGet(INT8U n);
void     DISetBypassEn(INT8U n, BOOLEAN state);
void     DISetBypass(INT8U n, INT16U val);

#if      DI_EDGE_EN
void     DIClr(INT8U n);
void     DICfgEdgeDetectFnct(INT8U n, void (*fnct)(void *), void *arg);
#endif


void     DOCfgMode(INT8U n, INT8U mode, BOOLEAN inv);
BOOLEAN  DOGet(INT8U n);
void     DOSet(INT8U n, BOOLEAN state);
void     DOSetBypass(INT8U n, BOOLEAN state);
void     DOSetBypassEn(INT8U n, BOOLEAN state);

#if      DO_BLINK_MODE_EN
void     DOCfgBlink(INT8U n, INT8U mode, INT8U a, INT8U b);
void     DOSetSyncCtrMax(INT8U val);
#endif

/*
*********************************************************************************************************
*                                          FUNCTION PROTOTYPES
*                                           HARDWARE SPECIFIC
*********************************************************************************************************
*/

void     DIOInitIO(void);
void     DIRd(void);
void     DOWr(void);

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩中文字幕1| 不卡的电影网站| 中文字幕人成不卡一区| 日韩欧美在线综合网| 91丨porny丨国产入口| 极品销魂美女一区二区三区| 一区二区高清在线| 国产精品美女久久久久aⅴ国产馆| 欧美一级电影网站| 欧美性色aⅴ视频一区日韩精品| 国产高清精品网站| 日本亚洲欧美天堂免费| 亚洲曰韩产成在线| 国产精品三级电影| 久久久精品天堂| www精品美女久久久tv| 欧美日韩视频专区在线播放| 99精品一区二区| 粉嫩在线一区二区三区视频| 国产一区二区三区蝌蚪| 麻豆91精品视频| 日日骚欧美日韩| 亚洲成人av资源| 亚洲电影第三页| 一区二区三区在线观看国产| 中文字幕制服丝袜一区二区三区 | **欧美大码日韩| 久久欧美中文字幕| 日韩欧美一级二级| 欧美一区二区三区四区高清| 欧美日韩精品一区视频| 欧美亚洲国产一卡| 在线观看国产一区二区| 99riav一区二区三区| a级精品国产片在线观看| 成人av小说网| 99久久99久久精品免费观看| 95精品视频在线| 日本精品一级二级| 欧洲生活片亚洲生活在线观看| 色网站国产精品| 在线观看视频一区二区欧美日韩| 91福利在线导航| 欧美在线观看你懂的| 欧美色涩在线第一页| 欧美色综合天天久久综合精品| 欧美日韩免费电影| 在线观看91精品国产麻豆| 日韩三级.com| 久久久久国产成人精品亚洲午夜| 国产日韩欧美a| 综合久久久久久| 亚洲一区在线免费观看| 亚洲国产成人高清精品| 蜜臀国产一区二区三区在线播放| 久久 天天综合| 国产成人精品免费在线| 色综合久久88色综合天天免费| 欧美午夜精品一区| 精品久久人人做人人爽| 久久精品水蜜桃av综合天堂| 亚洲日本va在线观看| 婷婷丁香激情综合| 国产在线精品视频| 91啪在线观看| 欧美精品三级日韩久久| 久久久久久亚洲综合影院红桃| 国产精品初高中害羞小美女文| 亚洲一区二区在线视频| 精一区二区三区| www.欧美.com| 欧美精品tushy高清| 国产欧美视频一区二区三区| 一区二区三区高清不卡| 美女高潮久久久| 成人在线一区二区三区| 欧美日韩国产综合视频在线观看| 久久影院视频免费| 亚洲国产精品久久久久婷婷884 | 欧美成va人片在线观看| 国产精品色一区二区三区| 亚洲成人免费视| 国产精品综合在线视频| 欧美在线制服丝袜| 国产日韩欧美综合在线| 亚洲444eee在线观看| 成人精品国产免费网站| 3d动漫精品啪啪一区二区竹菊| 欧美激情中文不卡| 日本中文字幕一区二区有限公司| 不卡的av电影在线观看| 91精品国产日韩91久久久久久| 国产精品拍天天在线| 久久国产尿小便嘘嘘| 欧美视频中文字幕| 国产精品欧美一区二区三区| 麻豆精品新av中文字幕| 欧美性受xxxx黑人xyx性爽| 欧美国产日韩亚洲一区| 捆绑调教美女网站视频一区| 欧美中文字幕亚洲一区二区va在线 | 一区二区三区四区在线免费观看| 黄页网站大全一区二区| 欧美日韩1234| 一区二区高清免费观看影视大全| 国产91丝袜在线18| 欧美xxxxx牲另类人与| 亚洲chinese男男1069| 色婷婷av一区| 中文字幕永久在线不卡| 国产成人丝袜美腿| 精品国产99国产精品| 三级不卡在线观看| 欧美色爱综合网| 亚洲美女区一区| 91在线精品秘密一区二区| 26uuu亚洲综合色欧美| 免费成人在线播放| 欧美老肥妇做.爰bbww视频| 亚洲美女屁股眼交| 一本久久a久久免费精品不卡| 中文字幕第一区| 成人免费高清在线观看| 久久精品一级爱片| 国产一区二区在线观看免费| 日韩欧美中文字幕一区| 美女www一区二区| 日韩视频免费直播| 日本不卡不码高清免费观看| 91精品婷婷国产综合久久性色| 婷婷久久综合九色综合伊人色| 欧美性大战久久久| 午夜成人免费电影| 制服丝袜中文字幕亚洲| 日韩精品91亚洲二区在线观看 | 国产麻豆91精品| 久久午夜老司机| 粉嫩在线一区二区三区视频| 国产视频在线观看一区二区三区| 国产一区二区不卡| 国产精品久久久久永久免费观看| 福利电影一区二区| 亚洲天堂a在线| 在线国产电影不卡| 视频在线观看一区| 精品成人a区在线观看| 国产伦精品一区二区三区视频青涩| 久久蜜桃av一区二区天堂| 成人免费视频免费观看| 中文字幕佐山爱一区二区免费| 色欧美片视频在线观看在线视频| 亚洲一区欧美一区| 日韩欧美一区二区久久婷婷| 国产精品自拍三区| 亚洲日本欧美天堂| 在线播放欧美女士性生活| 久久精品国产99久久6| 久久久国产午夜精品| 91香蕉视频污| 视频一区欧美日韩| 久久亚洲精精品中文字幕早川悠里| 成人丝袜18视频在线观看| 一区二区三区在线视频观看| 制服视频三区第一页精品| 国产揄拍国内精品对白| 一区在线观看视频| 91.xcao| 成人黄色小视频在线观看| 亚洲国产精品精华液网站| 久久一区二区视频| 91视视频在线观看入口直接观看www | 欧美亚洲自拍偷拍| 另类成人小视频在线| 亚洲欧美综合另类在线卡通| 欧美精品久久99久久在免费线| 国产一区在线观看视频| 一区二区三区中文字幕| 精品国产91九色蝌蚪| 99精品在线观看视频| 久久成人羞羞网站| 亚洲品质自拍视频网站| 欧美成人一区二区三区片免费| 91丨九色丨黑人外教| 久久精品国产成人一区二区三区| 18成人在线观看| 精品成人免费观看| 欧美色成人综合| 成人av免费在线| 免费高清成人在线| 亚洲精品欧美综合四区| 久久精品日产第一区二区三区高清版 | 国产精品福利在线播放| 精品国产自在久精品国产| 在线观看日韩国产| 成人免费的视频| 激情文学综合插| 亚洲成人在线网站| 亚洲视频一区在线| 久久嫩草精品久久久久| 欧美妇女性影城|