?? radio2.h
字號:
#ifndef RADIO2_H
#define RADIO2_H
#define FWD 0
#define REV 1
#define AUTO 0
#define MANUAL 1
#define FM 0
#define AM 1
#define SEEK 0
#define RECV 1
#define IFC_TIMEOUT 100
typedef enum {
RA_IDEL = 0, //待機
RA_SEEK_STOP,
RA_SEEK_WAIT,
RA_SEEK_FWD,
RA_SEEK_REV,
RA_CHK_BAND,
RA_AMS,
RA_TA_SEEK,
RA_NEXT_FREQ,
RA_CHK_FREQ,
RA_END_UC,
RA_TOUT_AF,
RA_TOUT_TA,
RA_CHK_IFC,
RA_PLL_UNLOCK,
RA_PLL_LOCKED,
} eRaStatus;
typedef struct _in1{
UINT FRQ :16; //16位電臺頻率數值
BIT SNS :1; //SNS:DVS 輸入頻率范圍選擇 01
BIT DVS :1;
BIT CTE :1; //CTE 中頻計數控制 1:START 0:REST 1
BIT XS :1; //XS: 0=4.5M 1=7.2M 0
BIT XSREF :4; //4位參考頻率選擇 0011
}IN1;
typedef struct _in2{
BIT IOC1 :1; //控制管腳IO1的方向,0=輸入,1=輸出 0
BIT IOC2 :1; //控制管腳IO2的方向,0=輸入,1=輸出 0
BIT LOC :1; //IO1 電路修改,IO1用來控制FM LOC//sheldon 07-07-06
BIT IO2 :1; //IO2 本方案沒用 0 (0)
BIT SNC :1; //FM噪音控制 B01 1
BIT FMB :1; //FM-B+ B02 1
BIT STRQ :1; //ST/RQ 5V=搜索 0V=接收 B03 0
BIT AMB :1; //FM-LO/DX AGC B04 1 (B)//電路修改//sheldon 07-07-06
BIT B05 :1; //AM-B+ 0
BIT DOC :3; //設置輸出數據端DO腳的輔助功能設置 1
//010時將指示中頻測量的完成狀況 0
// 0 (2)
BIT UL :2; //鎖相環控制電壓輸出驅動模式設01時 0
//為直接輸出模式(一般采用此種模式)1 UL_55US
BIT DZ :2; //鎖相環死區控制,不是很重要。 0
// 0 (2)
BIT GT :2; //中頻測量時間設置最大64MS最小4MS當GT=00時,
//前兩中等待時間3-4MS后兩中等待時間為7-8MS,
//中頻信號必須在等待時間結束之前輸入!!
BIT TBC :1; //設置為1時使B01口輸出8HZ的基準脈沖,此時B01口將不能作為通用輸出口。
BIT DLC :1; //電荷泵輸出,正常狀態為0,設置為1時拉低電位。
BIT IFS :1; //中頻計數器控制,一般設置為1,主要設置中頻場強(1:40毫伏0:70毫伏)
BIT TEST :3; //測試模式一般全部設置為0
}IN2;
/*
typedef struct _radio{
BYTE region; //地區
BYTE band; //波段
union {
UINT16 freq; //頻率
BYTE bFreq[2];
} mFreq;
BYTE dir; //方向
BYTE step; //步進
BYTE ams; //自動搜索
BYTE mode; //自動手動
BYTE ta_seek; //TA掃描
BYTE af_seek; //AF掃描
BYTE loc; //LOC開關
BYTE smeter; //smeter判斷
void *background;
}RADIO;
*/
typedef struct _cvol{
BIT MUT :1;
BIT LOU :1;
BIT VOL :6;
}CVOL;
typedef struct _tone{
BIT BAS :4;
BIT TRE :4;
}TONE;
typedef struct _equa{
BIT FAD :4;
BIT BAL :4;
}EQUA;
typedef struct _system{
BYTE ssr0; //0x00
BYTE ceqs; //0x01
BYTE lch; //0x02
CVOL vol; //0x03
TONE tone; //0x04
EQUA equa; //0x05
BYTE sth; //0x06
BYTE stm; //0x07
}SYSTEM;
typedef struct _rasr1{
BIT bid :2;
BIT bnd :2;
BIT loc :1;
BIT rev :1;
BIT stmo :1;
BIT smod :1;
}RASR1;
typedef struct _rasr2{
BIT ps :4;
BIT rsdir :1;
BIT risf :1;
BIT riaf :1;
BIT ripf :1;
}RASR2;
typedef struct _radio{
BYTE rasr0; //0x08
RASR1 rasr1; //0x09
RASR2 rasr2; //0x0A
BYTE smet; //0x0B
BYTE rdsr; //0x0C
BYTE regr; //0x0D
char rpsn[9]; //0x0E-0x16
char ptyn[9]; //0x17-0x1f
UINT curfreq; //0x20-0x21
UINT fmpreset[18]; //
UINT ampreset[12]; //
}RADIO;
typedef struct _tv{
UINT tvfreq; //
BYTE tvsr;
BYTE tvps;
BYTE tvs;
}TV;
typedef struct _pubvar{
SYSTEM system;
RADIO radio;
TV tv;
}PUBVAR;
#endif
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -