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

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

?? main.c

?? 用msp430開放nrf24l01之通訊
?? C
字號:
//******************************************************************************
//  MSP430F20x2/3 Demo - SPI full-Duplex 3-wire Master
//
//  Description: SPI Master communicates full-duplex with SPI Slave using
//  3-wire mode. The level on P1.4 is TX'ed and RX'ed to P1.0.
//  Master will pulse slave reset for synch start.
//  ACLK = n/a, MCLK = SMCLK = Default DCO
//
//                Slave                      Master
//               MSP430F20x2/3              MSP430F20x2/3
//             -----------------          -----------------
//            |              XIN|-    /|\|              XIN|-
//            |                 |      | |                 |
//            |             XOUT|-     --|RST          XOUT|-
//            |                 | /|\    |                 |
//            |          RST/NMI|--+<----|P1.2             |
//      LED <-|P1.0             |        |             P1.4|<-
//          ->|P1.4             |        |             P1.0|-> LED
//            |         SDI/P1.7|<-------|P1.6/SDO         |
//            |         SDO/P1.6|------->|P1.7/SDI         |
//            |        SCLK/P1.5|<-------|P1.5/SCLK        |
//
//  M. Buccini / L. Westlund
//  Texas Instruments Inc.
//  October 2005
//  Built with IAR Embedded Workbench Version: 3.40A
//******************************************************************************

#include <msp430x20x3.h>

#define RF_CLK  0x20//P1
#define MISO    0x40//P1
#define MISI    0x80//P1
#define IRQ     0x10//P1
#define CSN     0x40//P2
#define CE      0x80//P2

unsigned int j;
volatile unsigned int i;
unsigned char PTX_RF_Address_P0[5]={0x07,0xFF,0xFF,0xFF,0xFF};
unsigned char PRX_RF_Address_P1[5]={0x01,0xEE,0xEE,0xEE,0xEE};
unsigned char ad_data[1];
unsigned char spi_read,buffer[16],buffer_1[10];
unsigned int ad_value;
void delay_10ms(void)
{
  unsigned int dt;
    dt=30000;
    do{
    }while(dt-->0);
}

void delay_10us(void)
{
  unsigned char dt;
  dt=30;
  do{
  }while(dt-->0);
}

void init_SPI(void)
{
  USICTL0 |= USIPE7 + USIPE6 + USIPE5 + USISWRST + USIMST + USIOE; // Port, SPI master
  USICTL1 |= USICKPH;// + USIIE;           // Counter interrupt, flag remains set
  USICKCTL = USIDIV_4 + USISSEL_2;      // /16 SMCLK
  USICTL0 &= ~USISWRST;                 // USI released for operation

  USICNT = 1;
  do{
  }while(!(USIIFG & USICTL1));
}

unsigned char RF_Read(unsigned char adr){
  P2OUT &=~CSN;
  USISRL = adr; // init-load data
  USICNT = 8;
  do{
  }while(!(USIIFG & USICTL1));
  USICNT = 8;
  do{
  }while(!(USIIFG & USICTL1));

  P2OUT |=CSN;
  return(USISRL);
}

void RF_ReadS(unsigned char adr,unsigned char read_cnt,unsigned char *read_buffer){
  unsigned char i;
  P2OUT &=~CSN;
  USISRL = adr; // init-load data
  USICNT = 8;
  do{
  }while(!(USIIFG & USICTL1));

  for(i=0;i<read_cnt;i++)
  {
    USICNT=8;
    do{
    }while(!(USIIFG & USICTL1));
    *(read_buffer+i)=USISRL;
  }
  P2OUT |=CSN;
}

void RF_Write(unsigned char adr,unsigned char cmd){
  adr |= 0x20;
  P2OUT &=~CSN;
  USISRL = adr; // init-load data
  USICNT = 8;
  do{
  }while(!(USIIFG & USICTL1));
  USISRL = cmd;
  USICNT = 8;
  do{
  }while(!(USIIFG & USICTL1));

  P2OUT |=CSN;
}

void RF_WriteS(unsigned char adr,unsigned char write_cnt,unsigned char *write_buffer){
  unsigned char i;
  adr |= 0x20;
  P2OUT &=~CSN;
  USISRL = adr; // init-load data
  USICNT = 8;
  do{
  }while(!(USIIFG & USICTL1));

  for(i=0;i<write_cnt;i++)
  {
    USISRL = *(write_buffer+i); // init-load data
    USICNT=8;
    do{
    }while(!(USIIFG & USICTL1));
  }

  P2OUT |=CSN;
}


void main(void)
{
  unsigned char dt_cnt;

  WDTCTL = WDTPW + WDTHOLD;             // Stop watchdog timer
  P1DIR |= 0x01;
  P2DIR |= (CSN | CE);
  P2IES =0x00;
  P2SEL=0x00;

  P1IE  |= IRQ;                        // P2.0 interrupt enabled
  P1IES |= IRQ;                        // P2.0 Hi/lo edge
  P1IFG &= ~IRQ;                       // P2.0 IFG cleared

  P1OUT &=~0x01;
  SD16CTL = SD16REFON + SD16SSEL_1;         // 1.2V ref, SMCLK
  SD16INCTL0 = SD16INCH_4;                  // A4+/-

  SD16CCTL0 =  SD16UNI + SD16IE + SD16IFG;            // 256OSR, unipolar, interrupt enable
  SD16AE = SD16AE1;                         // P1.1 A4+, A4- = VSS
  //SD16CCTL0 |= SD16SC;                      // Set bit to start conversion



  init_SPI();

  //RF_Write(0x01,0x3F);// auto ack.
  RF_Write(0x01,0x00);// no auto ack.
  RF_Write(0x02,0x3F);// enable data pipe0
  RF_Write(0x03,0x03);// set address width 5bytes
  RF_Write(0x05,0x00);// set RF channel 0
  RF_Write(0x06,0x0F);// set 2Mbps , 0dBm

  RF_WriteS(0x0A,5,PRX_RF_Address_P1);//set receive address
  RF_WriteS(0x10,5,PRX_RF_Address_P1);

  RF_Write(0x11,0x04);//set receive pipe0  width
  RF_Write(0x12,0x04);//set receive pipe1  width

  RF_Write(0xE2,0x00);//clear payload
  RF_Write(0x07,0x40);

  _BIS_SR(GIE);

  P2OUT &=~ CE;
  RF_Write(0x00,0x0F);//power up, RX mode
  for(dt_cnt=0;dt_cnt<200;dt_cnt++)//powerdown goto standby-I mode must be wait 1.5ms
    delay_10us();

  P2OUT |= CE;
  for(dt_cnt=0;dt_cnt<200;dt_cnt++)//powerdown goto standby-I mode must be wait 1.5ms
    delay_10us();

  //RF_WriteS(0x0A,5,buffer);
  //RF_ReadS(0x0b,5,buffer);
//delay_10us();


  while(1){
   
    //if(ad_value>32767)
    //  P1OUT |= 0x01;
    //else
    //  P1OUT &=~ 0x01;
   
    spi_read=RF_Read(0x17);
    if(spi_read & 0x04){
      RF_Write(0xE2,0x00);//clear payload
      RF_Write(0x07,0x40);
    }

  }
}

#pragma vector = SD16_VECTOR
__interrupt void SD16ISR(void)
{
  if ((int)SD16MEM0 < 0x2AAA)           	    // SD16MEM0 > 0.3V?, clears IFG
    P1OUT &=~ 0x01;
  else
    P1OUT |= 0x01;
}

