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

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

?? 2401 test 24l01.c

?? nRF24L01 RF接收發送例子程序
?? C
字號:
/*
    
    nRF2401 test code to run on the 24G demo board, V02, text between 2 modules
    
    Compiles with the free version of CC5X...?
    Pete Dokter, 2/22/06
    

    config_setup word 16 bits found on pages 13-15
    
    23: 0 Payloads have an 8 bit address
    22: 0
    21: 1
    20: 0
    19: 0
    18: 0
    17: 1 16-Bit CRC
    16: 1 CRC Enabled

    15: 0 One channel receive
    14: 1 ShockBurst Mode
    13: 0 250K Transmission Rate
    12: 0
    11: 1
    10: 1
    9: 1 RF Output Power
    8: 0 RF Output Power

    7: 0 Channel select (channel 2)
    6: 0
    5: 0
    4: 0
    3: 0
    2: 1
    1: 0
    0: 0 Transmit mode
    
*/
#define Clock_8MHz
#define Baud_9600

#include "C:\Global\PIC\C\16F88.h"


#pragma config |= 0x3F30 //Internal Oscillator, No WDT, MCLR Enabled


#define CS       PORTA.0        //out
#define CLK1     PORTA.1        //out
#define DATA1    PORTA.2        //I/O
#define DR1      PORTA.3        //in
#define DATA2    PORTA.4        //in
#define CE       PORTA.6        //out
#define CLK2     PORTA.7        //out


#define DR2      PORTB.0        //in
#define stat1    PORTB.1        //out
#define stat2    PORTB.3        //out
#define stat3    PORTB.4        //out




uns8 data_array[4];


void boot_up(void);
void configure_receiver(void);
void configure_transmitter(void);
void transmit_data(void);
void receive_data(void);
void delay_ms(uns16);

void main()
{
    uns8 x;
        
    boot_up();
    
    for (x = 0; x < 3; x++)
        {
                    
            stat1 = 1;
            delay_ms(25);
            stat1 = 0;
            stat2 = 1;
            delay_ms(25);
            stat2 = 0;
            stat3 = 1;
            delay_ms(25);
            stat3 = 0;
        }
    
    stat1 = 1;
    
    configure_receiver();
   
    while(1)
    {
        if (RCIF == 1)
        {
            
            configure_transmitter();
            
            data_array[0] = RCREG;
            
            transmit_data();
            
            configure_receiver();
        }
    

        
        if(DR1 == 1) //We have data!
        {
           
            receive_data();
            
            
            if (stat3 == 1)
            {
                stat3 = 0;
                stat1 = 1;                    
            }
            
            else if (stat2 == 1)
            {
                stat2 = 0;
                stat3 = 1;
            }
            
            else if (stat1 == 1)
            {
                stat1 = 0;
                stat2 = 1;
            }
            
            TXREG = data_array[0];
        }
        
        
    
    }
        
}

void boot_up(void)
{
    OSCCON = 0b.0111.0000; //Setup internal oscillator for 8MHz
    while(OSCCON.2 == 0); //Wait for frequency to stabilize

    ANSEL = 0b.0000.0000; //Turn pins to Digital instead of Analog
    CMCON = 0b.0000.0111; //Turn off comparator on RA port

    PORTA = 0b.0000.0000;  
    TRISA = 0b.0011.1100;  //0 = Output, 1 = Input

    PORTB = 0b.0000.0000;  
    TRISB = 0b.1100.0101;  //0 = Output, 1 = Input

    BRGH = 1; //High speed UART
    
    SPBRG = 51;//9600 baud


    SYNC = 0;
    SPEN = 1;

    CREN = 1;
    TXEN = 1; //Enable transmission

    
    RCIF = 0;
    RCIE = 1;
    PEIE = 1;
    GIE = 1;
    
    data_array[0] = 0x00;
    data_array[1] = 0x00;
    data_array[2] = 0x00;
    data_array[3] = 0x00;
}

//This will clock out the current payload into the data_array
void receive_data(void)
{
    uns8 i, j, temp;

    CE = 0;//Power down RF Front end

    //Erase the current data array so that we know we are looking at actual received data
    data_array[0] = 0x00;
    

    //Clock in data, we are setup for 32-bit payloads
    for(i = 0 ; i < 4 ; i++) //4 bytes
    {
        for(j = 0 ; j < 8 ; j++) //8 bits each
        {
            temp <<= 1;
            temp.0 = DATA1;

            CLK1 = 1;
            CLK1 = 0;
        }

        data_array[i] = temp; //Store this byte
    }
    
    

    CE = 1; //Power up RF Front end
}



//This sends out the data stored in the data_array
//data_array must be setup before calling this function
void transmit_data(void)
{
    uns8 i, j, temp, rf_address;
    
    CE = 1;
    
    delay_ms(1);

    //Clock in address
    for (i = 0; i < 5; i++)
    {
    
        rf_address = 0b.1110.0111; //Power-on Default for all units (on page 11)
        
        for(j = 0 ; j < 8 ; j++)
        {
            DATA1 = rf_address.7;
            CLK1 = 1;
            CLK1 = 0;
            
            rf_address <<= 1;
        }
    }
    
    //Clock in the data_array
    for(i = 0 ; i < 4 ; i++) //4 bytes
    {
        temp = data_array[i];
        
        for(j = 0 ; j < 8 ; j++) //One bit at a time
        {
            DATA1 = temp.7;
            CLK1 = 1;
            CLK1 = 0;
            
            temp <<= 1;
        }
    }
    
    CE = 0; //Start transmission   
}



//2.4G Configuration - Receiver
//This setups up a RF-24G for receiving at 1mbps
void configure_receiver(void)
{
    uns8 i,j;
    //uns24 config_setup;
    uns8 config_setup[8], temp;

    //During configuration of the receiver, we need DATA1 as an output
    PORTA = 0b.0000.0000;  
    TRISA = 0b.0011.1000;  //0 = Output, 1 = Input (DR1 is on RA3) (DATA1 is on RA2)

    //Config Mode
    CE = 0; CS = 1;
    
    delay_ms(1);
    
    //Setup configuration word, set up for 1MB
    //config_setup = 0b.0010.0011.0100.1110.0000.0101; //Look at pages 13-15 for more bit info
    config_setup[7] = 0b.1110.0111;
    config_setup[6] = 0b.1110.0111;
    config_setup[5] = 0b.1110.0111;
    config_setup[4] = 0b.1110.0111;
    config_setup[3] = 0b.1110.0111;
    
    config_setup[0] = 0b.0000.0101;
    config_setup[1] = 0b.0110.1110;
    config_setup[2] = 0b.1010.0001;
    
    /*//purchased version of CC5X
    for(i = 0 ; i < 24 ; i++)
    {
        DATA1 = config_setup.23;
        CLK1 = 1;
        CLK1 = 0;
        
        config_setup <<= 1;
        
    }
    */
    
    //free version
    for (j = 8; j > 0; j--)
    {
        for(i = 0 ; i < 8 ; i++)
        {
            DATA1 = config_setup[j-1].7;
            CLK1 = 1;
            CLK1 = 0;
            
            config_setup[j-1] <<= 1;
            
        }
    }
    
    
    //Configuration is actived on falling edge of CS (page 10)
    CE = 0; CS = 0;

    //After configuration of the receiver, we need DATA1 as an input
    PORTA = 0b.0000.0000;  
    TRISA = 0b.0011.1100;  //0 = Output, 1 = Input (DR1 is on RA3) (DATA1 is on RA2)
    
    delay_ms(1);

    //Start monitoring the air
    CE = 1; CS = 0;


}    



//2.4G Configuration - Transmitter
//This sets up one RF-24G for shockburst transmission
void configure_transmitter(void)
{
    uns8 i,j;
    //uns24 config_setup;
    uns8 config_setup[8], temp;
    
    PORTA = 0b.0000.0000;  
    TRISA = 0b.0011.1000;  //0 = Output, 1 = Input (DR1 is on RA3) (DATA1 is on RA2)

    //Config Mode
    CE = 0; CS = 1;
    
    delay_ms(1);
        
    //Setup configuration word
    //config_setup = 0b.0010.0011.0100.1110.0000.0100; //Look at pages 13-15 for more bit info
    config_setup[7] = 0b.1110.0111;
    config_setup[6] = 0b.1110.0111;
    config_setup[5] = 0b.1110.0111;
    config_setup[4] = 0b.1110.0111;
    config_setup[3] = 0b.1110.0111;
    
    config_setup[0] = 0b.0000.0100;
    config_setup[1] = 0b.0110.1110;
    config_setup[2] = 0b.1010.0001; //address width and CRC
    
    /*//purchased version
    for(i = 0 ; i < 24 ; i++)
    {
        DATA1 = config_setup.23;
        CLK1 = 1;
        CLK1 = 0;
        
        config_setup <<= 1;
    }
    */
    
    //free version
    for (j = 3; j > 0; j--)
    {
        for(i = 0 ; i < 8 ; i++)
        {
            DATA1 = config_setup[j-1].7;
            CLK1 = 1;
            CLK1 = 0;
            
            config_setup[j-1] <<= 1;
            
            
        }
    }
    
    
    delay_ms(1);
    
    //Configuration is actived on falling edge of CS (page 10)
    CE = 0; CS = 0;

    
}



