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

📄 gpio.c

📁 ESS3890+SL原代码(1*16内存)
💻 C
字号:
/* Copyright 1997, ESS Technology, Inc.                                 *//* SCCSID @(#)gpio.c	1.14 03/03/04 *//* * $Log$ */#include "config.h"#include "dsc.h"#include "ioport.h"#include "servo.h"#if (defined CDG || defined CD_TEXT)#include "cdg.h"#include "cd_text.h"#endif#ifdef GDTSERVOint SUBCODE_S0S1_OFFSET = 2;#if (defined CDG || defined CD_TEXT)int cdg_is_defined = 1;void SERVO_read_subcode(void){    unsigned char tmp;    CDG_interrupt_count++;    if (CDG_s0s1_started) {        if(CDG_interrupt_count > (SYMBOLS_NUM-SUBCODE_S0S1_OFFSET))          return;        tmp = Read_Servo_Register(0x82);        if(CDG_interrupt_count <= (SYMBOLS_OFFSET-SUBCODE_S0S1_OFFSET)){            lost = tmp;            return;        }        /*P Q R S T U V W */        if(!cdg_pause)CDG_fifo_p[CDG_wrptr++] = tmp;    }}#elseint cdg_is_defined = 0;void SERVO_read_subcode(){};void CDG_S0S1_isr(){};#endif#endif#if defined(SERVO) && defined(CXDSERVO)void Clear_SERVO_MUTE(){   CLEAR_SERVO_MUTE;}void Set_SERVO_MUTE(){   SET_SERVO_MUTE;}void Clear_SERVO_CLOCK(){   CLEAR_SERVO_CLOCK;}void Set_SERVO_CLOCK(){   SET_SERVO_CLOCK;}void Clear_SERVO_DATA(){  CLEAR_SERVO_DATA;}void Set_SERVO_DATA(){  SET_SERVO_DATA;}void Clear_SERVO_FWD(){  CLEAR_SERVO_FWD;}void Set_SERVO_FWD(){   SET_SERVO_FWD;}void Clear_SERVO_LDON(){   CLEAR_SERVO_LDON;}void Set_SERVO_LDON(){   SET_SERVO_LDON;}void Clear_SERVO_AGC(){   CLEAR_SERVO_AGC;}void Set_SERVO_AGC(){   SET_SERVO_AGC;}void Clear_SERVO_REV(){   CLEAR_SERVO_REV;}void Set_SERVO_REV(){   SET_SERVO_REV;}void Clear_SERVO_XLAT(){   CLEAR_SERVO_XLAT;}void Set_SERVO_XLAT(){   SET_SERVO_XLAT;}void Clear_SERVO_XRST(){   CLEAR_SERVO_XRST;}void Set_SERVO_XRST(){   SET_SERVO_XRST;}void Clear_SERVO_SQCK(){   CLEAR_SERVO_SQCK;}void Set_SERVO_SQCK(){   SET_SERVO_SQCK;}#ifndef VCDLCvoid Clear_SERVO_X1X2(){   CLEAR_SERVO_X1X2;}void Set_SERVO_X1X2(){   SET_SERVO_X1X2;}#endifvoid Clear_SERVO_SCLK(){   CLEAR_SERVO_SCLK;}void Set_SERVO_SCLK(){   SET_SERVO_SCLK;}void Servo_INPUT_OPEN(){   SERVO_INPUT_OPEN;}unsigned int Servo_OPEN_HIGH(){   return (SERVO_OPEN_HIGH);}unsigned int Servo_OPEN_LOW(){  return (SERVO_OPEN_LOW);}void Servo_INPUT_CLOSE(){   SERVO_INPUT_CLOSE;}unsigned int Servo_CLOSE_HIGH(){  return (SERVO_CLOSE_HIGH);}unsigned int Servo_CLOSE_LOW(){   return (SERVO_CLOSE_LOW) ;}void Servo_INPUT_C2PO(){#ifdef DSC_ENABLE_C2PO   SERVO_INPUT_C2PO;#endif}unsigned int Servo_C2PO_HIGH(){#ifdef DSC_ENABLE_C2PO   return (SERVO_C2PO_HIGH);#endif}unsigned int Servo_C2PO_LOW(){#ifdef DSC_ENABLE_C2PO   return (SERVO_C2PO_LOW) ;#endif}void Servo_INPUT_SENS(){   SERVO_INPUT_SENS;}unsigned int Servo_SENS_HIGH(){   return (SERVO_SENS_HIGH) ;}unsigned int Servo_SENS_LOW(){   return (SERVO_SENS_LOW) ;}void Servo_INPUT_FOK(){   SERVO_INPUT_FOK;}unsigned int Servo_FOK_HIGH(){   return (SERVO_FOK_HIGH) ;}unsigned int Servo_FOK_LOW(){   return (SERVO_FOK_LOW) ;}void Servo_INPUT_GFS(){   SERVO_INPUT_GFS;}unsigned int Servo_GFS_HIGH(){   return (SERVO_GFS_HIGH) ;}unsigned int Servo_GFS_LOW(){   return (SERVO_GFS_LOW) ;}void Servo_INPUT_SQSO(){   SERVO_INPUT_SQSO;}unsigned int Servo_SQSO_HIGH(){   return (SERVO_SQSO_HIGH) ;}unsigned int Servo_SQSO_LOW(){   return (SERVO_SQSO_LOW) ;}#endif#if (defined (SERVO) && defined (MSERVO) )void Set_SERVO_RST(){    SET_SERVO_RST;}void Clear_SERVO_RST(){    CLEAR_SERVO_RST;}void Set_SERVO_MCLK(){     SET_SERVO_MCLK;}void Clear_SERVO_MCLK(){     CLEAR_SERVO_MCLK;}void Set_SERVO_MDATA(){     SET_SERVO_MDATA;}void Clear_SERVO_MDATA(){     CLEAR_SERVO_MDATA;}void Set_SERVO_MLD(){     SET_SERVO_MLD;}void Clear_SERVO_MLD(){     CLEAR_SERVO_MLD;}void Set_SERVO_FWD(){    SET_SERVO_FWD;}void Clear_SERVO_FWD(){    CLEAR_SERVO_FWD;}void Set_SERVO_REV(){    SET_SERVO_REV;}void Clear_SERVO_REV(){    CLEAR_SERVO_REV;}void Servo_INPUT_LIMIT(){    SERVO_INPUT_LIMIT;}unsigned int Servo_LIMIT_HIGH(){    return (SERVO_LIMIT_HIGH);}unsigned int Servo_LIMIT_LOW(){    return (SERVO_LIMIT_LOW);}void Servo_INPUT_STAT(){    SERVO_INPUT_STAT;}unsigned int Servo_STAT_HIGH(){    return (SERVO_STAT_HIGH);}unsigned int Servo_STAT_LOW(){    return (SERVO_STAT_LOW);}void Servo_INPUT_C2PO(){    SERVO_INPUT_C2PO;}unsigned int Servo_C2PO_HIGH(){    return (SERVO_C2PO_HIGH);}unsigned int Servo_C2PO_LOW(){    return (SERVO_C2PO_LOW);}void Servo_INPUT_CLOSE(){    SERVO_INPUT_CLOSE;}unsigned int Servo_CLOSE_HIGH(){    return (SERVO_CLOSE_HIGH);}unsigned int Servo_CLOSE_LOW(){    return (SERVO_CLOSE_LOW);}void Servo_INPUT_OPEN(){    SERVO_INPUT_OPEN;}unsigned int Servo_OPEN_HIGH(){    return (SERVO_OPEN_HIGH);}unsigned int Servo_OPEN_LOW(){    return (SERVO_OPEN_LOW);}#endif#ifdef BD_PHILIPSvoid Set_SERVO_SDAC(){    SET_SERVO_SDAC;}void Set_SERVO_SCL(){    SET_SERVO_SCL;}void Set_SERVO_LS(){    SET_SERVO_LS;}void Set_SERVO_XRST(){    SET_SERVO_XRST;}void Clear_SERVO_SDAC(){    CLEAR_SERVO_SDAC;}void Clear_SERVO_SCL(){    CLEAR_SERVO_SCL;}void Clear_SERVO_LS(){    CLEAR_SERVO_LS;}void Clear_SERVO_XRST(){    CLEAR_SERVO_XRST;}unsigned int Servo_SDAC_HIGH(){    return (SERVO_SDAC_HIGH);}unsigned int Servo_SDAQS_HIGH(){    return (SERVO_SDAQS_HIGH);}unsigned int Servo_SDAC_LOW(){    return (SERVO_SDAC_LOW);}unsigned int Servo_SDAQS_LOW(){    return (SERVO_SDAQS_LOW);}void Servo_INPUT_SDAC(){    SERVO_INPUT_SDAC;}void Servo_INPUT_SDAQS(){    SERVO_INPUT_SDAQS;}void Servo_INPUT_OPEN(){    SERVO_INPUT_OPEN;}void Servo_INPUT_CLOSE(){    SERVO_INPUT_CLOSE;}void Reset_CD_LOW(){    RESET_CD_LOW;}void Reset_CD_HIGH(){    RESET_CD_HIGH;} #endif#if (defined TCSERVO || defined GDTSERVO)void Servo_INIT_S0S1(int on, int edge, int count){    DSC_INIT_S0S1(1, DSC_RISING_EDGE, 80);}void Tristate_CLOSE_SW(){    TRISTATE_CLOSE_SW;}unsigned int Close_SW_HIGH(){    return (CLOSE_SW_HIGH);}unsigned int Close_SW_LOW(){    return (CLOSE_SW_LOW);}void Tristate_OPEN_SW(){    TRISTATE_OPEN_SW;}unsigned int Open_SW_HIGH(){    return (OPEN_SW_HIGH);}unsigned int Open_SW_LOW(){    return (OPEN_SW_LOW);}void Set_MOTOR_REV(){    SET_MOTOR_REV;}void Clear_MOTOR_REV(){    CLEAR_MOTOR_REV;}void Set_MOTOR_FWD(){    SET_MOTOR_FWD;}void Clear_MOTOR_FWD(){    CLEAR_MOTOR_FWD;}void Tristate_LIMIT_SW(){    TRISTATE_LIMIT_SW;}unsigned int Limit_SW_HIGH(){    return (LIMIT_SW_HIGH);}unsigned int Limit_SW_LOW(){    return (LIMIT_SW_LOW);}void Set_RESET_TC(){    SET_RESET_TC;}void Clear_RESET_TC(){    CLEAR_RESET_TC;}#ifdef TCSERVOvoid Set_BCK(){    SET_BCK;}void Clear_BCK(){    CLEAR_BCK;}void Set_CCE(){    SET_CCE;}void Clear_CCE(){    CLEAR_CCE;}#endif#endif /*TCSERVO || GDTSERVO*/#ifdef SAM_SRVvoid Set_SERVO_RST(){    SET_SERVO_RST;}void Clear_SERVO_RST(){    CLEAR_SERVO_RST;}void Set_SERVO_MCLK(){     SET_SERVO_MCLK;}void Clear_SERVO_MCLK(){     CLEAR_SERVO_MCLK;}void Set_SERVO_MDATA(){     SET_SERVO_MDATA;}void Clear_SERVO_MDATA(){     CLEAR_SERVO_MDATA;}void Set_SERVO_MLD(){     SET_SERVO_MLD;}void Clear_SERVO_MLD(){     CLEAR_SERVO_MLD;}void Set_SERVO_FWD(){    SET_SERVO_FWD;}void Clear_SERVO_FWD(){    CLEAR_SERVO_FWD;}void Set_SERVO_REV(){    SET_SERVO_REV;}void Clear_SERVO_REV(){    CLEAR_SERVO_REV;}void Servo_INPUT_LIMIT(){    SERVO_INPUT_LIMIT;}unsigned int Servo_LIMIT_HIGH(){    return (SERVO_LIMIT_HIGH);}unsigned int Servo_LIMIT_LOW(){    return (SERVO_LIMIT_LOW);}void Servo_INPUT_ISTAT2(){    SERVO_INPUT_ISTAT2;}unsigned int Servo_ISTAT2_HIGH(){    return (SERVO_ISTAT2_HIGH);}unsigned int Servo_ISTAT2_LOW(){    return (SERVO_ISTAT2_LOW);}void Servo_INPUT_C2PO(){    SERVO_INPUT_C2PO;}void Servo_INPUT_CLOSE(){    SERVO_INPUT_CLOSE;}unsigned int Servo_CLOSE_HIGH(){    return (SERVO_CLOSE_HIGH);}unsigned int Servo_CLOSE_LOW(){    return (SERVO_CLOSE_LOW);}void Servo_INPUT_OPEN(){    SERVO_INPUT_OPEN;}unsigned int Servo_OPEN_HIGH(){    return (SERVO_OPEN_HIGH);}unsigned int Servo_OPEN_LOW(){    return (SERVO_OPEN_LOW);}void Servo_INPUT_ISTAT1(){    SERVO_INPUT_ISTAT1;}unsigned int Servo_ISTAT1_HIGH(){    return (SERVO_ISTAT1_HIGH);}unsigned int Servo_ISTAT1_LOW(){    return (SERVO_ISTAT1_LOW);}void Servo_INPUT_GFS(){    SERVO_INPUT_GFS;}unsigned int Servo_GFS_HIGH(){    return (SERVO_GFS_HIGH);}unsigned int Servo_GFS_LOW(){    return (SERVO_GFS_LOW);}void Servo_INPUT_SQDT(){    SERVO_INPUT_SQDT;}void Servo_INPUT_ISCOR(){    SERVO_INPUT_ISCOR;}#endif /* SAM_SRV */#ifdef ESS3721void Set_ess3721_drv(){    SET_CTSERVO_DRV_ON;}void Clear_ess3721_drv(){    CLEAR_CTSERVO_DRV_ON;}void Set_ess3721_XCM(){    SET_CTSERVO_XCM;}void Set_servo_mirror(){    SET_SERVO_MIRROR;}int Servo_mirror_high(){    return(SERVO_MIRROR_HIGH);}int Servo_mirror_low(){    return(SERVO_MIRROR_LOW);}void Clear_ess3721_XCM(){    CLEAR_CTSERVO_XCM;}void Set_ess3721_XCE(){    SET_CTSERVO_XCE;}void Clear_ess3721_XCE(){    CLEAR_CTSERVO_XCE;}void Set_ess3721_rd(){    SET_CTSERVO_RD;}void Clear_ess3721_rd(){    CLEAR_CTSERVO_RD;}void Set_ess3721_wr(){    SET_CTSERVO_WR;}void Clear_ess3721_wr(){    CLEAR_CTSERVO_WR;}void Set_ess3721_ad0(){    SET_CTSERVO_AD0;}void Clear_ess3721_ad0(){    CLEAR_CTSERVO_AD0;}void Set_ess3721_ad1(){    SET_CTSERVO_AD1;}void Clear_ess3721_ad1(){    CLEAR_CTSERVO_AD1;}void Set_ess3721_ad2(){    SET_CTSERVO_AD2;}void Clear_ess3721_ad2(){    CLEAR_CTSERVO_AD2;}void Set_ess3721_ad3(){    SET_CTSERVO_AD3;}void Clear_ess3721_ad3(){    CLEAR_CTSERVO_AD3;}void TRI_ess3721_AD0(){    TRI_TSERVO_AD0;}void TRI_ess3721_AD1(){    TRI_TSERVO_AD1;}void TRI_ess3721_AD2(){    TRI_TSERVO_AD2;}void TRI_ess3721_AD3(){    TRI_TSERVO_AD3;}int ess3721_ad0_HIGH(){    return(CTSERVO_AD0_HIGH);}int ess3721_ad1_HIGH(){    return(CTSERVO_AD1_HIGH);}int ess3721_ad2_HIGH(){    return(CTSERVO_AD2_HIGH);}int ess3721_ad3_HIGH(){    return(CTSERVO_AD3_HIGH);}unsigned int Servo_sled_LOW(){    return(AUX4_LOW);}#endif /* ESS3721 */#ifdef SILAN_SERVOvoid Clear_SERVO_XRST(){   CLEAR_SERVO_XRST;}void Set_SERVO_XRST(){   SET_SERVO_XRST;}void Clear_SERVO_RD(){   CLEAR_SERVO_RD;}void Set_SERVO_RD(){   SET_SERVO_RD;}void Clear_SERVO_WR(){  CLEAR_SERVO_WR;}void Set_SERVO_WR(){  SET_SERVO_WR;}void Clear_SERVO_FWD(){  CLEAR_SERVO_FWD;}void Set_SERVO_FWD(){   SET_SERVO_FWD;}void Clear_SERVO_REV(){   CLEAR_SERVO_REV;}void Set_SERVO_REV(){   SET_SERVO_REV;}void Servo_INPUT_ACK(){   SERVO_INPUT_ACK;}unsigned int Servo_ACK_HIGH(){  return (SERVO_ACK_HIGH);}unsigned int Servo_ACK_LOW(){   return (SERVO_ACK_LOW) ;}void Servo_INPUT_C2PO(){#ifdef DSC_ENABLE_C2PO   SERVO_INPUT_C2PO;#endif}unsigned int Servo_C2PO_HIGH(){#ifdef DSC_ENABLE_C2PO   return (SERVO_C2PO_HIGH);#endif}unsigned int Servo_C2PO_LOW(){#ifdef DSC_ENABLE_C2PO   return (SERVO_C2PO_LOW) ;#endif}#endif

⌨️ 快捷键说明

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