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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? csp_can.h

?? IAR 平臺ATMEL 的例程, 和說明
?? H
?? 第 1 頁 / 共 2 頁
字號:
#define CH8          (0x01ul << 8)              /* Interrupt channel 8       */
#define CH9          (0x01ul << 9)              /* Interrupt channel 9       */
#define CH10         (0x01ul << 10)             /* Interrupt channel 10      */
#define CH11         (0x01ul << 11)             /* Interrupt channel 11      */
#define CH12         (0x01ul << 12)             /* Interrupt channel 12      */
#define CH13         (0x01ul << 13)             /* Interrupt channel 13      */
#define CH14         (0x01ul << 14)             /* Interrupt channel 14      */
#define CH15         (0x01ul << 15)             /* Interrupt channel 15      */
#define CH16         (0x01ul << 16)             /* Interrupt channel 16      */
#define CH17         (0x01ul << 17)             /* Interrupt channel 17      */
#define CH18         (0x01ul << 18)             /* Interrupt channel 18      */
#define CH19         (0x01ul << 19)             /* Interrupt channel 19      */
#define CH20         (0x01ul << 20)             /* Interrupt channel 20      */
#define CH21         (0x01ul << 21)             /* Interrupt channel 21      */
#define CH22         (0x01ul << 22)             /* Interrupt channel 22      */
#define CH23         (0x01ul << 23)             /* Interrupt channel 23      */
#define CH24         (0x01ul << 24)             /* Interrupt channel 24      */
#define CH25         (0x01ul << 25)             /* Interrupt channel 25      */
#define CH26         (0x01ul << 26)             /* Interrupt channel 26      */
#define CH27         (0x01ul << 27)             /* Interrupt channel 27      */
#define CH28         (0x01ul << 28)             /* Interrupt channel 28      */
#define CH29         (0x01ul << 29)             /* Interrupt channel 29      */
#define CH30         (0x01ul << 30)             /* Interrupt channel 30      */
#define CH31         (0x01ul << 31)             /* Interrupt channel 31      */

/******************************************************************************
* MSK : CAN Mask Register Channel X
******************************************************************************/
/* MASK : Identifier Mask                                                    */
#define MASK_MASK    (0x1FFFFFFFul << 0)           /* Mask                   */
#define MASK(val)    (((val) & 0x1FFFFFFFul) << 0) /* Writing Macro          */  

/* MRB : Reserved Mask Bits                                                  */
#define MRB_MASK     (0x03ul << 29)                /* Mask                   */                   
#define MRB(val)     (((val) & 0x03ul) << 29)      /* Writing Macro          */  

#define MRTR         (0x01ul << 31)          /* Remote Transmission Resquest */ 

/******************************************************************************
* IR : CAN Identifier Register Channel X
******************************************************************************/
/* ID : Identifier                                                           */
#define ID_MASK      (0x1FFFFFFFul << 0)           /* Mask                   */
#define ID(val)      (((val) & 0x1FFFFFFFul) << 0) /* Writing Macro          */

/* IRB : Reserved Bits                                                       */
#define IRB_MASK     (0x03ul << 29)                /* Mask                   */
#define IRB(val)     (((val) & 0x03ul) << 29)      /* Writing Macro          */

#define RTR          (0x01ul << 31)          /* Remote Transmission Resquest */

/******************************************************************************
* CR : CAN Control Register Channel X
******************************************************************************/
/* DLC : Data Length Code                                                    */
#define DLC_MASK     (0x0Ful << 0)              /* Mask                      */
#define DLC(val)     (((val) & 0x0Ful) << 0)    /* Writing Macro             */       

#define IDE          (0x01ul << 4)              /* Extended Identifier Flag  */
#define RPLYV        (0x01ul << 5)              /* Automatic Reply           */ 
#define PCB          (0x01ul << 6)              /* Channel Producer          */
#define CHANEN       (0x01ul << 7)              /* Channel Enable            */
#define OVERWRITE    (0x01ul << 8)              /* Channel Overwrite Mode    */

/******************************************************************************
* CSR, SR, IER, IDR, IMR : CAN Interrupt Registers Channel X
******************************************************************************/
#define ACK          (0x01ul << 0)              /* Acknowledge Error         */
#define CAN_FRAME    (0x01ul << 1)              /* Frame Error               */
#define CRC          (0x01ul << 2)              /* CRC Error                 */
#define STUFF        (0x01ul << 3)              /* Stuffing Error            */
#define BUS          (0x01ul << 4)              /* Bus Error                 */
#define RXOK         (0x01ul << 5)              /* Reception Completed       */
#define TXOK         (0x01ul << 6)              /* Transmission Completed    */
#define RFRAME       (0x01ul << 7)              /* Remote Frame              */

/* CSR and SR Registers Only                                                 */
#define DLCW         (0x01ul << 9)              /* DLC Warning               */
#define FILLED       (0x01ul << 10)             /* Filled Flag               */
#define OVRUN        (0x01ul << 11)             /* Overrun Flag              */


/******************************************************************************
*************************** CAN Macros Definition *****************************
******************************************************************************/
/* ECR, DCR, PMSR : CAN Power Management Registers                           */
#define CSP_CAN_SET_ECR(can, val)         ((can)->ECR = (val))    /* Enable  */
#define CSP_CAN_SET_DCR(can, val)         ((can)->DCR = (val))    /* Disable */
#define CSP_CAN_GET_PMSR(can)             ((can)->PMSR)           /* Status  */

/* CR : CAN Control Register                                                 */
#define CSP_CAN_SET_CR(can, val)          ((can)->CR = (val))

/* MR : CAN Mode Register                                                    */
#define CSP_CAN_GET_MR(can)               ((can)->MR)
#define CSP_CAN_SET_MR(can, mode)         ((can)->MR = (mode))

/* CSR, SR : CAN Status Register                                             */
#define CSP_CAN_SET_CSR(can, val)         ((can)->CSR = (val))    /* Clear   */
#define CSP_CAN_GET_SR(can)               ((can)->SR)             /* Status  */

/* IER, IDR, IMR : CAN Interrupt Registers                                   */
#define CSP_CAN_SET_IER(can, val)         ((can)->IER = (val))    /* Enable  */
#define CSP_CAN_SET_IDR(can, val)         ((can)->IDR = (val))    /* Disable */
#define CSP_CAN_GET_IMR(can)              ((can)->IMR)            /* Mask    */

/* CISR, ISSR, SIER, SIDR, SIMR : CAN Interrupt Source Registers             */
#define CSP_CAN_SET_CISR(can, val)        ((can)->CISR = (val))   /* Clear   */
#define CSP_CAN_GET_ISSR(can)             ((can)->ISSR)           /* Status  */
#define CSP_CAN_SET_SIER(can, val)        ((can)->SIER = (val))   /* Enable  */
#define CSP_CAN_SET_SIDR(can, val)        ((can)->SIDR = (val))   /* Disable */
#define CSP_CAN_GET_SIMR(can)             ((can)->SIMR)           /* Mask    */

/* DRA : CAN Data A Register Channel X                                       */
#define CSP_CAN_CHANNEL_GET_DRA(can, channel)       ((can)->CHANNEL[(channel)].DRA)
#define CSP_CAN_CHANNEL_SET_DRA(can, channel, val)  ((can)->CHANNEL[(channel)].DRA = (val))

/* DRB : CAN Data B Register Channel X                                       */
#define CSP_CAN_CHANNEL_GET_DRB(can, channel)       ((can)->CHANNEL[(channel)].DRB)
#define CSP_CAN_CHANNEL_SET_DRB(can, channel, val)  ((can)->CHANNEL[(channel)].DRB = (val))

/* MSK : CAN Mask Register Channel X                                         */
#define CSP_CAN_CHANNEL_GET_MSK(can, channel)       ((can)->CHANNEL[(channel)].MSK)
#define CSP_CAN_CHANNEL_SET_MSK(can, channel, val)  ((can)->CHANNEL[(channel)].MSK = (val))

/* IR : CAN Identifier Register Channel X                                    */
#define CSP_CAN_CHANNEL_GET_IR(can, channel)        ((can)->CHANNEL[(channel)].IR)
#define CSP_CAN_CHANNEL_SET_IR(can, channel, val)   ((can)->CHANNEL[(channel)].IR = (val))

/* CR : CAN Control Register Channel X                                       */
#define CSP_CAN_CHANNEL_GET_CR(can, channel)        ((can)->CHANNEL[(channel)].CR)
#define CSP_CAN_CHANNEL_SET_CR(can, channel, val)   ((can)->CHANNEL[(channel)].CR = (val))

/* STP : CAN Stamp Register Channel X                                        */ 
#define CSP_CAN_CHANNEL_GET_STP(can, channel)       ((can)->CHANNEL[(channel)].STP)

/* CSR : CAN Clear Status Register Channel X                                 */
#define CSP_CAN_CHANNEL_SET_CSR(can, channel, val)  ((can)->CHANNEL[(channel)].CSR = (val))

/* SR : CAN Status Register Channel X                                        */
#define CSP_CAN_CHANNEL_GET_SR(can, channel)        ((can)->CHANNEL[(channel)].SR)

/* IER, IDR, IMR : CAN Interrupt Registers Channel X                         */
#define CSP_CAN_CHANNEL_SET_IER(can, channel, val)  ((can)->CHANNEL[(channel)].IER = (val))
#define CSP_CAN_CHANNEL_SET_IDR(can, channel, val)  ((can)->CHANNEL[(channel)].IDR = (val))
#define CSP_CAN_CHANNEL_GET_IMR(can, channel)       ((can)->CHANNEL[(channel)].IMR)


/******************************************************************************
********************* CAN External Functions Declaration **********************
******************************************************************************/
extern void CSP_CANInit(CSP_CAN_T *const can, U32_T mode);
extern void CSP_CANClose(CSP_CAN_T *const can);
extern void CSP_CANConfigInterrupt(CSP_CAN_T *const can, U32_T int_mode, U32_T int_mask, U32_T callback);
extern void CSP_CANChannelConfigInterrupt(CSP_CAN_T *const can, U8_T channel, U32_T int_mask);
extern void CSP_CANEnable(CSP_CAN_T *const can);
extern void CSP_CANDisable(CSP_CAN_T *const can);
extern void CSP_CANReceive(CSP_CAN_T *const can, U8_T channel, U32_T id, U32_T mask, U16_T control);
extern void CSP_CANTransmit(CSP_CAN_T *const can, U8_T channel, U32_T id, U8_T *data, U16_T control);


#endif   /* CSP_CAN_H */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品乱人伦一区二区三区| 亚洲国产精品麻豆| 日韩一区欧美二区| 成人午夜碰碰视频| www国产精品av| 首页国产欧美久久| 91福利国产精品| 国产欧美日韩精品在线| 全部av―极品视觉盛宴亚洲| 91激情在线视频| 国产精品午夜春色av| 精品中文字幕一区二区| 欧美精品自拍偷拍| 亚洲丶国产丶欧美一区二区三区| 国产剧情一区二区三区| 日韩久久久精品| 午夜精品久久久久久久蜜桃app| 99国产一区二区三精品乱码| 国产欧美一区二区三区在线看蜜臀| 蜜臀久久99精品久久久久久9| 色国产综合视频| 亚洲日本va在线观看| 波多野洁衣一区| 国产精品久久一卡二卡| 国产成人在线色| 国产欧美视频在线观看| 国产精品一区久久久久| 欧美激情艳妇裸体舞| 国产成人精品亚洲777人妖| 久久精品网站免费观看| 国产露脸91国语对白| 国产蜜臀av在线一区二区三区| 国产精品一二三区在线| 中文字幕第一区| 91原创在线视频| 亚洲一区二区美女| 欧美裸体bbwbbwbbw| 免费看黄色91| 精品99久久久久久| 成人小视频在线观看| 国产精品福利一区二区三区| 一本色道久久综合亚洲aⅴ蜜桃| 国产精品久久免费看| 91麻豆6部合集magnet| 亚洲欧美日韩电影| 欧美日韩一区三区| 男人操女人的视频在线观看欧美| 欧美成人国产一区二区| 国产精品99久久久久| 亚洲天堂久久久久久久| 欧美午夜精品一区二区蜜桃| 亚洲夂夂婷婷色拍ww47| 日韩视频在线观看一区二区| 国产一区二区在线电影| 亚洲摸摸操操av| 日韩一区二区三区高清免费看看| 国产盗摄精品一区二区三区在线 | 粉嫩在线一区二区三区视频| 国产精品国产三级国产专播品爱网 | 美国毛片一区二区| 久久毛片高清国产| 91久久精品国产91性色tv| 久久综合综合久久综合| 亚洲欧洲日韩av| 91精品国产综合久久久蜜臀粉嫩| 韩日欧美一区二区三区| 亚洲乱码国产乱码精品精小说| 欧美二区在线观看| 国产成人精品aa毛片| 午夜精品在线看| 国产精品久久久一本精品| 欧美日韩国产精选| 成人aaaa免费全部观看| 日韩av不卡一区二区| 亚洲欧洲99久久| 久久久久97国产精华液好用吗| 欧美亚洲国产一区二区三区va| 国产综合久久久久影院| 天堂久久久久va久久久久| 亚洲视频免费在线观看| 欧美精品一区二区久久婷婷| 精品视频一区二区三区免费| 国产成人午夜99999| 日韩中文字幕区一区有砖一区| 亚洲欧洲无码一区二区三区| 久久综合狠狠综合| 欧美一区二区在线看| 91毛片在线观看| 本田岬高潮一区二区三区| 美国一区二区三区在线播放| 亚洲6080在线| 亚洲精品一二三| 国产精品国产三级国产aⅴ中文 | 99久久精品国产精品久久| 精品一区二区精品| 亚洲va国产天堂va久久en| 亚洲美女在线国产| 最新不卡av在线| 中文字幕乱码日本亚洲一区二区| 欧美成人精品二区三区99精品| 欧美浪妇xxxx高跟鞋交| 91福利小视频| 欧美午夜视频网站| 欧美日韩一区久久| 欧美片网站yy| 欧美精选一区二区| 欧美一区二区三区爱爱| 欧美日韩国产一级片| 91电影在线观看| 欧美综合一区二区| 欧美日韩国产bt| 欧美日本一道本| 欧美一区二区私人影院日本| 欧美二区在线观看| 精品伦理精品一区| 国产亚洲成aⅴ人片在线观看| 久久久久久久久伊人| 国产日韩欧美一区二区三区综合| 国产日韩精品一区二区三区| 国产精品天美传媒沈樵| 亚洲欧美日韩国产另类专区| 夜夜夜精品看看| 亚洲电影一级片| 蜜臀精品一区二区三区在线观看 | 久久久久国产免费免费 | 成人v精品蜜桃久久一区| 丁香另类激情小说| 色综合色综合色综合色综合色综合| 色综合 综合色| 欧美日韩夫妻久久| 日韩欧美另类在线| 国产精品国产三级国产专播品爱网 | 欧美成人一区二区三区| 久久一夜天堂av一区二区三区| 国产拍欧美日韩视频二区| 亚洲欧美国产高清| 舔着乳尖日韩一区| 国产一区高清在线| 日本高清不卡aⅴ免费网站| 555www色欧美视频| 国产亚洲一区二区三区四区 | 欧洲精品在线观看| 日韩亚洲欧美成人一区| 久久久久9999亚洲精品| 亚洲男同性视频| 精品制服美女久久| 99久久精品情趣| 欧美一级一级性生活免费录像| 久久综合成人精品亚洲另类欧美 | 国产精品99久| 91国偷自产一区二区开放时间| 欧美一区二区视频在线观看2020| 中文在线一区二区| 日韩国产精品大片| www..com久久爱| 欧美成人三级在线| 亚洲伦理在线免费看| 国产一区二区三区观看| 欧美三级日韩三级| 国产精品视频线看| 日韩电影免费在线看| 色吊一区二区三区| 久久人人超碰精品| 亚洲成年人影院| 99精品一区二区三区| 久久天天做天天爱综合色| 亚洲高清视频的网址| 成人禁用看黄a在线| 日韩欧美一卡二卡| 亚洲自拍偷拍麻豆| 91免费在线视频观看| 久久久久久久网| 狂野欧美性猛交blacked| 欧美色网一区二区| 自拍视频在线观看一区二区| 狠狠色伊人亚洲综合成人| 欧美高清激情brazzers| 亚洲一区影音先锋| 色av成人天堂桃色av| 国产精品女上位| 国产aⅴ综合色| 日韩欧美国产小视频| 日韩不卡免费视频| 777午夜精品免费视频| 亚洲国产sm捆绑调教视频 | 久久久久久久久久久电影| 日本人妖一区二区| 在线播放中文字幕一区| 亚洲午夜一二三区视频| 在线观看免费成人| 亚洲精品欧美综合四区| 不卡视频在线观看| 欧美国产一区二区| 福利一区福利二区| 国产精品视频yy9299一区| 成人免费毛片嘿嘿连载视频| 国产三级精品三级在线专区| 国产精品一区二区你懂的| 日本一区二区三区dvd视频在线| 韩国一区二区三区|