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

📄 c1532f_bbk.h

📁 MTK 1389e版 MINI组合音响代码
💻 H
📖 第 1 页 / 共 2 页
字号:

extern  BIT   _fgHybridSACD;
extern  BIT   _fg8CMDisk;
extern  BYTE  data  _bWdCnt;
extern  BYTE xdata  _bMaxSpeed;
extern  BYTE xdata  _bOptimumSpeed;
extern  BYTE xdata  _bDriveSpeed;
extern  BYTE xdata  _bPlayerStatus;

extern  BYTE bdata  _bServoStatus;
extern  BIT  _fgDiscStatus;
extern  BIT  _fgSpinStatus;
extern  BIT  _fgPauseStatus;
extern  BIT  _fgFocusStatus;
extern  BIT  _fgQIDStatus;
extern  BIT  _fgCalStatus;
extern  BIT  _fgSpeedStatus;
extern  BIT  _fgDmonStatus;

extern  BYTE bdata  _bServoFlag1;
extern  BIT  _fgHybridSACD;
extern  BIT  _fg8CMDisk;
extern  BIT  _fgAbort;

extern  strucQCode data  _rQCode;
extern  BYTE  data  _bTarMin;
extern  BYTE  data  _bTarSec;
extern  BYTE  data  _bTarBlk;
extern  BYTE  data  _bAbsMin;
extern  BYTE  data  _bAbsSec;
extern  BYTE  data  _bAbsBlk;

extern  DWRD xdata  _dSectorID;
extern  BIT  _fgAbort;

   #ifdef JITTER_PROTECT  //chu
extern   BYTE xdata  _bJITTERPROTECT;
   #endif



  #endif

 #else    // for DECODER Firmware
// Interface functions
extern  void    SRVInit(void);
extern  void    SRVHandleTimer(void);
extern  void    SRVTrayOut(void);     // [0811 Gary] Tray Function
extern  void    SRVTrayIn(void);
extern  void    SRVTrayStop(void);
extern  void    SRVStartUp(void);
extern  void    SRVStop(void);
extern  void    SRVFree(void);
extern  void    SRVPauseOn(void);
extern  void    SRVPauseOff(void);
extern  void    SRVSetSpeed(BYTE);
extern  void    SRVChangeSpeed(BIT);
extern  void    SRVSeek(BYTE,BYTE,BYTE,BYTE);
extern  void    SRVRoutineWork(void);
extern  void    SRVSetDVDBookType(BYTE);
extern  void    SRVPowerOnCal(void);
extern  BIT     fgSRVAlive(void);
extern  void    SRVDelay10us(void);
extern  void    SRVDelay500us(BYTE);
extern  void    SRVDelay1ms(BYTE);     // [0811 Gary] Tray Function
extern  void    SRVDelay20ms(BYTE);
 #define SRVDelay100ms(bValue)                          \
{                                              \
  SRVDelay20ms(bValue * 5);                    \
}

  #ifdef POWER_MANAGE        // Power Down function
extern  void    SRVPowerDown(BIT);
extern  void    SRVWakeUp(void);
  #endif

  #ifdef SUPPORT_BCA
extern  void    SRVSeekToBCA(BIT, BYTE);
extern  void    SRVLeaveBCA(void);
  #endif

extern  DWRD    dSRVGetVer(void);

// Interface variables
extern  BYTE bdata  _bMediaType;
extern  BIT  _fgDiskIsDVDRW;    // DVD-RW/+RW
extern  BIT  _fgDiskIsDVDMRW;   // DVD-RW
extern  BIT  _fgDiskIsDVDR;
extern  BIT  _fgDiskIsDVD;
extern  BIT  _fgLowReflect;
extern  BIT  _fgDualLayer;
extern  BIT  _fgOppTrack;
extern  BIT  _fgDiskIsDVCD;
extern  BIT  _fgDiskIsCDRW;

extern  BIT   _fgHybridSACD;
extern  BIT   _fg8CMDisk;

extern  BIT   _fgServoBUSY;         // [0807 Gary] Disable long timr VFD Communication
extern  BIT   _fgDiscExist;         // [0725 Gary] Disc is Exist or not and show on OSD
extern  BIT   _fgChipError;         // [0807 Gary] Set as Chip Error after PowerOn Calibration

extern  WORD  xdata  bIDCount1;     // [0616] for robust burning

extern  BYTE  data  _bWdCnt;         //
extern  BYTE xdata  _bMaxSpeed;
extern  BYTE xdata  _bOptimumSpeed;
extern  BYTE xdata  _bDriveSpeed;
extern  BYTE xdata  _bPlayerStatus;

extern  BYTE bdata  _bServoStatus;
extern  BIT  _fgDiscStatus;
extern  BIT  _fgSpinStatus;
extern  BIT  _fgPauseStatus;
extern  BIT  _fgFocusStatus;
extern  BIT  _fgQIDStatus;
extern  BIT  _fgCalStatus;
extern  BIT  _fgSpeedStatus;
extern  BIT  _fgDmonStatus;

extern  strucQCode  data   _rQCode;
extern  BYTE  data  _bTarMin;
extern  BYTE  data  _bTarSec;
extern  BYTE  data  _bTarBlk;
extern  DWRD xdata  _dSectorID;
extern  BIT  _fgAbort;

  #ifdef JITTER_PROTECT  //chu
extern   BYTE xdata  _bJITTERPROTECT;
  #endif




// Register definition
 #define RW_P06         0x06   // Cassette status 0x01: LED ON
 #define RW_POWDN       0x08
 #define RW_CLKCTL      0x09
 #define RW_IPCK        0x0A
 #define RW_DMCLK       0x0B
 #define RW_DEMOCTL     0x35

 #define RW_AUCT        0x2B
 #define RW_AUCT2       0x48
 #define RW_ICEMODE     0x78
 #define RW_VIRAMCTL    0x79
 #define RW_UPCLKCTL    0x7C

extern  void    WriteSerialCmd(BYTE,BYTE);
extern  BYTE    bReadSerialCmd(BYTE);
extern  void    WriteType0Cmd(BYTE,BYTE);    // [0811 Gary] Tray Function

extern  BYTE data   _bTimer0Swich;           // [0811 Gary] Tray Function

 #define SERVO_CHECK_IC_VERSION
  #ifdef SERVO_CHECK_IC_VERSION
extern  BYTE xdata  _bICVersion;             // [Gary 2004/06/11] for IC Version Check to Set ADIN Port
  #endif                                         // Default MT1389D (0x1E), Must change before SRVInit()!!

 #define CIRC_STRATEGY_CHANGE
  #ifdef CIRC_STRATEGY_CHANGE
extern BYTE xdata    _bCIRCA;
  #endif

/********* Only for DC Motor Model use ***********/
extern  BIT         _fgDCMOTORADJ;           // [1201 Gary] New DCMotorCal Flow
extern  int  xdata  _bADINOffset;

// Note: Please reference to DSP_IO.h (in servo)
/*****************************************************************************
     Function : GPIO Macro Setting
  Description : Refresh Output status of MT1389
  *****************************************************************************/
 #define _fgLimit      bSrvReadPin1()
 #define _fgTrayOut    bSrvReadPin2()
 #define _fgTrayIn     bSrvReadPin3()
 #define _fgDiscIn     bSrvReadPin4()  // Slot-in Model // For Test Use
 #define _TSD          bSrvReadPin5()  // SONY Project // For Test Use
//#define _IO0 bSrvReadPin5() // LG OPU-Detection

 #define STBYSetH      vSrvWritePin1(0x01)
 #define STBYSetL      vSrvWritePin1(0x00)
 #define LaserSWSetH   vSrvWritePin2(0x01)
 #define LaserSWSetL   vSrvWritePin2(0x00)
 #define TrCloseSetH   vSrvWritePin3(0x01)
 #define TrCloseSetL   vSrvWritePin3(0x00)
 #define PIO4SetH      vSrvWritePin4(0x01)  // For Debug Use
 #define PIO4SetL      vSrvWritePin4(0x00)
 #define PIO5SetH      vSrvWritePin5(0x01)  // For Debug Use
 #define PIO5SetL      vSrvWritePin5(0x00)

/***************************************************************************
          Macro For Definition of TRAY Action
  ***************************************************************************/
 #define MT_TRPWMLV         0x18
 #define MT_TRPWMCTL        0x19
 #define TRPWMEN            (0x01<<2)

 #define TROPEN3V           (0x01<<0)
 #define TROPEN0V           (0x00<<0)

 #define TRPWMLevel(bLevel)  (WriteType0Cmd(MT_TRPWMLV, bLevel))
 #define TRPWMSetH           (WriteType0Cmd(MT_TRPWMCTL, TRPWMEN+TROPEN3V))  //TROPENPWM = 3.3V
 #define TRPWMSetL           (WriteType0Cmd(MT_TRPWMCTL, TRPWMEN+TROPEN0V))  //TROPENPWM = 0V
 #define TRPWMENLVL          (WriteType0Cmd(MT_TRPWMCTL, 0x00))

/***************************************************************************
      ADIN related setting, NOTE that user only can choose one at one time.
  ***************************************************************************/
 #define ADIN9               (SetADINMON(9))
 #define ADIN8               (SetADINMON(8))
 #define ADIN7               (SetADINMON(7))
 #define ADIN6               (SetADINMON(6))
 #define ADIN5               (SetADINMON(5))
 #define ADIN4               (SetADINMON(4))
 #define ADIN3               (SetADINMON(3))
 #define ADIN2               (SetADINMON(2))
 #define ADIN1               (SetADINMON(1))
 #define ADIN0               (SetADINMON(0))

 #endif
#endif // _H_SRV2DEC_

⌨️ 快捷键说明

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