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

📄 cxd3068.h

📁 代码有点长,需细心阅读,仅供影音视听类产品的开发人员参考
💻 H
📖 第 1 页 / 共 2 页
字号:
    #ifdef PUH_KSM900
        #define     SERVO_FPS                   0x40    // +6dB
        #define     SERVO_TPS                   0x20    // +12dB
    #elif defined(PUH_KSM1000)

    #endif
#elif defined(CXA_2647)
    #define     SERVO_FPS                   0x40    // +6dB
    #define     SERVO_TPS                   0x00    // +0dB
#elif defined(SUPPORT_CAR)
    #define     SERVO_FPS                   0x80    // +12dB
    #define     SERVO_TPS                   0x10    // +6dB
#elif defined(PUH_SANYO)
    #define     SERVO_FPS                   0x00    // +0dB
    #define     SERVO_TPS                   0x10    // +6dB
    #define     SERVO_TIO_HIGH      GPIO_O_SET(40, 1)
    #define     SERVO_TIO_LOW       GPIO_O_SET(40, 0)
#else
    #define     SERVO_FPS                   0x00    // +0dB
    #define     SERVO_TPS                   0x00    // +0dB
    #define     SERVO_TIO_HIGH      GPIO_O_SET(40, 1)
    #define     SERVO_TIO_LOW       GPIO_O_SET(40, 0)
#endif
#define          SERVO_GOTO_READY         ((servo.status & 0x97)==0x17)
#define          SERVO_RESET_STATUS_OK    (servo.status&(1<<0))
#define          SERVO_FOK_STATUS_OK      (servo.status&(1<<1))
#define          SERVO_GFS_STATUS_OK      (servo.status&(1<<2))
#define          SERVO_TOC_STATUS_OK      (servo.status&(1<<3))
#define          SERVO_CLOSE_OK           (servo.status&(1<<4))
#define          SERVO_OPEN_OK            (servo.status&(1<<5))
#define          SERVO_PAUSE_OK           (servo.status&(1<<6))
#define          SERVO_STOPED_OK          (servo.status&(1<<7))

#define          SERVO_RESET_SET          (servo.status|=(1<<0))
#define          SERVO_FOK_SET            (servo.status|=(1<<1))
#define          SERVO_GFS_SET            (servo.status|=(1<<2))
#define          SERVO_TOC_SET            (servo.status|=(1<<3));   //printf("toc set\n");
#define          SERVO_CLOSE_SET          (servo.status|=(1<<4));   //printf("close set\n")
#define          SERVO_OPEN_SET           (servo.status|=(1<<5))
#define          SERVO_PAUSE_SET          (servo.status|=(1<<6))
#define          SERVO_STOPED_SET         (servo.status|=(1<<7));   //printf("stop set\n")

#define          SERVO_RESET_CLEAR           (servo.status&=(~(1<<0)))
#define          SERVO_FOK_CLEAR             (servo.status&=(~(1<<1)))
#define          SERVO_GFS_CLEAR             (servo.status&=(~(1<<2)))
#define          SERVO_TOC_CLEAR             (servo.status&=(~(1<<3))); // printf("=====toc slear\n");
#define          SERVO_CLOSE_CLEAR           (servo.status&=(~(1<<4))); //printf("close clear\n")
#define          SERVO_OPEN_CLEAR            (servo.status&=(~(1<<5)))
#define          SERVO_PAUSE_CLEAR           (servo.status&=(~(1<<6)))
#define          SERVO_STOPED_CLEAR          (servo.status&=(~(1<<7))); //printf("stop clear\n")


#define          SESSION_B0_FOUND           (servo.status_1&(1<<0))
#define          LAST_SESSION_FOUND         (servo.status_1&(1<<1))
#define          MULTI_SESSION_DISC         (servo.status_1&(1<<2))
#define          SERVO_SPINDLE_BRAKE        (servo.status_1&(1<<3))
#define          B0_CHECKED                 (servo.status_1&(1<<4))
#define          GOTO_INNER_DIRECT          (servo.status_1&(1<<5))
#define          PLAY_SPEED_2X              (servo.status_1&(1<<6))
#define          PUH_KICK                   (servo.status_1&(1<<7))

#define          SESSION_B0_FOUND_SET       (servo.status_1|=(1<<0))
#define          LAST_SESSION_FOUND_SET     (servo.status_1|=(1<<1))
#define          MULTI_SESSION_DISC_SET     (servo.status_1|=(1<<2))
#define         SERVO_SPINDLE_BRAKE_SET     (servo.status_1|=(1<<3))    // Disc Exist
#define          B0_CHECKED_SET             (servo.status_1|=(1<<4))
#define          GOTO_INNER_DIRECT_SET      (servo.status_1|=(1<<5))
#define          PLAY_SPEED_2X_SET          (servo.status_1|=(1<<6))
#define          PUH_KICK_SET               (servo.status_1|=(1<<7))

#define          SESSION_B0_FOUND_CLR       (servo.status_1&=(~(1<<0)))
#define          LAST_SESSION_FOUND_CLR     (servo.status_1&=(~(1<<1)))
#define          MULTI_SESSION_DISC_CLR     (servo.status_1&=(~(1<<2)))
#define         SERVO_SPINDLE_BRAKE_CLR     (servo.status_1&=(~(1<<3))) // No Disc Detect
#define          B0_CHECKED_CLR             (servo.status_1&=(~(1<<4)))
#define          GOTO_INNER_DIRECT_CLR      (servo.status_1&=(~(1<<5)))
#define          PLAY_SPEED_2X_CLR          (servo.status_1&=(~(1<<6)))
#define          PUH_KICK_CLR               (servo.status_1&=(~(1<<7)))


//=========================================for close shutter time start  ===========
#define CLOSE_SHUTTER_TIME              320 // 260 ms

//=========================================for close shutter time start  ===========
#define         TRAY_IN_ENSURE_TIC    20  // Positive Value and Max. = 255
// Increase this value to make sure Tray closed exactly when system power On.
//=========================================for close shutter time end  ===========

#define          SERVO_TIME_2MS        2
#define          SERVO_TIME_4MS        4
#define          SERVO_TIME_6MS        6
#define          SERVO_TIME_8MS        8
#define          SERVO_TIME_10MS      10
#define          SERVO_TIME_20MS      20
#define          SERVO_TIME_30MS      30
#define          SERVO_TIME_40MS      40
#define          SERVO_TIME_50MS      50
#define          SERVO_TIME_60MS      60
#define          SERVO_TIME_70MS      70
#define          SERVO_TIME_80MS      80
#define          SERVO_TIME_90MS      90
#define          SERVO_TIME_100MS    100
#define          SERVO_TIME_200MS    200
#define          SERVO_TIME_300MS    300
#define          SERVO_TIME_400MS    400
#define          SERVO_TIME_500MS    500
#define          SERVO_TIME_600MS    600
#define          SERVO_TIME_700MS    700
#define          SERVO_TIME_800MS    800
#define          SERVO_TIME_900MS    900
#define          SERVO_TIME_1S      1000
#define          SERVO_TIME_2S      2000
#define          SERVO_TIME_3S      3000
#define          SERVO_TIME_4S      4000
#define          SERVO_TIME_5S      5000
#define          SERVO_TIME_6S      6000
#define          SERVO_TIME_7S      7000
#define          SERVO_TIME_8S      8000
#define          SERVO_TIME_9S      9000

#define          NORMAL_DISC        0
#define          CDR_DISC           1
#define          DVCD_DISC          2
#define          CDRW_DISC          3

#define         DEFAULT_MEDIA       0
#define         DVCD_MEDIA          1

//#define          SERVO_QCODE_READY (regs0->gpio_qproc_func & 0x0100)
//#define          SERVO_VFD_CFG     (regs0->vfd_cfg)

#define          PP0 15624          //51  //15624.50893
#define          PP1 5668               //56.68261
//#define          PP2 759824183   //75982.41826
#define          PP2 498520646
//#define          SERVO_PIO_OUT     (regs0->gpio_out[1])
//#define          SERVO_PIO_IN      (regs0->gpio_in[1])
//#define          SERVO_CFG         (regs0->gpio_oe[1])

//#ifdef  JINZH_VCD
//#define          SERVO_OPEN        (1<<0)
//#define          SERVO_CLOSE       (1<<0)     //6 for c1.2
//#define          SERVO_MIC_OK      (1<<0)     //9 for v1.2
//#define          SERVO_RESET       (1<<7)
//#define          SERVO_DDAT        (1<<8)
//#define          SERVO_XLAT        (1<<9)
//#define          SERVO_MCLK        (1<<10)
//#define          SERVO_MIC_MUTE    (1<<0)
//#define          SERVO_SENSE       (1<<11)
//#define          SERVO_SCLK        (1<<12)
//#define          SERVO_GFS         (1<<0)
//#define          SERVO_AGCC        (1<<0)
//#define          SERVO_CLOPSW      (1<<0)
//#define          SERVO_LDON        (1<<13)
//#define          SERVO_EPP         (1<<0)

//#define          SERVO_SENSE_TEST          (SERVO_PIO_IN & SERVO_SENSE)
//#define          SERVO_GFS_TEST            (SERVO_PIO_IN & SERVO_GFS)
//#define          SERVO_CLOPSW_TEST         (SERVO_PIO_IN & SERVO_CLOPSW)
//#define          SERVO_XRES_LOW            (SERVO_PIO_OUT &= (~SERVO_RESET)) //printf("=====reset low\n")
//#define          SERVO_XRES_HIGH           (SERVO_PIO_OUT |= (SERVO_RESET))  //printf("=====reset high\n")
//#define          SERVO_OPEN_LOW            (SERVO_PIO_OUT &= (~SERVO_OPEN))  //printf("=====open low\n")
//#define          SERVO_OPEN_HIGH           (SERVO_PIO_OUT |= (SERVO_OPEN))   //printf("=====open high\n")  
//#define          SERVO_CLOSE_LOW           (SERVO_PIO_OUT &= (~SERVO_CLOSE)) //printf("=======close low========\n")
//#define          SERVO_CLOSE_HIGH          (SERVO_PIO_OUT |= (SERVO_CLOSE))  //printf("=====close high\n")
//#define          SERVO_MCLK_LOW            (SERVO_PIO_OUT &= (~SERVO_MCLK))
//#define          SERVO_MCLK_HIGH           (SERVO_PIO_OUT |= (SERVO_MCLK))
//#define          SERVO_DDAT_LOW            (SERVO_PIO_OUT &= (~SERVO_DDAT))
//#define          SERVO_DDAT_HIGH           (SERVO_PIO_OUT |= (SERVO_DDAT))
//#define          SERVO_XLAT_LOW            (SERVO_PIO_OUT &= (~SERVO_XLAT))
//#define          SERVO_XLAT_HIGH           (SERVO_PIO_OUT |= (SERVO_XLAT))
//#define          SERVO_SCLK_LOW            (SERVO_PIO_OUT &= (~SERVO_SCLK))
//#define          SERVO_SCLK_HIGH           (SERVO_PIO_OUT |= (SERVO_SCLK))
//#define          SERVO_AGCC_CLR            (SERVO_PIO_OUT &= (~SERVO_AGCC))
//#define          SERVO_AGCC_SET            (SERVO_PIO_OUT |= (SERVO_AGCC))
//#define          SERVO_LDON_SET            (SERVO_PIO_OUT &= (~SERVO_LDON)) //printf("=====LD on\n")
//#define          SERVO_LDON_CLR            (SERVO_PIO_OUT |= (SERVO_LDON))  //printf("=====LD off\n")
//#define          SERVO_SCLK_CLR            (SERVO_PIO_OUT &= (~SERVO_SCLK)) //printf("=====SCLK low\n")
//#define          SERVO_SCLK_SET            (SERVO_PIO_OUT |= (SERVO_SCLK))  //printf("=====SCLK high\n")
//#define          SERVO_QCODE_READY         (regs0->iop_data[5]&0x0400)
//#define          SERVO_QCODE_CLR           (regs0->iop_data[5]&=(~(0x0400)))

//#else
//#define          SERVO_OPEN        (1<<0)
//#define          SERVO_CLOSE       (1<<1)      //6 for c1.2
//#define          SERVO_OPSW        (1<<12)     //9 for v1.2
//#define          SERVO_RESET       (1<<3)
//#define          SERVO_MIC_MUTE    (1<<4)
//#define          SERVO_SENSE       (1<<6)
//#define          SERVO_SCLK        (1<<7)
//#define          SERVO_GFS         (1<<8)
//#define          SERVO_MIC_OK      (1<<9)
//#define          SERVO_CLSW        (1<<12)
//#define          SERVO_LDON        (1<<13)
//#define          SERVO_EPP         (1<<14)

#ifndef EMU_DEMO_BOARD
#define          SERVO_RESET        20
#define          SERVO_LDON         12
#define          SERVO_MCLK         15
#define          SERVO_DDAT         17
#define          SERVO_XLAT         16
#define          SERVO_SCLK         41  //8 Jerry 05/28
//#define          SERVO_AGCC         7
#define          SERVO_OPEN         18
#define          SERVO_CLOSE        19
#define          SERVO_CLOPSW       10
#define          SERVO_SENSE        14
#define          SERVO_SCOR         13
#ifdef SUPPORT_8Mx1_SDRAM  // FOr BBK Discman Solution
    #define          SERVO_SQSO         2
#else
    #define          SERVO_SQSO         6   //2002/7/24 09:50

⌨️ 快捷键说明

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