#pragma vector=PORT1_VECTOR
__interrupt void Port_1(void)
{
  if((P1IFG & IRQ) ==IRQ){
    do{
      RF_ReadS(0x61,4,buffer);
    }while((RF_Read(0x17) & 0x01)==0x00);
    ad_value=(unsigned int)buffer[0]+ (unsigned int)(buffer[1]<<8);
    RF_Write(0xE2,0x00);//clear payload
    RF_Write(0x07,0x40);

    P1IFG &= ~IRQ;
  }
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美精品一区二| 日韩不卡一二三区| 亚洲成人av中文| 成人一区二区三区视频| 制服视频三区第一页精品| 中文字幕精品一区| 美女视频一区二区| 欧美日韩国产a| 综合欧美一区二区三区| 国产一区二区电影| 欧美成人伊人久久综合网| 亚洲国产精品一区二区www| 国产成a人无v码亚洲福利| 欧美一区二区三区四区在线观看 | 一本久道中文字幕精品亚洲嫩| 91精品国产综合久久精品性色 | 亚洲成人黄色影院| av电影在线不卡| 国产午夜精品一区二区三区四区| 麻豆成人在线观看| 911精品国产一区二区在线| 亚洲精品欧美激情| 色综合久久中文综合久久牛| 欧美激情在线一区二区三区| 久久超级碰视频| 欧美成人精品高清在线播放| 日日嗨av一区二区三区四区| 欧美日韩激情一区二区三区| 一区二区三区精品| 欧美这里有精品| 亚洲在线免费播放| 欧美亚洲综合色| 亚洲香肠在线观看| 欧美日韩精品二区第二页| 午夜精品久久久久影视| 欧美日高清视频| 亚洲va欧美va天堂v国产综合| 在线亚洲人成电影网站色www| 亚洲精品你懂的| 欧美亚洲国产怡红院影院| 亚洲国产精品久久不卡毛片 | 久久影院电视剧免费观看| 久久69国产一区二区蜜臀| 精品sm捆绑视频| 国产精一品亚洲二区在线视频| 国产欧美一区二区精品忘忧草 | 欧美精品一卡二卡| 蜜桃久久av一区| 国产亚洲一本大道中文在线| 成人免费高清视频| 夜夜精品视频一区二区| 欧美日韩国产成人在线91| 久久99国产精品尤物| 国产精品久久久久久久久动漫| 一本久久a久久免费精品不卡| 亚洲成人午夜影院| 欧美精品一区二区三区视频| 国产成人啪午夜精品网站男同| 中文字幕不卡一区| 欧美三级在线看| 国产真实乱偷精品视频免| 1024国产精品| 91精品国产欧美日韩| 国产成人免费视频一区| 亚洲国产精品天堂| 久久久久久久综合| 欧美亚洲另类激情小说| 国产在线播放一区二区三区| 亚洲视频电影在线| 欧美一级免费观看| 成人动漫一区二区在线| 日韩在线观看一区二区| 亚洲国产精品av| 欧美一区二视频| 99精品欧美一区二区三区综合在线| 日韩精品电影在线| 国产精品盗摄一区二区三区| 欧美一区欧美二区| 91久久国产综合久久| 国产成人综合在线| 日韩高清一级片| 亚洲激情在线播放| 久久精品日产第一区二区三区高清版 | 国产精品婷婷午夜在线观看| 欧美日韩一区视频| www.亚洲在线| 韩国午夜理伦三级不卡影院| 午夜精品福利一区二区三区av| 国产精品久久久久婷婷| 久久婷婷综合激情| 欧美一区二区三区在线| 欧美性感一区二区三区| 不卡免费追剧大全电视剧网站| 久久国产精品99久久久久久老狼 | 91成人在线精品| 成人影视亚洲图片在线| 精品一区免费av| 亚洲妇熟xx妇色黄| 国产精品国产三级国产| 久久无码av三级| 日韩欧美成人激情| 91精品国产综合久久精品app| 在线观看亚洲精品视频| 91最新地址在线播放| 成人av午夜电影| 国产宾馆实践打屁股91| 国产最新精品免费| 精品在线播放免费| 久久99精品久久久久久动态图| 石原莉奈在线亚洲二区| 亚洲国产精品综合小说图片区| 亚洲免费观看在线视频| 日韩码欧中文字| 亚洲美女免费在线| 亚洲免费av观看| 亚洲色图欧美在线| 亚洲女同女同女同女同女同69| 亚洲男人的天堂av| 一区二区久久久| 亚洲成人手机在线| 七七婷婷婷婷精品国产| 久久机这里只有精品| 精品一区二区三区的国产在线播放| 麻豆精品在线播放| 韩国成人在线视频| 成人av先锋影音| 欧美午夜精品理论片a级按摩| 色999日韩国产欧美一区二区| 欧美主播一区二区三区美女| 337p亚洲精品色噜噜噜| 久久人人97超碰com| 国产精品国产三级国产有无不卡 | 国内精品写真在线观看| 国产成人午夜视频| 色婷婷av一区二区三区大白胸| 欧美亚洲自拍偷拍| 欧美不卡一区二区三区四区| 国产女同性恋一区二区| 综合久久久久久| 五月天精品一区二区三区| 精品一区二区免费看| 国产99久久久国产精品免费看| 91免费在线播放| 91精品国模一区二区三区| 久久精品欧美一区二区三区不卡| 国产精品卡一卡二卡三| 亚洲电影在线播放| 国产资源精品在线观看| 91视视频在线观看入口直接观看www | 91免费观看视频在线| 777午夜精品免费视频| 日本一区免费视频| 亚洲v中文字幕| 成人妖精视频yjsp地址| 欧美老女人第四色| 国产亚洲美州欧州综合国| 亚洲国产精品一区二区www在线| 久久精品99久久久| 色诱视频网站一区| 久久久久久免费网| 午夜视频一区在线观看| 国产高清久久久久| 欧美福利电影网| 中文字幕亚洲欧美在线不卡| 久久精品国产99久久6| 91麻豆免费看| 久久久激情视频| 美脚の诱脚舐め脚责91| 欧美在线观看你懂的| 国产精品视频yy9299一区| 久久99国产精品免费| 欧美日韩国产高清一区二区三区 | 国产美女在线观看一区| 欧美性猛交xxxx黑人交| 国产精品丝袜在线| 国产精品一级片在线观看| 欧美日韩国产一级二级| 1024亚洲合集| 99久久er热在这里只有精品15| 久久久久久久久岛国免费| 另类小说一区二区三区| 538prom精品视频线放| 亚洲精品久久嫩草网站秘色| 成人综合在线观看| 国产喂奶挤奶一区二区三区| 另类小说图片综合网| 欧美一区2区视频在线观看| 亚洲国产一区视频| 欧美视频在线观看一区| 亚洲免费在线播放| 成人精品一区二区三区中文字幕| 久久久久99精品国产片| 国产精品伊人色| 国产亚洲欧美在线| 国产精品一区二区男女羞羞无遮挡 | 久久午夜免费电影| 国产老肥熟一区二区三区| www成人在线观看| 久久99国产精品麻豆| 久久久噜噜噜久久中文字幕色伊伊|