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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? cc1100_rx.lst

?? cc1100 rf init 如何初始化cc1100的發(fā)送與接受寄存器
?? LST
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
 284          //輸入:地址和配置字
 285          //輸出:無
 286          //功能描述:SPI寫寄存器
 287          //*****************************************************************************************
 288          void halSpiWriteReg(INT8U addr, INT8U value) 
 289          {
 290   1          CSN = 0;
 291   1          while (MISO);
 292   1          SpiTxRxByte(addr);          //寫地址
 293   1          SpiTxRxByte(value);         //寫入配置
 294   1          CSN = 1;
 295   1      }
 296          
 297          //*****************************************************************************************
 298          //函數(shù)名:void halSpiWriteBurstReg(INT8U addr, INT8U *buffer, INT8U count)
 299          //輸入:地址,寫入緩沖區(qū),寫入個(gè)數(shù)
 300          //輸出:無
 301          //功能描述:SPI連續(xù)寫配置寄存器
C51 COMPILER V7.01  CC1100_RX                                                              09/13/2006 17:53:03 PAGE 6   

 302          //*****************************************************************************************
 303          void halSpiWriteBurstReg(INT8U addr, INT8U *buffer, INT8U count) 
 304          {
 305   1          INT8U i, temp;
 306   1              temp = addr | WRITE_BURST;
 307   1          CSN = 0;
 308   1          while (MISO);
 309   1          SpiTxRxByte(temp);
 310   1          for (i = 0; i < count; i++)
 311   1              {
 312   2              SpiTxRxByte(buffer[i]);
 313   2          }
 314   1          CSN = 1;
 315   1      }
 316          
 317          //*****************************************************************************************
 318          //函數(shù)名:void halSpiStrobe(INT8U strobe)
 319          //輸入:命令
 320          //輸出:無
 321          //功能描述:SPI寫命令
 322          //*****************************************************************************************
 323          void halSpiStrobe(INT8U strobe) 
 324          {
 325   1          CSN = 0;
 326   1          while (MISO);
 327   1          SpiTxRxByte(strobe);                //寫入命令
 328   1          CSN = 1;
 329   1      }
 330          
 331          
 332          
 333          
 334          
 335          //*****************************************************************************************
 336          //函數(shù)名:INT8U halSpiReadReg(INT8U addr)
 337          //輸入:地址
 338          //輸出:該寄存器的配置字
 339          //功能描述:SPI讀寄存器
 340          //*****************************************************************************************
 341          INT8U halSpiReadReg(INT8U addr) 
 342          {
 343   1              INT8U temp, value;
 344   1          temp = addr|READ_SINGLE;//讀寄存器命令
 345   1              CSN = 0;
 346   1              while (MISO);
 347   1              SpiTxRxByte(temp);
 348   1              value = SpiTxRxByte(0);
 349   1              CSN = 1;
 350   1              return value;
 351   1      }
 352          
 353          
 354          //*****************************************************************************************
 355          //函數(shù)名:void halSpiReadBurstReg(INT8U addr, INT8U *buffer, INT8U count)
 356          //輸入:地址,讀出數(shù)據(jù)后暫存的緩沖區(qū),讀出配置個(gè)數(shù)
 357          //輸出:無
 358          //功能描述:SPI連續(xù)寫配置寄存器
 359          //*****************************************************************************************
 360          void halSpiReadBurstReg(INT8U addr, INT8U *buffer, INT8U count) 
 361          {
 362   1          INT8U i,temp;
 363   1              temp = addr | READ_BURST;               //寫入要讀的配置寄存器地址和讀命令
C51 COMPILER V7.01  CC1100_RX                                                              09/13/2006 17:53:03 PAGE 7   

 364   1          CSN = 0;
 365   1          while (MISO);
 366   1              SpiTxRxByte(temp);   
 367   1          for (i = 0; i < count; i++) 
 368   1              {
 369   2              buffer[i] = SpiTxRxByte(0);
 370   2          }
 371   1          CSN = 1;
 372   1      }
 373          
 374          
 375          //*****************************************************************************************
 376          //函數(shù)名:INT8U halSpiReadReg(INT8U addr)
 377          //輸入:地址
 378          //輸出:該狀態(tài)寄存器當(dāng)前值
 379          //功能描述:SPI讀狀態(tài)寄存器
 380          //*****************************************************************************************
 381          INT8U halSpiReadStatus(INT8U addr) 
 382          {
 383   1          INT8U value,temp;
 384   1              temp = addr | READ_BURST;               //寫入要讀的狀態(tài)寄存器的地址同時(shí)寫入讀命令
 385   1          CSN = 0;
 386   1          while (MISO);
 387   1          SpiTxRxByte(temp);
 388   1              value = SpiTxRxByte(0);
 389   1              CSN = 1;
 390   1              return value;
 391   1      }
 392          
 393          
 394          //*****************************************************************************************
 395          //函數(shù)名:void halRfWriteRfSettings(RF_SETTINGS *pRfSettings)
 396          //輸入:無
 397          //輸出:無
 398          //功能描述:配置CC1100的寄存器
 399          //*****************************************************************************************
 400          void halRfWriteRfSettings(void) 
 401          {
 402   1              halSpiWriteReg(CCxxx0_FSCTRL0,  rfSettings.FSCTRL2);//自已加的
 403   1          // Write register settings
 404   1          halSpiWriteReg(CCxxx0_FSCTRL1,  rfSettings.FSCTRL1);
 405   1          halSpiWriteReg(CCxxx0_FSCTRL0,  rfSettings.FSCTRL0);
 406   1          halSpiWriteReg(CCxxx0_FREQ2,    rfSettings.FREQ2);
 407   1          halSpiWriteReg(CCxxx0_FREQ1,    rfSettings.FREQ1);
 408   1          halSpiWriteReg(CCxxx0_FREQ0,    rfSettings.FREQ0);
 409   1          halSpiWriteReg(CCxxx0_MDMCFG4,  rfSettings.MDMCFG4);
 410   1          halSpiWriteReg(CCxxx0_MDMCFG3,  rfSettings.MDMCFG3);
 411   1          halSpiWriteReg(CCxxx0_MDMCFG2,  rfSettings.MDMCFG2);
 412   1          halSpiWriteReg(CCxxx0_MDMCFG1,  rfSettings.MDMCFG1);
 413   1          halSpiWriteReg(CCxxx0_MDMCFG0,  rfSettings.MDMCFG0);
 414   1          halSpiWriteReg(CCxxx0_CHANNR,   rfSettings.CHANNR);
 415   1          halSpiWriteReg(CCxxx0_DEVIATN,  rfSettings.DEVIATN);
 416   1          halSpiWriteReg(CCxxx0_FREND1,   rfSettings.FREND1);
 417   1          halSpiWriteReg(CCxxx0_FREND0,   rfSettings.FREND0);
 418   1          halSpiWriteReg(CCxxx0_MCSM0 ,   rfSettings.MCSM0 );
 419   1          halSpiWriteReg(CCxxx0_FOCCFG,   rfSettings.FOCCFG);
 420   1          halSpiWriteReg(CCxxx0_BSCFG,    rfSettings.BSCFG);
 421   1          halSpiWriteReg(CCxxx0_AGCCTRL2, rfSettings.AGCCTRL2);
 422   1              halSpiWriteReg(CCxxx0_AGCCTRL1, rfSettings.AGCCTRL1);
 423   1          halSpiWriteReg(CCxxx0_AGCCTRL0, rfSettings.AGCCTRL0);
 424   1          halSpiWriteReg(CCxxx0_FSCAL3,   rfSettings.FSCAL3);
 425   1              halSpiWriteReg(CCxxx0_FSCAL2,   rfSettings.FSCAL2);
C51 COMPILER V7.01  CC1100_RX                                                              09/13/2006 17:53:03 PAGE 8   

 426   1              halSpiWriteReg(CCxxx0_FSCAL1,   rfSettings.FSCAL1);
 427   1          halSpiWriteReg(CCxxx0_FSCAL0,   rfSettings.FSCAL0);
 428   1          halSpiWriteReg(CCxxx0_FSTEST,   rfSettings.FSTEST);
 429   1          halSpiWriteReg(CCxxx0_TEST2,    rfSettings.TEST2);
 430   1          halSpiWriteReg(CCxxx0_TEST1,    rfSettings.TEST1);
 431   1          halSpiWriteReg(CCxxx0_TEST0,    rfSettings.TEST0);
 432   1          halSpiWriteReg(CCxxx0_IOCFG2,   rfSettings.IOCFG2);
 433   1          halSpiWriteReg(CCxxx0_IOCFG0,   rfSettings.IOCFG0);    
 434   1          halSpiWriteReg(CCxxx0_PKTCTRL1, rfSettings.PKTCTRL1);
 435   1          halSpiWriteReg(CCxxx0_PKTCTRL0, rfSettings.PKTCTRL0);
 436   1          halSpiWriteReg(CCxxx0_ADDR,     rfSettings.ADDR);
 437   1          halSpiWriteReg(CCxxx0_PKTLEN,   rfSettings.PKTLEN);
 438   1      }
 439          
 440          
 441          
 442          
 443          
 444          
 445          //*****************************************************************************************
 446          //函數(shù)名:void halRfSendPacket(INT8U *txBuffer, INT8U size)
 447          //輸入:發(fā)送的緩沖區(qū),發(fā)送數(shù)據(jù)個(gè)數(shù)
 448          //輸出:無
 449          //功能描述:CC1100發(fā)送一組數(shù)據(jù)
 450          //*****************************************************************************************
 451          void halRfSendPacket(INT8U *txBuffer, INT8U size) 
 452          {
 453   1              halSpiWriteReg(CCxxx0_TXFIFO, size);
 454   1          halSpiWriteBurstReg(CCxxx0_TXFIFO, txBuffer, size); //寫入要發(fā)送的數(shù)據(jù)
 455   1      
 456   1          halSpiStrobe(CCxxx0_STX);           //進(jìn)入發(fā)送模式發(fā)送數(shù)據(jù)
 457   1      
 458   1          // Wait for GDO0 to be set -> sync transmitted
 459   1          while (!GDO0);
 460   1      
 461   1          // Wait for GDO0 to be cleared -> end of packet
 462   1          while (GDO0);
 463   1              halSpiStrobe(CCxxx0_SFTX);
 464   1      }
 465          
 466          
 467          
 468          INT8U halRfReceivePacket(INT8U *rxBuffer, INT8U *length) 
 469          {
 470   1          INT8U status[2];
 471   1          INT8U packetLength;
 472   1      
 473   1          halSpiStrobe(CCxxx0_SRX);           //進(jìn)入接收狀態(tài)
 474   1          while (!GDO0);
 475   1          while (GDO0);
 476   1          if ((halSpiReadStatus(CCxxx0_RXBYTES) & BYTES_IN_RXFIFO)) //如果接的字節(jié)數(shù)不為0
 477   1              {
 478   2              packetLength = halSpiReadReg(CCxxx0_RXFIFO);//讀出第一個(gè)字節(jié),此字節(jié)為該幀數(shù)據(jù)長(zhǎng)度
 479   2              if (packetLength <= *length)            //如果所要的有效數(shù)據(jù)長(zhǎng)度小于等于接收到的數(shù)據(jù)包的長(zhǎng)度
 480   2                      {
 481   3                  halSpiReadBurstReg(CCxxx0_RXFIFO, rxBuffer, packetLength); //讀出所有接收到的數(shù)據(jù)
 482   3                  *length = packetLength;                             //把接收數(shù)據(jù)長(zhǎng)度的修改為當(dāng)前數(shù)據(jù)的長(zhǎng)度
 483   3              
 484   3                  // Read the 2 appended status bytes (status[0] = RSSI, status[1] = LQI)
 485   3                  halSpiReadBurstReg(CCxxx0_RXFIFO, status, 2);       //讀出CRC校驗(yàn)位
 486   3                  return (status[1] & CRC_OK);                        //如果校驗(yàn)成功返回接收成功
 487   3              }
C51 COMPILER V7.01  CC1100_RX                                                              09/13/2006 17:53:03 PAGE 9   

 488   2                       else 
 489   2                      {
 490   3                  *length = packetLength;
 491   3                  halSpiStrobe(CCxxx0_SFRX);          //清洗接收緩沖區(qū)
 492   3                  return 0;
 493   3              }
 494   2          } 
 495   1              else
 496   1              return 0;
 497   1      }
 498          
 499          /******************************************************************************************
 500          *******************************************************************************************
 501          ************************************中斷服務(wù)程序*********************************************
 502          *******************************************************************************************
 503          ******************************************************************************************/
 504          /*void Timer0ISR(void) interrupt 1
 505          {
 506                  EA = 0;
 507                  TH0+=TIMER0H;
 508                  TL0+=TIMER0L;
 509                  TimerCount++;
 510                  timer[0]++;
 511                  timer[1]++;
 512                  EA = 1;
 513          }
 514          */
 515          
 516          
 517          
 518          /******************************************************************************************
 519          *******************************************************************************************
 520          ******************************************主程序*******************************************
 521          *******************************************************************************************
 522          ******************************************************************************************/
 523          main(void)
 524          {
 525   1              INT8U leng;
 526   1              INT8U arrTx[4];
 527   1              INT8U arrRx[4];
 528   1              CpuInit();
 529   1              POWER_UP_RESET_CC1100();
 530   1              halRfWriteRfSettings();
 531   1              halSpiWriteBurstReg(CCxxx0_PATABLE, PaTabel, 8);
 532   1      //      LED1 = 0;
 533   1              delay(60000);
 534   1      //      LED1 = 1;
 535   1              delay(30000);
 536   1              arrTx[0] = 0xBB;
 537   1              arrTx[1] = 0xAA;
 538   1              arrTx[2] = 0x55;
 539   1              arrTx[3] = 0x09;
 540   1              leng = 3;
 541   1              while(1)
 542   1              {
 543   2      /*              halRfSendPacket(arrTx,4);
 544   2                      LED2 = 0;
 545   2                      delay(10000);
 546   2                      LED2 = 1;
 547   2                      delay(20000);*/
 548   2                      if(halRfReceivePacket(arrRx,&leng))
 549   2                      {
C51 COMPILER V7.01  CC1100_RX                                                              09/13/2006 17:53:03 PAGE 10  

 550   3                      //      LED2 = 0;
 551   3                              delay(10000);
 552   3                      //      LED2 = 1;
 553   3                              halSpiStrobe(CCxxx0_SFRX);
 554   3                              SendCh(arrRx[0]);
 555   3                              SendCh(arrRx[1]);
 556   3                              SendCh(arrRx[2]);
 557   3                              SendCh(arrRx[3]);
 558   3                      }
 559   2              }
 560   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    894    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     47      32
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产91在线看| 国产精品一区二区你懂的| 在线观看欧美日本| 亚洲一区视频在线观看视频| 欧美久久久久免费| 男女激情视频一区| 精品国产在天天线2019| 国产很黄免费观看久久| 成人免费在线播放视频| 欧美中文字幕亚洲一区二区va在线| 亚洲一区视频在线| 日韩午夜在线观看视频| 国产成人丝袜美腿| 一区二区三区在线影院| 欧美一区日韩一区| 国产不卡视频一区| 亚洲成在人线在线播放| 久久色中文字幕| 91免费看`日韩一区二区| 亚洲va欧美va天堂v国产综合| 日韩美女一区二区三区四区| 成人黄色免费短视频| 午夜影院久久久| 久久久99精品免费观看不卡| 色综合久久久久久久久久久| 蜜乳av一区二区三区| 国产精品久久久久9999吃药| 91精品国产综合久久婷婷香蕉| 国产精品 欧美精品| 亚洲影视在线观看| 久久久精品免费观看| 欧美三级电影精品| 国产白丝网站精品污在线入口| 亚洲国产精品久久久久秋霞影院| 欧美va亚洲va| 91麻豆成人久久精品二区三区| 琪琪久久久久日韩精品| 综合色中文字幕| 26uuu欧美日本| 精品视频在线看| 99精品欧美一区二区三区综合在线| 日韩va欧美va亚洲va久久| 国产精品久久久久久久岛一牛影视 | 久久久精品人体av艺术| 欧美伊人久久久久久久久影院 | 亚洲精品自拍动漫在线| 精品国产网站在线观看| 欧美精品1区2区3区| 色综合天天综合给合国产| 国产一区亚洲一区| 五月婷婷欧美视频| 一区二区三区欧美激情| 国产精品久久久久久久久免费丝袜 | 欧美日韩高清在线播放| av动漫一区二区| 国产乱码精品一区二区三区忘忧草| 无码av免费一区二区三区试看| 亚洲欧美偷拍另类a∨色屁股| 精品捆绑美女sm三区| 91精品久久久久久蜜臀| 欧美日韩精品一区视频| 日本精品一级二级| 不卡av在线网| 成人在线一区二区三区| 国产河南妇女毛片精品久久久| 久久99国内精品| 日本sm残虐另类| 日日夜夜免费精品视频| 丝袜亚洲另类丝袜在线| 午夜精品一区在线观看| 亚洲午夜av在线| 亚洲国产成人av好男人在线观看| 亚洲免费av网站| 亚洲欧美偷拍另类a∨色屁股| ●精品国产综合乱码久久久久| 欧美国产一区在线| 国产午夜精品久久久久久久| 久久亚洲精品国产精品紫薇| 久久久精品日韩欧美| 国产欧美在线观看一区| 国产精品入口麻豆原神| 国产精品久久国产精麻豆99网站| 国产精品久久久久影院色老大| 国产精品久久久久久亚洲毛片 | 亚洲精品国产一区二区三区四区在线| 国产日韩欧美一区二区三区乱码| 国产午夜精品一区二区三区视频| 欧美激情一区不卡| 亚洲女与黑人做爰| 亚洲第一久久影院| 免费在线看成人av| 美女久久久精品| 极品美女销魂一区二区三区免费| 国产麻豆成人传媒免费观看| 成人亚洲一区二区一| 91在线视频播放| 欧美性生活影院| 欧美一卡二卡在线| 国产网站一区二区| 亚洲品质自拍视频网站| 一区二区三区免费| 免费成人性网站| 成人自拍视频在线观看| 欧美综合欧美视频| 欧美草草影院在线视频| 日本一区二区三区视频视频| 中文字幕亚洲欧美在线不卡| 亚洲成a人v欧美综合天堂| 奇米精品一区二区三区在线观看一| 精品一区二区三区香蕉蜜桃| 99精品视频在线播放观看| 欧美久久一区二区| 亚洲国产成人私人影院tom| 亚洲午夜私人影院| 极品少妇xxxx精品少妇| 色综合久久88色综合天天 | 久久久精品国产99久久精品芒果| 亚洲欧洲色图综合| 久久国产精品第一页| av激情综合网| 日韩精品一区二区三区在线观看 | 亚洲综合无码一区二区| 激情六月婷婷久久| 欧美性videosxxxxx| 久久精品免视看| 亚洲不卡av一区二区三区| 国产白丝网站精品污在线入口| 欧美日韩一区 二区 三区 久久精品| 26uuu欧美日本| 天堂一区二区在线| 91在线视频18| 国产日韩影视精品| 麻豆91精品视频| 欧美中文字幕一二三区视频| 欧美激情中文字幕一区二区| 麻豆成人在线观看| 欧美色图免费看| 亚洲欧美日韩电影| 国产高清不卡一区二区| 欧美tickling挠脚心丨vk| 亚洲成人资源在线| 色久优优欧美色久优优| 欧美精品一区二区三区视频 | 欧美变态tickle挠乳网站| 亚洲午夜在线视频| 91亚洲国产成人精品一区二区三| 精品国产乱码久久久久久蜜臀| 污片在线观看一区二区| 在线视频一区二区免费| 亚洲欧洲精品天堂一级| 成人免费黄色在线| 国产欧美精品一区| 国产一区二区三区av电影 | 福利91精品一区二区三区| 欧美大片免费久久精品三p| 丝袜亚洲另类欧美| 欧美色窝79yyyycom| 亚洲午夜在线视频| 在线观看成人免费视频| 亚洲一区二区欧美日韩| 在线免费观看成人短视频| 亚洲丝袜制服诱惑| 成人精品免费视频| 中文字幕一区二区三| 99九九99九九九视频精品| 最新国产精品久久精品| 91免费在线播放| 亚洲一区二区在线观看视频 | 日本欧美一区二区三区乱码| 日韩视频在线永久播放| 看国产成人h片视频| 欧美成人a∨高清免费观看| 韩日欧美一区二区三区| 欧美精品一区二区在线观看| 国产一区美女在线| 国产精品视频一二| 99精品久久只有精品| 亚洲精品视频自拍| 欧美日本乱大交xxxxx| 日韩电影免费在线| 欧美精品一区二区三区蜜桃| 国产传媒日韩欧美成人| 国产精品久久久久久久午夜片| 日本久久一区二区三区| 五月天亚洲精品| 精品国产免费一区二区三区香蕉| 美国十次综合导航| 欧美国产一区视频在线观看| 色综合久久久久| 日韩va亚洲va欧美va久久| 久久精品夜夜夜夜久久| 97se亚洲国产综合自在线观| 丝袜美腿一区二区三区| 久久久精品国产99久久精品芒果| 成人app网站| 三级亚洲高清视频| 国产丝袜在线精品| 欧美日韩视频不卡| 国产成人亚洲综合a∨婷婷| 亚洲一区二区影院|