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

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

?? hal.h

?? zigbeeC++的源代碼
?? H
?? 第 1 頁 / 共 3 頁
字號:
#define INUM_T3    11
#define INUM_T4    12
#define INUM_P0INT 13
#define INUM_UTX1  14
#define INUM_P1INT 15
#define INUM_RF    16
#define INUM_WDT   17

#define NBR_OF_INTERRUPTS 18


#define INT_ENABLE_RF(on)     { (on) ? (IEN2 |= 0x01) : (IEN2 &= ~0x01); }
#define INT_ENABLE_RFERR(on)  { RFERRIE = on; }
#define INT_ENABLE_T2(on)     { T2IE    = on; }
#define INT_ENABLE_URX0(on)   { URX0IE  = on; }


#define INT_GETFLAG_RFERR() RFERRIF
#define INT_GETFLAG_RF()    S1CON &= ~0x03


#define INT_SETFLAG_RFERR(f) RFERRIF= f
#define INT_SETFLAG_RF(f)  { (f) ? (S1CON |= 0x03) : (S1CON &= ~0x03); }
#define INT_SETFLAG_T2(f)  { T2IF  = f;  }




/******************************************************************************
*******************         Common USART functions/macros   *******************
******************************************************************************/

// The macros in this section are available for both SPI and UART operation.

//*****************************************************************************

// Example usage:
//   USART0_FLUSH();
#define USART_FLUSH(num)              (U##num##UCR |= 0x80)
#define USART0_FLUSH()                USART_FLUSH(0)
#define USART1_FLUSH()                USART_FLUSH(1)

// Example usage:
//   if (USART0_BUSY())
//     ...
#define USART_BUSY(num)               (U##num##CSR & 0x01 == 0x01)
#define USART0_BUSY()                 USART_BUSY(0)
#define USART1_BUSY()                 USART_BUSY(1)

// Example usage:
//   while(!USART1_BYTE_RECEIVED())
//     ...
#define USART_BYTE_RECEIVED(num)      ((U##num##CSR & 0x04) == 0x04)
#define USART0_BYTE_RECEIVED()        USART_BYTE_RECEIVED(0)
#define USART1_BYTE_RECEIVED()        USART_BYTE_RECEIVED(1)

// Example usage:
//   if(USART1_BYTE_TRANSMITTED())
//     ...
#define USART_BYTE_TRANSMITTED(num)   ((U##num##CSR & 0x02) == 0x02)
#define USART0_BYTE_TRANSMITTED()     USART_BYTE_TRANSMITTED(0)
#define USART1_BYTE_TRANSMITTED()     USART_BYTE_TRANSMITTED(1)


/******************************************************************************
*******************  USART-UART specific functions/macros   *******************
******************************************************************************/
// The macros in this section simplify UART operation.
#define BAUD_E(baud, clkDivPow) (     \
    (baud==2400)   ?  6  +clkDivPow : \
    (baud==4800)   ?  7  +clkDivPow : \
    (baud==9600)   ?  8  +clkDivPow : \
    (baud==14400)  ?  8  +clkDivPow : \
    (baud==19200)  ?  9  +clkDivPow : \
    (baud==28800)  ?  9  +clkDivPow : \
    (baud==38400)  ?  10 +clkDivPow : \
    (baud==57600)  ?  10 +clkDivPow : \
    (baud==76800)  ?  11 +clkDivPow : \
    (baud==115200) ?  11 +clkDivPow : \
    (baud==153600) ?  12 +clkDivPow : \
    (baud==230400) ?  12 +clkDivPow : \
    (baud==307200) ?  13 +clkDivPow : \
    0  )


#define BAUD_M(baud) (      \
    (baud==2400)   ?  59  : \
    (baud==4800)   ?  59  : \
    (baud==9600)   ?  59  : \
    (baud==14400)  ?  216 : \
    (baud==19200)  ?  59  : \
    (baud==28800)  ?  216 : \
    (baud==38400)  ?  59  : \
    (baud==57600)  ?  216 : \
    (baud==76800)  ?  59  : \
    (baud==115200) ?  216 : \
    (baud==153600) ?  59  : \
    (baud==230400) ?  216 : \
    (baud==307200) ?  59  : \
  0)



//*****************************************************************************

// Macro for setting up a UART transfer channel. The macro sets the appropriate
// pins for peripheral operation, sets the baudrate, and the desired options of
// the selected uart. _uart_ indicates which uart to configure and must be
// either 0 or 1. _baudRate_ must be one of 2400, 4800, 9600, 14400, 19200,
// 28800, 38400, 57600, 76800, 115200, 153600, 230400 or 307200. Possible
// options are defined below.
//
// Example usage:
//
//      UART_SETUP(0,115200,HIGH_STOP);
//
// This configures uart 0 for contact with "hyperTerminal", setting:
//      Baudrate:           115200
//      Data bits:          8
//      Parity:             None
//      Stop bits:          1
//      Flow control:       None
//

#define UART_SETUP(uart, baudRate, options)      \
   do {                                          \
      if((uart) == 0){                           \
         if(PERCFG & 0x01){                      \
            P1SEL |= 0x30;                       \
         } else {                                \
            P0SEL |= 0x0C;                       \
         }                                       \
      }                                          \
      else {                                     \
         if(PERCFG & 0x02){                      \
            P1SEL |= 0xC0;                       \
         } else {                                \
            P0SEL |= 0x30;                       \
         }                                       \
      }                                          \
                                                 \
      U##uart##GCR = BAUD_E((baudRate),CLKSPD);  \
      U##uart##BAUD = BAUD_M(baudRate);          \
                                                 \
      U##uart##CSR |= 0x80;                      \
                                                 \
                                                 \
      U##uart##UCR |= ((options) | 0x80);        \
                                                 \
      if((options) & TRANSFER_MSB_FIRST){        \
         U##uart##GCR |= 0x20;                   \
      }                                          \
      U##uart##CSR |= 0x40;                      \
   } while(0)



//can do this via a macro
#define halSetBaud(baud) UART_SETUP(0, baud, HIGH_STOP);


// Options for UART_SETUP macro
#define FLOW_CONTROL_ENABLE         0x40
#define FLOW_CONTROL_DISABLE        0x00
#define EVEN_PARITY                 0x20
#define ODD_PARITY                  0x00
#define NINE_BIT_TRANSFER           0x10
#define EIGHT_BIT_TRANSFER          0x00
#define PARITY_ENABLE               0x08
#define PARITY_DISABLE              0x00
#define TWO_STOP_BITS               0x04
#define ONE_STOP_BITS               0x00
#define HIGH_STOP                   0x02
#define LOW_STOP                    0x00
#define HIGH_START                  0x01
#define TRANSFER_MSB_FIRST          0x80
#define TRANSFER_MSB_LAST           0x00
#define UART_ENABLE_RECEIVE         0x40


// Example usage:
//   if(UART0_PARERR())
//     ...
#define UART_PARERR(num)      ((U##num##CSR & 0x08) == 0x08)
#define UART0_PARERR()        UART_PARERR(0)
#define UART1_PARERR()        UART_PARERR(1)

// Example usage:
//   if(UART1_FRAMEERR())
//     ...
#define UART_FRAMEERR(num)    ((U ##num## CSR & 0x10) == 0x10)
#define UART0_FRAMEERR()      UART_FRAMEERR(0)
#define UART1_FRAMEERR()      UART_FRAMEERR(1)


// Example usage:
//   char ch = 'A';
//   UART1_SEND(ch);
//   ...
//   UART1_RECEIVE(ch);
#define UART_SEND(num, x)   U##num##DBUF = x
#define UART0_SEND(x)       UART_SEND(0, x)
#define UART1_SEND(x)       UART_SEND(1, x)

#define UART_RECEIVE(num, x)  x = U##num##DBUF
#define UART0_RECEIVE(x)      UART_RECEIVE(0, x)
#define UART1_RECEIVE(x)      UART_RECEIVE(1, x)

/******************************************************************************
*******************      Power and clock management        ********************
*******************************************************************************

These macros are used to set power-mode, clock source and clock speed.

******************************************************************************/

// Macro for getting the clock division factor
#define CLKSPD  (CLKCON & 0x07)

// Macro for getting the timer tick division factor.
#define TICKSPD ((CLKCON & 0x38) >> 3)

// Macro for checking status of the crystal oscillator
#define XOSC_STABLE (SLEEP & 0x40)

// Macro for checking status of the high frequency RC oscillator.
#define HIGH_FREQUENCY_RC_OSC_STABLE    (SLEEP & 0x20)


// Macro for setting the 32 KHz clock source
#define SET_32KHZ_CLOCK_SOURCE(source) \
   do {                                \
      if( source ) {                   \
         CLKCON |= 0x80;               \
      } else {                         \
         CLKCON &= ~0x80;              \
      }                                \
   } while (0)

// Where _source_ is one of
#define CRYSTAL 0x00
#define RC      0x01

// Macro for setting the main clock oscillator source,
//turns off the clock source not used
//changing to XOSC will take approx 150 us
#define SET_MAIN_CLOCK_SOURCE(source) \
   do {                               \
      if(source) {                    \
        CLKCON |= 0x40;               \
        while(!HIGH_FREQUENCY_RC_OSC_STABLE); \
        if(TICKSPD == 0){             \
          CLKCON |= 0x08;             \
        }                             \
        SLEEP |= 0x04;                \
      }                               \
      else {                          \
        SLEEP &= ~0x04;               \
        while(!XOSC_STABLE);          \
        asm("NOP");                   \
        CLKCON &= ~0x47;              \
        SLEEP |= 0x04;                \
      }                               \
   }while (0)




/*
#### RADIO Support
*/

#define STOP_RADIO()        ISRFOFF;

// RF interrupt flags
#define IRQ_RREG_ON         0x80
#define IRQ_TXDONE          0x40
#define IRQ_FIFOP           0x20
#define IRQ_SFD             0x10
#define IRQ_CCA             0x08
#define IRQ_CSP_WT          0x04
#define IRQ_CSP_STOP        0x02
#define IRQ_CSP_INT         0x01

