📄 main.c
字号:
Typ_Bb8 D12;
Typ_Bb8 D20;
#define LOCK_DET_RESET D20.bit.b7 = 1
Typ_Bb8 D21;
#define IF_COUNTER_START D21.bit.b0 = 1 /* counter start/stop */
#define IF_COUNTER_STOP D21.bit.b0 = 0
Typ_Bb8 D22;
#define IO1 D21.bit.b7
#define IO2 D22.bit.b0
#define IO3 D22.bit.b1
#define IO4 D22.bit.b2
/* ****************** */
#define IO5 D22.bit.b3
#define IO6 D22.bit.b4
#define IO7 D22.bit.b5
#define M9 D21.bit.b6
#define M8 D21.bit.b5
#define M7 D21.bit.b4
#if AX6013
#define STEREO_MODE IO3 = 1
#define MONO_MODE IO3 = 0
#define AM_VCC_ON IO1 = 1
#define FM_VCC_ON IO1 = 0
#define LOCAL_ON IO2 = 0
#define LOCAL_OFF IO2 = 1
#define SEEK_ON IO5 = 1
#define SEEK_OFF IO5 = 0
#else
/* ****************************************** */
#define STEREO_MODE IO3 = 0
#define MONO_MODE IO3 = 1
#define AM_VCC_ON IO2 = 1
#define FM_VCC_ON IO2 = 0
#define LOCAL_ON IO4 = 0
#define LOCAL_OFF IO4 = 1
#define SEEK_ON IO5 = 0
#define SEEK_OFF IO5 = 1
#endif
Typ_Bb8 IF_CHECK;
#define OVERFLOW (IF_CHECK.bit.b4)
#define BUSY (IF_CHECK.bit.b5)
/* ****************************************** */
#else
Typ_Bb8 D12;
#define IF_COUNTER_START D12.bit.b2 = 1; /* counter start/stop */
#define IF_COUNTER_STOP D12.bit.b2 = 0;
Typ_Bb8 D20;
#define B04 (D20.bit.b7)
#define B03 (D20.bit.b6)
#define B02 (D20.bit.b5)
#define B01 (D20.bit.b4)
#define IO2 (D20.bit.b3)
#define IO1 (D20.bit.b2)
#define IOC2 (D20.bit.b1)
#define IOC1 (D20.bit.b0)
#define STEREO_MODE B04 = 1
#define MONO_MODE B04 = 0
#define FM_VCC_ON {B02 = 0;B03 = 1; }
#define SEEK_ON {IOC2= 1;IO2 = 0;}
#define SEEK_OFF {IOC2= 1;IO2 = 1;}
#define LOCAL_ON B01 = 0
#define LOCAL_OFF B01 = 1
Typ_Bb8 D21;
#define B05 (D21.bit.b0)
#define AM_VCC_ON {B02= 1;B03 = 0; }
Typ_Bb8 D22;
#endif
Typ_Bb8 g_flag7;
#define Refresh_Lcd (g_flag7.bit.b0)
#define Write_VCD_Buff (g_flag7.bit.b1)
#define PAUSE_STATE (g_flag7.bit.b2)
#define numeric_key_flag (g_flag7.bit.b3)
#define Resume_VCD_Share_Flag (g_flag7.bit.b4)
#define intro_dsp (g_flag7.bit.b5)
#define STANDBY_KEY_ON (g_flag7.bit.b6)
#define FF_KEY_ON (g_flag7.bit.b7)
Typ_Bb8 g_flag8;
#define LoudKey_On (g_flag8.bit.b0)
#define RdsModeSel (g_flag8.bit.b1)
#define FB_KEY_ON (g_flag8.bit.b2)
#define DVD_Eject (g_flag8.bit.b3)
#define DthSwOff (g_flag8.bit.b4)
#define No_Beep (g_flag8.bit.b5)
#define Mute_Cancel (g_flag8.bit.b6)
#define DoubleFreq (g_flag8.bit.b7)
Typ_Bb8 g_flag9;
#define AutoIntroScan (g_flag9.bit.b0)
#define MPEG_EJECT (g_flag9.bit.b1)
#define Clear_Resume_Flag (g_flag9.bit.b2)
#define transmitpaneldet (g_flag9.bit.b3)
#define Sel_Time_Set (g_flag9.bit.b4)
#define PassOrigin (g_flag9.bit.b5)
#define LoudKey_Hit (g_flag9.bit.b6)
#define PanelDetOff (g_flag9.bit.b7)
Typ_Bb8 g_flag10;
#define LcdMode (g_flag10.bit.b0)
#define ReceiveWordCount (g_flag10.bit.b1)
#define RdsModeOnKey (g_flag10.bit.b2)
#define RdsModeHit (g_flag10.bit.b3)
#define SOURCE_KEY_ON (g_flag10.bit.b4)
#define Enable_Aux1 (g_flag10.bit.b5)
#define SendFlagStart (g_flag10.bit.b7)
#define Lcd292 0
#define Lcd285 1
Typ_Bb8 g_flag11;
#define FlashFlag (g_flag11.bit.b0)
#define NO_USE (g_flag11.bit.b1)
#define Id3Mode (g_flag11.bit.b2)
#define Mp3MoveFlag (g_flag11.bit.b3)
#define SlowClkMode (g_flag11.bit.b4)
#define TaModeKey_Hit (g_flag11.bit.b5)
#define TaModeKey_On (g_flag11.bit.b6)
#define RdsIntEnable (g_flag11.bit.b7)
Typ_Bb8 Share_Buff;
#define CHINESE_OSD Share_Buff.bit.b7
#define ENGLISH_OSD Share_Buff.bit.b7
#define CHANNEL_LEFT Share_Buff.bit.b6
#define CHANNEL_STEREO Share_Buff.bit.b5
#define CHANNEL_RIGHT Share_Buff.bit.b4
#define Esp_Mode Share_Buff.bit.b0
#if !PLAY_DVD
#define Id3Mode Share_Buff.bit.b1
#define EnDispChar Share_Buff.bit.b2
#endif
#if USE_BLUETOOTH
Typ_Bb8 g_flag13;
#define DialNumberSend (g_flag13.bit.b0) //发送电话号码标志
#define BlueFistInit (g_flag13.bit.b1) //Blue按键处理标志 1=BLUE KEY 0=remo key
#define SetBlueDisplay (g_flag13.bit.b2) //Blue显示标志
#define Send_dtmf_Hit (g_flag13.bit.b3) //发送DTMF标志
#define EqPairKey_Hit (g_flag13.bit.b4)
#define BlueToothOn (g_flag13.bit.b5) //Blue语音通道标志
#define bBlueToothOn (g_flag13.bit.b6)
#define EnableMoveNumber (g_flag13.bit.b7)
Typ_Bb8 g_flag14;
#define RING_IND_Answe (g_flag14.bit.b0)
#define Number_ease (g_flag14.bit.b1) //数字察除标志
#define BlueToothCallInd (g_flag14.bit.b2)
#define BLUE_link (g_flag14.bit.b3)
#define CALL_HangUp1 (g_flag14.bit.b4) //用于判断MUTE_keyg挂机后收到CALLER_ID_IND
#define CALL_HangUp (g_flag14.bit.b5)
#define Pair_Hit (g_flag14.bit.b6)
#define CALL_HfRepeat (g_flag14.bit.b7)
Typ_Bb8 g_flag15;
#define CLear_BLUE_disply (g_flag15.bit.b1)
#define CLear_BLUE_disply1 (g_flag15.bit.b2)
#endif
#define TRACK_255 Share_Buff.bit.b3
/* *******************electronic volume var ********************************/
unsigned int freq[1];
unsigned char mainvol[1];
#define VOL_Ptr mainvol
unsigned char main_volume_data;
unsigned char bass_volume_data;
unsigned char treble_volume_data;
unsigned char bal_ptr;
unsigned char fad_ptr;
unsigned char fl_volume_data;
unsigned char fr_volume_data;
unsigned char rl_volume_data;
unsigned char rr_volume_data;
unsigned char volume_data;
unsigned char AD_value;
unsigned char temp_data;
unsigned char ii;
unsigned char half_second;
unsigned char vcd_time_counter;
unsigned char vcd_lump_counter;
unsigned char vcd_message_counter;
unsigned char current_track;
unsigned char current_min;
unsigned char current_sec;
unsigned char Track_Buff;
unsigned char Track100_Buff;
unsigned char Minute_Buff;
unsigned char Second_Buff;
unsigned char Title_Buff;
unsigned char Minute100_Buff;
unsigned char SDLEVELMAX;
#if LCD1621
unsigned char Ht1621FlashTimer;
#endif
union unihl RxBuff1;
#define RxBuff_L RxBuff1.hl_c[0] /* D10 */
#define RxBuff_H RxBuff1.hl_c[1] /* D11 */
#define RxBuff RxBuff1.hl_i /* PLL control data */
/* ******************************************************* */
#pragma section area near 0x0100
#define NORMAL_STATE 0
#define MINUTE_STATE 1
#define HOUR_STATE 2
unsigned char RefreshCount;
unsigned char LockTimer;
unsigned int FM_BASE_DATA; /* 1964 1964/2 - 107 = 875 */
unsigned int AM_BASE_DATA; /* 1249x9 - 10710 = 531 */
unsigned int FM_MAX_STEP;
unsigned int AM_MAX_STEP;
unsigned char band_select;
unsigned char Save_Band_Number;
unsigned char tuner_system;
#define EUROPE 0
#define USA1 1
#define USA2 2
#define JAPAN 3
#define RUSSIA 4
#define FM_ONLY 5
#define RUSSIA2 6
Typ_Bb8 tuner_flag;
#define AM1_STATUS (tuner_flag.bit.b0)
#define AM2_STATUS (tuner_flag.bit.b1)
#define FM1_STATUS (tuner_flag.bit.b2)
#define FM2_STATUS (tuner_flag.bit.b3)
#define FM3_STATUS (tuner_flag.bit.b4)
#define SEL_HOUR 0
#define SEL_MIN 1
unsigned char TrayState;
unsigned char BTrayState;
unsigned char DVDTrayState;
unsigned char tray_counter;
#define ResetCount ii
unsigned char volume_ptr;
unsigned char iii;
unsigned char intro_scan_timer,intro_num;
unsigned char hour;
unsigned char minute;
unsigned char second;
unsigned int FM1_STEP;
unsigned int FM2_STEP;
unsigned int FM3_STEP;
unsigned char AM1_STEP;
unsigned char AM2_STEP;
unsigned char AMN1;
unsigned char AMN2;
unsigned char FMN1;
unsigned char FMN2;
unsigned char FMN3;
#define FM_Ram_Ptr fm1_channel_data
unsigned int fm1_channel_data[6]; /* array for store FM channel data */
unsigned int fm2_channel_data[6]; /* array for store FM channel data */
unsigned int fm3_channel_data[6]; /* array for store FM channel data */
#define AM_Ram_Ptr am1_channel_data
unsigned char am1_channel_data[6]; /* array for store AM channel data */
unsigned char am2_channel_data[6]; /* array for store AM channel data */
#if !PLAY_DVD
unsigned char cur_tv_mode;
#endif
unsigned char disc_timer;
unsigned char toc_timer;
unsigned char transmit_data_ptr;
unsigned char Time_Buff[6];
unsigned char StandbyState;
unsigned char play_state;
unsigned char Program_Ptr;
unsigned char Program_counter;
Typ_Bb8 Program_Track;
#define Program_Start Program_Track.bit.b7
Typ_Bb8 TempData;
unsigned char select_mode;
unsigned char select_mode_counter;
unsigned char sel_cur_track;
unsigned char sel_cur_track_counter;
unsigned char data_buff_h_bak;
#define SELECT_MODE_IDLE 0
#define SELECT_PLUS_10 1
#define SELECT_FIRST_BIT 2
#define SELECT_SECOND_BIT 3
#define SELECT_THREE_BIT 4
#define MaxStackBuf 10
unsigned int transmit_data_stack[MaxStackBuf];
unsigned char MechanicType;
unsigned char OPENOK;
unsigned char CLOSEOK;
unsigned char PASSOPEN;
unsigned char FULLOPEN;
#define Komec200 0
#define Komec100 1
#define Xhcdc02 2
#define Xhdvd01 3
unsigned char AutoSdLevel;
#if PT6524
unsigned int control_data;
#else
unsigned char control_data;
#endif
#if PT6524
unsigned char lcd_data;
unsigned char lcdpos;
#endif
#if LC75817
unsigned char lcd_data;
unsigned char lcdpos;
#endif
unsigned char ShadowRam[LCD_MAX_BUF+1];
unsigned char vcd_lcdbuff[LCD_MAX_BUF+1];
unsigned char PlayMode;
unsigned char DiscType;
unsigned char SysIrCode;
#if USE_BLUETOOTH
unsigned char WriteBlueDataBuf[20];
unsigned char ReadBlueId;
unsigned char ReadBlueDataBuf[20];
unsigned char dial[20];
unsigned char blue_disp_buff[14];
unsigned char TelNumPtr;
unsigned char DetectBlueTimer;
unsigned char BlueDialTimer;
unsigned char Bluetest;
unsigned char CancelDialTimer;
unsigned char dial_length;
unsigned char MoveNumberCount;
unsigned char AnswerDial[20];
#endif
#pragma section code n_code near
const unsigned char Password[] =
{
0x10,0x22,0x33,0x48,0x25,0x88,0x48,0x22,0x33,0x48,0x22,0x33,0x48,0x22,0x33,0x48,
};
#if 0
#define TANoTaTpSdLevel 66
const unsigned char SdLevelMax[] =
{
51,56,61,66,71,76,81,86,92,96,102,107,112
};
#endif
#include "LCD.C"
#include "LCDDRV.C"
/* ********************************************************************** */
/* ********************************************************************** */
#if LC75817
const unsigned int LCD_digit_tbl[] = {
'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F',0x00
};
#else
const unsigned int LCD_digit_tbl[] = {
CHAR_0,CHAR_1,CHAR_2,CHAR_3,CHAR_4,CHAR_5,CHAR_6,CHAR_7,CHAR_8,CHAR_9,
CHAR_A, CHAR_B, CHAR_C, CHAR_D, CHAR_E, CHAR_F, 0x00
};
#endif
const unsigned char FM_AM_MSG[] = {
SHOW_FM1,SHOW_FM2,SHOW_FM3,
SHOW_AM1,SHOW_AM2,
};
const unsigned char Volume_Data_Tbl[] = {
0x3f/*-78.00db 0*/,
0x39/*-71.25db 1*/,
0x34/*-65.00db 2*/,
0x31/*-61.25db 3*/,
0x29/*-51.25db 4*/,
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -