⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cc1020hs.h

📁 高频通讯CC1020,PIC控制,源代码全
💻 H
字号:
INT8U  Flag1;
INT8U  Flag2;
INT8U  Flag3;
INT8U  Temp1;
INT8U  Temp2;
INT8U  Temp3;
INT8U  Temp4;
INT8U  Temp5;

INT8U  BitCtr;      
INT8U  Txdata;      
INT8U  Txbuf0;
INT8U  Txbuf1;
INT8U  Txbuf2;
INT8U  Txbuf3;
INT8U  Txbuf4;
INT8U  Txbuf5;
INT8U  Txbuf6;
INT8U  Txbuf7;
INT8U  Txbuf8;

INT8U  PreCtr;
INT8U  Rxdata;
INT8U  Rxbuf1;
INT8U  Rxbuf2;
INT8U  Rxbuf3;
INT8U  Rxbuf4;
INT8U  Rxbuf5;
INT8U  Rxbuf6;
INT8U  Rxbuf7;
INT8U  Rxbuf8;

INT16U Tmr1b;
INT16U Tmr1bb;

INT8U  Kbuf;
INT8U  Kctr;
INT8U  FlashCtr;
INT8U  Optbuf;
INT8U  Optctr;

INT8U  TransCtr;
INT8U  TxCtr;
INT8U  AnsCtr;
bit    bbb;

#define b_Khold     (((BITS*)&Flag1)->b0)
#define b_Kvalid    (((BITS*)&Flag1)->b1)
#define b_UnlockAvg (((BITS*)&Flag1)->b2)
#define b_LockAvg   (((BITS*)&Flag1)->b3)
#define b_Mcode     (((BITS*)&Flag1)->b4)
#define b_NRZ       (((BITS*)&Flag1)->b5)
#define b_UART      (((BITS*)&Flag1)->b6)
#define b_Tstbase   (((BITS*)&Flag1)->b7) 

#define b_IsTx      (((BITS*)&Flag2)->b0) 
#define b_TxGo      (((BITS*)&Flag2)->b1) 
#define b_RxGo      (((BITS*)&Flag2)->b2) 
#define b_PreFound  (((BITS*)&Flag2)->b3) 
#define b_IdOk      (((BITS*)&Flag2)->b4) 
#define b_Checksum  (((BITS*)&Flag2)->b5) 
#define b_Answer    (((BITS*)&Flag2)->b6) 
#define b_Txtrue    (((BITS*)&Flag2)->b7) 

#define b_Headov    (((BITS*)&Flag3)->b0) 
#define b_Rxonly    (((BITS*)&Flag3)->b1) 
#define b_Txonly    (((BITS*)&Flag3)->b2) 


#define UI1         0xD3 
#define UI2         0x91 


const unsigned char Digit09[] = {0x88,0x9F,0xC4,0x85,0x93,0xA1,0xA0,0x9D,0x80,0x81};

//#define o_led2  RA5
//#define o_led1  RA4
#define o_pass  RB5

#define o_pale  RA5 //RA3
#define o_pclk  RC3 //RA2
#define i_pdo   RC4 //RA1
#define o_pdi   RC5 //RA1

//#define o_buz   RA0

#define io_data RA0 //RB1
//#define i_clock RB0



void SysInit(void);
void Readkey(void);
void Keyproc(void);
void Transmit(void);
void Dly5(INT8U);    
void Dly1000(INT8U); 


//===========================================================
void  ConfigureCC1020(INT8U Count, INT16U Configuration[]);//
void  WriteToCC1020Register(INT8U addr, INT8U data);       //
void  WriteToCC1020RegisterWord(INT16U addranddata);       //
INT8U ReadFromCC1020Register(INT8U addr);                  //
void  ResetCC1020(void);                                   //
INT8U CalibrateCC1020(INT8U PA_POWER);                     //
INT8U SetupCC1020RX(INT8U RXANALOG, INT8U PA_POWER);       //
INT8U SetupCC1020TX(INT8U TXANALOG, INT8U PA_POWER);       //
void  SetupCC1020PD(void);                                 //
void  WakeUpCC1020ToRX(INT8U RXANALOG);                    //
void  WakeUpCC1020ToTX(INT8U TXANALOG);                    //
void  SetupCC1020All(void);                                //
void  CC1020Init(void);                                    //
//===========================================================

#define LOCK_NOK        0x00
#define LOCK_OK         0x01
#define LOCK_RECAL_OK   0x02
#define CAL_TIMEOUT     106  // 0x7FFE
#define LOCK_TIMEOUT    106  // 0x7FFE
#define RESET_TIMEOUT   106  // 0x7FFE
#define PA_VALUE        0xF0 // PA power setting

#define	RXDL            0x46 // ?????
#define	TXDL            0x46 // ?????

//===========================================================
//= Constants defined for CC1020                            =
//===========================================================
#define CC1020_MAIN            0x00 //主控制:RXTX、F_REG、PD_MODE、FS_PD、XOSC_PD、BIAS_PD、RESET_N。
#define CC1020_INTERFACE       0x01 //接口控制:晶振、DIO、DCLK、DCLK_CS、EXT_PA、EXT_LNA、EXT_PA_POL、EXT_LNA_POL。
#define CC1020_RESET           0x02 //模块复位控制:ADC、AGC、GAUSS、AFC、BITSYNC、SYNTH、SEQ、CAL_LOCK。
#define CC1020_SEQUENCING      0x03 //自动给电顺序控制:SEQ_PSEL、RX_WAIT(PLL锁定到RX给电的时间)、CS_WAIT(RX给电到载波感应的时间)
#define CC1020_FREQ_2A         0x04 
#define CC1020_FREQ_1A         0x05 
#define CC1020_FREQ_0A         0x06
#define CC1020_CLOCK_A         0x07 //时钟发生器控制:REF_DIV、MCLK_DIV1、MCLK_DIV2。
#define CC1020_FREQ_2B         0x08
#define CC1020_FREQ_1B         0x09
#define CC1020_FREQ_0B         0x0A
#define CC1020_CLOCK_B         0x0B //时钟发生器控制:REF_DIV、MCLK_DIV1、MCLK_DIV2。
#define CC1020_VCO             0x0C //VCO电流控制
#define CC1020_MODEM           0x0D //MODEM控制:ADC_DIV、PN9_EN、DATA_FORMAT
#define CC1020_DEVIATION       0x0E //TX调制频偏控制:TX_SHAPING、TXDEV_X(指数)、TXDEV_M(尾数)
#define CC1020_AFC_CONTROL     0x0F //RX自动频率控制:
#define CC1020_FILTER          0x10
#define CC1020_VGA1            0x11 //VGA控制1:CS_SET、CS_RESET、VGA_WAIT、VGA_FREEZE。
#define CC1020_VGA2            0x12 //
#define CC1020_VGA3            0x13
#define CC1020_VGA4            0x14
#define CC1020_LOCK            0x15 //LOCK脚的信号选择
#define CC1020_FRONTEND        0x16
#define CC1020_ANALOG          0x17 //模拟模块控制:BANDSELECT、LO_DC、VGA_BLANKING、PD_LONG、PA_BOOST、DIV_BUFF_CURRENT。
#define CC1020_BUFF_SWING      0x18
#define CC1020_BUFF_CURRENT    0x19
#define CC1020_PLL_BW          0x1A
#define CC1020_CALIBRATE       0x1B
#define CC1020_PA_POWER        0x1C
#define CC1020_MATCH           0x1D
#define CC1020_PHASE_COMP      0x1E
#define CC1020_GAIN_COMP       0x1F
#define CC1020_POWERDOWN       0x20
#define CC1020_TEST1           0x21
#define CC1020_TEST2           0x22
#define CC1020_TEST3           0x23
#define CC1020_TEST4           0x24
#define CC1020_TEST5           0x25
#define CC1020_TEST6           0x26
#define CC1020_TEST7           0x27

#define CC1020_STATUS          0x40
#define CC1020_RESET_DONE      0x41
#define CC1020_RSS             0x42
#define CC1020_AFC             0x43
#define CC1020_GAUSS_FILTER    0x44
#define CC1020_STATUS1         0x45
#define CC1020_STATUS2         0x46
#define CC1020_STATUS3         0x47
#define CC1020_STATUS4         0x48
#define CC1020_STATUS5         0x49
#define CC1020_STATUS6         0x4A
#define CC1020_STATUS7         0x4B



⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -