📄 cc1020hs.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 + -