在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > RF1100SE單片機(jī)C8051F310程序

            RF1100SE單片機(jī)C8051F310程序

            作者: 時(shí)間:2016-11-30 來(lái)源:網(wǎng)絡(luò) 收藏
            #include

            #include
            #include
            #include
            #include

            本文引用地址:http://www.biyoush.com/article/201611/324042.htm

            #define uint unsigned int
            #define uchar unsigned char

            #define BUSY SPI0CFG&0x80//SPI接口檢測(cè)

            code uchar PaTabel[]={0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60};//配置功率
            uchar send_buf[8]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
            //要發(fā)送的有效數(shù)據(jù),其中第一個(gè)為數(shù)據(jù)的長(zhǎng)度
            uchar rx_buf[8]={0}; //接收的數(shù)據(jù)緩存

            //引腳定義*********************************************************************************
            #define CSN_HIGH CSN=1
            #define CSN_LOW CSN=0
            sbit GDO0 =P0^6;
            sbit CSN =P0^3;
            sbit MISO =P0^1; //為了檢測(cè)是否穩(wěn)定
            sbit c=P0^7;
            //*****************************************************************************************
            #define WRITE_BURST 0x40 //連續(xù)寫入多個(gè)字節(jié),即為突發(fā)訪問(wèn)
            #define READ_SINGLE 0x80 //讀一個(gè)字節(jié)
            #define READ_BURST 0xC0 //連續(xù)讀多個(gè)字節(jié)
            #define BYTES_IN_RXFIFO 0x7F //接收緩沖區(qū)的有效字節(jié)數(shù)
            #define CRC_OK 0x80 //CRC校驗(yàn)通過(guò)位標(biāo)志
            //*****************************************************************************************
            //RF1100SE寄存器地址
            #define IOCFG2 0x00
            #define IOCFG1 0x01
            #define IOCFG0 0x02
            #define FIFOTHR 0x03
            #define SYNC1 0x04
            #define SYNC0 0x05
            #define PKTLEN 0x06
            #define PKTCTRL1 0x07
            #define PKTCTRL0 0x08
            #define ADDR 0x09
            #define CHANNR 0x0a
            #define FSCTRL1 0x0b
            #define FSCTRL0 0x0c
            #define FREQ2 0x0d
            #define FREQ1 0x0e
            #define FREQ0 0x0f

            //配置寄存器
            #define MDMCFG4 0x10
            #define MDMCFG3 0x11
            #define MDMCFG2 0x12
            #define MDMCFG1 0x13
            #define MDMCFG0 0x14
            #define DEVIATN 0x15
            #define MCSM2 0x16
            #define MCSM1 0x17
            #define MCSM0 0x18
            #define FOCCFG 0x19
            #define BSCFG 0x1a
            #define AGCTRL2 0x1b
            #define AGCTRL1 0x1c
            #define AGCTRL0 0x1d
            #define WOREVT1 0x1e
            #define WOREVT0 0x1f

            #define WORCTRL 0x20
            #define FREND1 0x21
            #define FREND0 0x22
            #define FSCAL3 0x23
            #define FSCAL2 0x24
            #define FSCAL1 0x25
            #define FSCAL0 0x26
            #define RCCTRL1 0x27
            #define RCCTRL0 0x28
            #define FSTEST 0x29
            #define PTEST 0x2a
            #define AGCTEST 0x2b
            #define TEST2 0x2c
            #define TEST1 0x2d
            #define TEST0 0x2e

            //狀態(tài)寄存器
            #define PARTNUM 0x30
            #define VERSION 0x31
            #define FREQEST 0x32
            #define LQI 0x33
            #define RSSI 0x34
            #define MARCSTATE 0x35
            #define WORTIME1 0x36
            #define WORTIME0 0x37
            #define PKTSTATUS 0x38
            #define VCOVCDAC 0x39
            #define TXBYTES 0x3a
            #define RXBYTES 0x3b
            #define PATABLE 0x3e
            #define TX_FIFO 0x3f
            #define RX_FIFO 0x3f

            //控制命令寄存器
            #define SRES 0x30//重啟芯片
            #define SFSTXON 0x31//開啟和校準(zhǔn)頻率合成器
            #define SXOFF 0x32//關(guān)閉晶體振蕩器
            #define SCAL 0x33//校準(zhǔn)頻率合成器并關(guān)斷
            #define SRX 0x34//啟用RX
            #define STX 0x35//空閑狀態(tài)時(shí)啟用TX
            #define SIDLE 0x36//離開RX/TX關(guān)斷頻率合成器并離開電磁波激活模式
            #define SAFC 0x37//運(yùn)行頻率合成器的AFC調(diào)節(jié)
            #define SWOR 0x38//運(yùn)行自動(dòng)RX選舉序列
            #define SPWD 0x39//當(dāng)CSn為高時(shí)進(jìn)入功率降低模式
            #define SFRX 0x3a//沖洗RX_FIFO緩沖
            #define SFTX 0x3b//沖洗TX_FIFO緩沖
            #define SWORRST 0x3c//重新設(shè)置真實(shí)時(shí)間時(shí)鐘
            #define SNOP 0x3d//附加:軟件擴(kuò)充為兩個(gè)字節(jié)

            //函數(shù)聲明*********************************************************************************
            void sysclk(void);
            void pio(void);
            void SPI(void);
            void Interrupt_int(void);
            void delay(uint i);
            void dat_int(void);
            //*****************************************************************************************
            uchar SPI_RW(uchar byte); //用SPI讀寫一字節(jié)的數(shù)據(jù)
            void SPI_WR_Strobe(uchar strobe); //寫入濾波命令
            void POWER_UP_RESET_CC1100(void); //上電復(fù)位
            uchar SPI_RW_Reg(uchar reg,uchar value); //向寄存器寫一字節(jié)的數(shù)據(jù),同時(shí)返回狀態(tài)字
            uchar SPI_Read_Reg(uchar reg); //從寄存器讀一字節(jié)的數(shù)據(jù)
            uchar SPI_Read_Buf(uchar reg,uchar *pBuf,uchar bytes); //從reg連續(xù)讀出bytes字節(jié)的數(shù)據(jù)
            uchar SPI_RW_Buf(uchar reg,uchar *pBuf,uchar bytes); //向reg連續(xù)寫入bytes字節(jié)的數(shù)據(jù)
            uchar RF1100CE_RxPacket(uchar *rx_buf,uchar *length); //接收函數(shù)
            void RF1100CE_TxPacket(uchar *tx_buf,uchar size); //發(fā)送函數(shù)
            void RF1100CE_Config(void); //RF1100CE的配置函數(shù)
            //*****************************************************************************************
            void main(void) //主程序
            {uchar sta=0;
            PCA0MD &= ~0x40;// 關(guān)閉看門狗
            pio();
            sysclk();
            dat_int();
            SPI(); //SPI0DAT是SPI的數(shù)據(jù)寄存器
            Interrupt_int();
            EA=0;

            POWER_UP_RESET_CC1100();
            RF1100CE_Config(); //RF1100CE的配置函數(shù)
            SPI_RW_Buf(PATABLE,PaTabel,8); //對(duì)設(shè)備進(jìn)行功率配置
            delay(6000);

            while(1)
            {

            RF1100CE_TxPacket(send_buf,8); //發(fā)送函數(shù)
            c=1;
            delay(100);

            if(sta&0xff)
            {
            CSN_LOW;
            SPI_RW(SFTX); //清除發(fā)送寄存器的值
            CSN_HIGH;
            }
            }
            }

            void dat_int(void)
            {
            CSN_LOW;
            _nop_();
            CSN_HIGH;
            c=0;
            }


            上一頁(yè) 1 2 下一頁(yè)

            關(guān)鍵詞: RF1100SE單片機(jī)C8051F31

            評(píng)論


            技術(shù)專區(qū)

            關(guān)閉