// RF status flags

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩精品自拍偷拍| 欧美色图12p| 成人黄色大片在线观看| 国产99久久久久| 成人av资源网站| 91成人在线精品| 日韩欧美精品在线视频| 久久综合网色—综合色88| 国产精品久久久久精k8| 伊人一区二区三区| 三级不卡在线观看| 国产激情91久久精品导航 | 亚洲天堂久久久久久久| 精品久久久久久久久久久久包黑料| 日韩欧美中文字幕精品| 国产精品久久久久一区二区三区 | 欧美男生操女生| 国产欧美一二三区| 亚洲福利国产精品| 国产精品综合一区二区三区| 91首页免费视频| 91精品国产乱| 亚洲一区二区成人在线观看| 九九视频精品免费| 欧美无砖专区一中文字| 欧美精品一区二区三区久久久| 国产精品夫妻自拍| 激情久久五月天| 欧美日韩中文国产| 亚洲精品久久7777| 成人黄色777网| 国产女人aaa级久久久级| 青青草原综合久久大伊人精品优势| 本田岬高潮一区二区三区| 精品国产凹凸成av人网站| 亚洲一二三区不卡| 94色蜜桃网一区二区三区| 久久久久久久久久久黄色| 日产国产欧美视频一区精品| 亚洲一区在线观看免费观看电影高清| 久久色.com| 亚洲色图欧洲色图| av在线不卡免费看| 中文字幕一区二区在线观看| 国产99久久久精品| 国产日韩精品一区二区三区| 国产黄色成人av| 国产精品嫩草影院av蜜臀| 粉嫩aⅴ一区二区三区四区| 久久久www成人免费毛片麻豆| 国产伦精品一区二区三区免费迷| 久久综合九色综合97婷婷| 久久se这里有精品| 国产欧美一区二区精品忘忧草| 丁香婷婷综合色啪| 有坂深雪av一区二区精品| 欧美日韩亚洲丝袜制服| 激情综合色综合久久| 欧美国产视频在线| 欧美日韩亚洲综合一区二区三区| 日本美女一区二区三区视频| 久久久久久久综合狠狠综合| 色婷婷激情综合| 亚洲va中文字幕| 国产欧美日韩综合精品一区二区| 91美女蜜桃在线| 国产最新精品精品你懂的| 亚洲精品亚洲人成人网在线播放| 8v天堂国产在线一区二区| 丁香桃色午夜亚洲一区二区三区| 自拍视频在线观看一区二区| 91精品欧美福利在线观看| 99精品视频在线免费观看| 精品一区二区三区在线播放视频| 亚洲精品久久嫩草网站秘色| 久久综合久色欧美综合狠狠| 欧美日韩一区二区三区不卡| 91丨九色porny丨蝌蚪| 国产成人午夜精品5599| 久久er99热精品一区二区| 亚洲成人自拍网| 亚洲福利电影网| 亚洲猫色日本管| 亚洲欧洲美洲综合色网| 国产精品久久久一区麻豆最新章节| 欧美日韩精品是欧美日韩精品| 91色九色蝌蚪| 色综合久久综合| 欧美亚一区二区| 欧美人妇做爰xxxⅹ性高电影 | 日韩精品中午字幕| 91麻豆精品国产91久久久久久久久| 欧美精品在线一区二区| 欧美精品日韩一本| 91精品国产欧美一区二区成人| 欧美日韩三级视频| 欧美一区二区三级| 国产清纯白嫩初高生在线观看91| 国产性色一区二区| 亚洲欧洲一区二区在线播放| 亚洲日本韩国一区| 免费一区二区视频| 久久成人久久鬼色| aaa欧美日韩| 日韩一级二级三级精品视频| 日韩精品综合一本久道在线视频| 在线视频一区二区三| 国产一区啦啦啦在线观看| 国产成人8x视频一区二区| 日本乱人伦一区| 日韩一级大片在线| 国产精品久久久久aaaa| 蜜臀av亚洲一区中文字幕| 91美女在线观看| 久久免费精品国产久精品久久久久| **网站欧美大片在线观看| 九九久久精品视频| 欧美日韩一卡二卡三卡 | 男男gaygay亚洲| 91美女视频网站| 久久久www成人免费毛片麻豆| 夜夜亚洲天天久久| 国产一区二区视频在线播放| 欧美丰满美乳xxx高潮www| 综合电影一区二区三区 | 中文字幕成人网| 国产最新精品免费| 日韩欧美一二三四区| 蜜芽一区二区三区| 欧美mv和日韩mv国产网站| 日韩在线a电影| 精品蜜桃在线看| 黄网站免费久久| 欧美激情在线看| 暴力调教一区二区三区| 国产女人18水真多18精品一级做| 国产一区二区三区观看| 国产欧美日韩视频在线观看| 丰满少妇在线播放bd日韩电影| 欧美国产日韩亚洲一区| 成人av午夜电影| 亚洲自拍偷拍图区| 欧美一二三区在线观看| 国产精品一区二区在线播放| 中文字幕乱码久久午夜不卡| 色菇凉天天综合网| 日韩中文字幕区一区有砖一区| 日韩欧美久久久| 成人99免费视频| 视频一区二区不卡| 国产日韩av一区二区| 色伊人久久综合中文字幕| 婷婷激情综合网| 国产精品三级电影| 欧美一区二区黄| 成人app下载| 久久精工是国产品牌吗| 中文字幕日韩一区| 欧美不卡视频一区| 在线观看日韩电影| 九色|91porny| 午夜伦欧美伦电影理论片| 成人免费在线视频| 亚洲精品在线观看网站| 制服丝袜亚洲播放| 91麻豆免费视频| 不卡大黄网站免费看| 久国产精品韩国三级视频| 亚洲午夜电影在线观看| 亚洲日本在线a| 中文字幕一区在线观看| 久久综合国产精品| 欧美大片免费久久精品三p| 欧美性一区二区| 色噜噜狠狠成人中文综合| caoporen国产精品视频| 成人高清免费在线播放| 成人高清视频免费观看| av电影在线观看完整版一区二区| 中文字幕制服丝袜成人av| 91国产视频在线观看| 色婷婷av一区二区三区gif | 欧美三级日韩在线| 一本色道久久综合亚洲精品按摩| 国产成人精品1024| caoporm超碰国产精品| 成人在线综合网| 91网上在线视频| 欧美一级欧美一级在线播放| 日韩一区二区中文字幕| 国产日韩欧美综合一区| 国产精品剧情在线亚洲| 亚洲另类春色国产| 蜜桃久久久久久| 国产.精品.日韩.另类.中文.在线.播放 | 亚洲人成网站在线| 亚洲欧美色一区| 久久国产精品色| 日本韩国欧美国产| 久久久精品中文字幕麻豆发布|