//General short delay
void delay_ms(uns16 x)
{
    uns8 y, z;
    for ( ; x > 0 ; x--)
        for ( y = 0 ; y < 4 ; y++)
            for ( z = 0 ; z < 176 ; z++);
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日本亚洲最大的色成网站www| 日本一区中文字幕| 香蕉久久一区二区不卡无毒影院| 日韩高清在线观看| 成人av在线网| 91亚洲午夜精品久久久久久| 56国语精品自产拍在线观看| 国产欧美日本一区二区三区| 一级精品视频在线观看宜春院 | 欧美一卡二卡在线观看| 中文字幕日韩一区| 国产一区二区三区四区五区入口| 51久久夜色精品国产麻豆| 亚洲视频电影在线| 成人一区二区三区视频在线观看| 日韩精品一区二区三区老鸭窝 | 蜜桃av一区二区在线观看| 色综合一区二区| 国产精品美女久久久久aⅴ| 激情成人综合网| 日韩亚洲电影在线| 婷婷综合久久一区二区三区| 99国产精品久久久| 欧美国产精品一区| 国产久卡久卡久卡久卡视频精品| 日韩小视频在线观看专区| 亚洲一二三四区不卡| 一本大道久久精品懂色aⅴ| 中文字幕一区视频| 本田岬高潮一区二区三区| 国产精品免费av| 粉嫩aⅴ一区二区三区四区| 国产偷国产偷精品高清尤物 | 韩国精品久久久| 亚洲午夜精品网| 成人免费观看视频| 国产欧美精品区一区二区三区| 国产一区高清在线| 精品国产精品一区二区夜夜嗨| 日韩综合小视频| 欧美一区二区在线观看| 美女一区二区视频| 欧美xxxxxxxx| 国产成人免费9x9x人网站视频| 久久久久久影视| 成人av在线电影| 亚洲最大成人综合| 欧美一级专区免费大片| 国内精品伊人久久久久av影院 | 在线观看av一区| 亚洲bt欧美bt精品| 精品国产免费人成电影在线观看四季| 国内外成人在线| 国产精品麻豆一区二区| 亚洲欧美日韩一区二区| 久久美女高清视频| 日韩福利视频导航| 久久久99久久| 在线观看视频91| 美女在线观看视频一区二区| 国产欧美日韩精品在线| 色婷婷av一区二区三区软件 | 国产精品国产三级国产aⅴ无密码| 一本久久精品一区二区| 蜜桃视频免费观看一区| 国产日韩欧美在线一区| 欧美性视频一区二区三区| 美国十次了思思久久精品导航| 国产精品视频一二三区| 91精品国模一区二区三区| 国产成人a级片| 五月天激情小说综合| 国产精品久久久久久久午夜片| 欧美电影影音先锋| a级高清视频欧美日韩| 蜜桃视频在线观看一区| 一区二区三区小说| 久久综合色之久久综合| 欧美三级韩国三级日本一级| 国模无码大尺度一区二区三区| 一区二区三区中文字幕| 久久久久久久久久久99999| 欧美剧情片在线观看| 成人精品小蝌蚪| 九色综合国产一区二区三区| 一区二区三区精密机械公司| 精品免费国产二区三区| 欧美日韩国产系列| 99精品视频在线观看免费| 久久不见久久见免费视频1| 亚洲综合色视频| 亚洲人成网站影音先锋播放| 久久久91精品国产一区二区精品| 91麻豆精品国产91久久久资源速度 | 色先锋资源久久综合| 国产精品一区一区三区| 日韩黄色在线观看| 亚洲永久精品国产| 亚洲视频一区二区在线| 国产精品三级电影| 日本一区二区三区国色天香 | 国产亚洲欧美日韩在线一区| 欧美日韩国产系列| 国产欧美日韩综合| 99精品欧美一区二区三区综合在线| 免费在线观看不卡| 首页综合国产亚洲丝袜| 一区二区日韩av| 亚洲免费观看高清完整版在线观看熊 | 日韩一级完整毛片| 欧美日韩成人一区| 欧美羞羞免费网站| 欧美色图天堂网| 欧美日韩三级在线| 精品婷婷伊人一区三区三| 欧美三日本三级三级在线播放| 日本黄色一区二区| 91国偷自产一区二区三区观看 | 91蜜桃视频在线| 色综合久久综合网97色综合| 久久99久久精品欧美| 性久久久久久久久| 一区二区三区在线播放| 97超碰欧美中文字幕| 盗摄精品av一区二区三区| 国产精品系列在线播放| 国产91露脸合集magnet| 成人精品国产免费网站| 成人成人成人在线视频| 国产不卡视频在线观看| av在线不卡网| 欧美日韩精品综合在线| 91麻豆精品国产91久久久久| 日韩欧美在线123| 国产午夜精品一区二区三区嫩草| 国产精品免费久久久久| 亚洲国产欧美日韩另类综合| 日韩高清国产一区在线| 国产伦精品一区二区三区免费迷| 成人av网址在线| 在线观看一区二区精品视频| 欧美一区二区视频免费观看| 精品国产乱码久久| 伊人色综合久久天天| 美国欧美日韩国产在线播放| 一区二区三区91| 在线视频国内一区二区| 日韩午夜精品视频| 国产精品二三区| 日本不卡的三区四区五区| 国产福利91精品| 在线观看亚洲a| 久久久av毛片精品| 亚洲国产精品久久艾草纯爱| 国产精品综合网| 欧美亚洲国产一卡| 久久蜜桃一区二区| 日韩精品乱码av一区二区| 成人看片黄a免费看在线| 欧美日韩国产小视频| 国产精品久久免费看| 青青青伊人色综合久久| 色综合久久中文字幕| 久久亚洲二区三区| 舔着乳尖日韩一区| 91美女片黄在线观看91美女| 久久一区二区三区四区| 亚洲成人tv网| 91视视频在线直接观看在线看网页在线看 | 日本一区二区高清| 免费观看一级特黄欧美大片| 99视频精品在线| 久久在线观看免费| 日本亚洲欧美天堂免费| 欧美午夜片在线看| 亚洲欧美国产77777| 成人午夜视频福利| 精品国产一二三| 美女视频免费一区| 欧美精品丝袜久久久中文字幕| 亚洲色图在线看| 成人h精品动漫一区二区三区| 精品国产乱码久久久久久久| 日韩精品欧美精品| 欧美日韩精品一区二区三区| 亚洲视频图片小说| 成人一区二区三区| 日本一区二区三区电影| 国产剧情一区在线| 亚洲精品一区二区精华| 国内精品伊人久久久久影院对白| 欧美一区三区二区| 日本不卡在线视频| 在线成人高清不卡| 天堂午夜影视日韩欧美一区二区| 欧美性猛交一区二区三区精品| 亚洲国产一区二区在线播放| 在线观看国产日韩| 日韩国产欧美在线视频| 欧美一三区三区四区免费在线看 |