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

📄 uart.c

📁 Discription: This multi-master driver provides the software interface to the I2C Bus hardware of th
💻 C
📖 第 1 页 / 共 4 页
字号:
    if(temp & (((unsigned long) 1) << e_WarnCardV5High))    sprintf(TxBuffer+13,ALARMF);
    else sprintf(TxBuffer+13,ALARMT);
    TxBuffer[18]=13;TxBuffer[19]=10;TxBuffer[20]=0;uart_SendLine();
}
/*void CrossM(void)
{
    sprintf(TxBuffer,"\n        A> Inquiry Unit cross-connect Status\n\0");uart_SendLine();
    sprintf(TxBuffer,"        B> Set Unit1 Cross-connect\n\0");uart_SendLine();
    sprintf(TxBuffer,"        C> Set Unit2 Cross-connect\n\0");uart_SendLine();
    sprintf(TxBuffer,"        D> Set Unit3 Cross-connect\n\0");uart_SendLine();
    sprintf(TxBuffer,"        E> Set Unit4 Cross-connect\n\0");uart_SendLine();
    sprintf(TxBuffer,"Please input your choice<A-D,X,Z>:\0");uart_SendLine();
}

void OCProtectM(void)
{
    sprintf(TxBuffer,"\n        A> Inquiry Client Protect Status\n\0");uart_SendLine();
    sprintf(TxBuffer,"        B> Set Client 1 Protect \n\0");uart_SendLine();
    sprintf(TxBuffer,"        C> Set Client 2 Protect \n\0");uart_SendLine();
    sprintf(TxBuffer,"Please input your choice<A-B,X,Z>:\0");uart_SendLine();
} */
void UnitM(void)
{
    /*WepromCom(14,"        A> SFP Plugged\r\n");
    WepromCom(15,"        B> Protocol Support\r\n");
    WepromCom(16,"        C> CDR Information\r\n");
    WepromCom(17,"        D> SFP Information\r\n");
    WepromCom(18,"        E> Operation Mode\r\n");
    WepromCom(19,"        F> Client/Line Config\r\n");
    WepromCom(20,"        G> Boot Mode\r\n");
    WepromCom(21,"        H> SFP Tx Enable/Disable\r\n");
    WepromCom(22,"Please input your choice<A-H,X,Z>:");*/
    RepromCom(0);     //sprintf(TxBuffer,"\r\n");uart_SendLine();
    RepromCom(14);    //sprintf(TxBuffer,"        A> SFP Plugged\r\n");uart_SendLine();
    RepromCom(15);    //sprintf(TxBuffer,"        B> Protocol Support\r\n");uart_SendLine();
    RepromCom(16);    //sprintf(TxBuffer,"        C> CDR Information\r\n");uart_SendLine();
    RepromCom(17);    //sprintf(TxBuffer,"        D> SFP Information\r\n");uart_SendLine();
    RepromCom(18);    //sprintf(TxBuffer,"        E> Operation Mode\r\n");uart_SendLine();
    RepromCom(19);    //sprintf(TxBuffer,"        F> Client/Line Config\r\n");uart_SendLine();
    RepromCom(20);    //sprintf(TxBuffer,"        G> Boot Mode\r\n");uart_SendLine();
    RepromCom(21);    //sprintf(TxBuffer,"        H> SFP Tx Enable/Disable\r\n");uart_SendLine();
    RepromCom(22);    //sprintf(TxBuffer,"Please input your choice<A-H,X,Z>:");uart_SendLine();
}
void PlugR(void)
{
    byte i,temp;
    sprintf(TxBuffer,"SFP1 Plugged:");
    OS_Use( &mibTableSema );
    temp=*((byte*)entryAddrMIB[e_ELCT_SFPPlugged]);
    for (i=0;i<4;i++)
    {
        TxBuffer[3]=COM1+i;
        if(temp& (1 << i))    sprintf(TxBuffer+13,ALARMT);
        else sprintf(TxBuffer+13,ALARMF);
        TxBuffer[18]=13;TxBuffer[19]=10;TxBuffer[20]=0;uart_SendLine();
    }
    OS_Unuse( &mibTableSema );
} 
void ProtocolM(void)
{
    /*WepromCom(41,"        A> Inquiry Supported Protocol\r\n");
    WepromCom(42,"        B> Set Protocol Type\r\n");
    WepromCom(43,"Please input your choice<A-B,X,Z>:");*/
    RepromCom(0);   //printf("\n");
    RepromCom(41);  //printf("        A> Inquiry Supported Protocol\n");
    RepromCom(42);  //printf("        B> Set Protocol Type\n");
    RepromCom(43);  //printf("Please input your choice<A-B,X,Z>:");
}
void ProtocolR(void)
{
    byte i;
    U16 *temp;
    sprintf(TxBuffer,"SFP1 %s Support: ",protocol);
    OS_Use( &mibTableSema );
    temp=(word*)entryAddrMIB[e_ELCT_ProtocolIndexSFP1];
    for (i=0;i<4;i++)
    {
        TxBuffer[3]=COM1+i;
        sprintf(TxBuffer+23,"%s%s",Protocol[*temp],NR);
        temp++;
        uart_SendLine();
    }
    OS_Unuse( &mibTableSema );
}
void UnitSCP(void)   //protocol mode
{
    byte i;
    TxBuffer[0]=13;TxBuffer[1]=10;TxBuffer[2]=0;uart_SendLine();
    for(i=0;i<8;i++)TxBuffer[i]=32;
    for (i=0;i<PtclMax;i++)
    {sprintf(TxBuffer+8,"%c> %s%s",i+COMA,Protocol[i],NR);uart_SendLine();}
    sprintf(TxBuffer,INPUTC);
    sprintf(TxBuffer+24,"<A - %c,X,Z>:",i-1+COMA);uart_SendLine();
}

void CdrM(void)
{
    /*WepromCom(53,"        A> Inquiry CDR Bit Rate\r\n");
    WepromCom(54,"        B> Inquiry CDR Alarm\r\n");
    WepromCom(55,"        C> Inquiry CDR Mode\r\n");
    WepromCom(56,"        D> Set CDR Mode\r\n");
    WepromCom(57,"Please input your choice<A-D,X,Z>:");*/ 
    RepromCom(0);     //sprintf(TxBuffer,"\r\n");uart_SendLine();
    RepromCom(53);    //sprintf(TxBuffer,"        A> Inquiry CDR Bit Rate\r\n");uart_SendLine();
    RepromCom(54);    //sprintf(TxBuffer,"        B> Inquiry CDR Alarm\r\n");uart_SendLine();
    RepromCom(55);    //sprintf(TxBuffer,"        C> Inquiry CDR Mode\r\n");uart_SendLine();
    RepromCom(56);    //sprintf(TxBuffer,"        D> Set CDR Mode\r\n");
    RepromCom(57);    //sprintf(TxBuffer,"Please input your choice<A-D,X,Z>:\0");uart_SendLine();
}
void CBRR(void)
{
    byte i,temp[3];
    U16 tempbt;
    sprintf(TxBuffer,"%s CDR Bit Rate:",SFP);  
    for (i=0;i<4;i++)
    {
        TxBuffer[3]=COM1+i;
        //if ( (sfpPlugged) & (1 << i)){
            //write cdr bit rate
            temp[0]=20;temp[1]=20;temp[2]=25;
            WC_EEPROM_PORT &= ~WC_EEPROM_MASK;
            writeEEProm(100+i*3, 3, temp, e_I2c_EEPROM0DvcAdr, eeprom_Small );
            WC_EEPROM_PORT |= WC_EEPROM_MASK;
            //read cdr bit rat
            readEEProm( 100+i*3, 3, temp,e_I2c_EEPROM0DvcAdr, eeprom_Small);
            tempbt=temp[2]*100;
            sprintf(TxBuffer+18,"%2d%%(max),%2d%%(min),%dM(nominal)%s",temp[0],temp[1],tempbt,NR);            
            uart_SendLine();
        //}else{sprintf(TxBuffer+14,"not assemble%s",NR);uart_SendLine();}
    }
}
void CBRA(void)
{
    sprintf(TxBuffer,"no alarm\r\n");uart_SendLine();  
}
void CDRMR(void)
{
    byte i,*temp;
    sprintf(TxBuffer,"%s CDR Mode:",SFP);
    OS_Use( &mibTableSema );
    for (i=0;i<4;i++)
    {
        TxBuffer[3]=COM1+i;
        temp=entryAddrMIB[e_ELCT_RxCLKModeSFP1+i];
        sprintf(TxBuffer+14,"%s%s",RxClkMode[*temp],NR);
        temp++;
        uart_SendLine();
    }
    OS_Unuse( &mibTableSema );
}
void UnitSCC(void)   //Rx Clock Mode
{
    byte i;
    TxBuffer[0]=13;TxBuffer[1]=10;TxBuffer[2]=0;uart_SendLine();
    for(i=0;i<8;i++)TxBuffer[i]=32;
    for (i=0;i<RxCkMax;i++)
    {sprintf(TxBuffer+8,"%c> %s%s",i+COMA,RxClkMode[i],NR);uart_SendLine();}
    sprintf(TxBuffer,INPUTC);
    sprintf(TxBuffer+24,"<A - %c,X,Z>:",i-1+COMA);uart_SendLine();
}

void SFPM(void)
{
    /*WepromCom(23,"        A> Inquiry SFP Vendor Info\r\n");
    WepromCom(24,"        B> Inquiry SFP Bit Rate\r\n");
    WepromCom(25,"        C> Inquiry SFP Wavelength\r\n");
    WepromCom(26,"        D> Inquiry SFP Media Type\r\n");
    WepromCom(27,"        E> Inquiry SFP Transmission Distance\r\n");
    WepromCom(28,"        F> Inquiry SFP Encoding Style\r\n");
    WepromCom(29,"        G> Inquiry SFP Temperature\r\n");
    WepromCom(30,"        H> Inquiry SFP Voltage\r\n");
    WepromCom(31,"        I> Inquiry SFP Laser Bias\r\n");
    WepromCom(32,"        J> Inquiry SFP TX Power\r\n");
    WepromCom(33,"        K> Inquiry SFP RX Power\r\n");
    WepromCom(34,"        L> SFP Warning Information\r\n");
    WepromCom(35,"        M> SFP Alarm Information\r\n");
    WepromCom(36,"Please input your choice<A-M,X,Z>:");*/
    RepromCom(0);     //sprintf(TxBuffer,"\r\n");uart_SendLine();
    RepromCom(23);    //sprintf(TxBuffer,"        A> Inquiry SFP Vendor Info\r\n");uart_SendLine();
    RepromCom(24);    //sprintf(TxBuffer,"        B> Inquiry SFP Bit Rate\r\n");uart_SendLine();
    RepromCom(25);    //sprintf(TxBuffer,"        C> Inquiry SFP Wavelength\r\n");uart_SendLine();
    RepromCom(26);    //sprintf(TxBuffer,"        D> Inquiry SFP Media Type\r\n");
    RepromCom(27);    //sprintf(TxBuffer,"        E> Inquiry SFP Transmission Distance\r\n");uart_SendLine();
    RepromCom(28);    //sprintf(TxBuffer,"        F> Inquiry SFP Encoding Style\r\n");uart_SendLine();
    RepromCom(29);    //sprintf(TxBuffer,"        G> Inquiry SFP Temperature\r\n");uart_SendLine();
    RepromCom(30);    //sprintf(TxBuffer,"        H> Inquiry SFP Voltage\r\n");uart_SendLine();
    RepromCom(31);    //sprintf(TxBuffer,"        I> Inquiry SFP Laser Bias\r\n");uart_SendLine();
    RepromCom(32);    //sprintf(TxBuffer,"        J> Inquiry SFP TX Power\r\n");uart_SendLine();
    RepromCom(33);    //sprintf(TxBuffer,"        K> Inquiry SFP RX Power\r\n");uart_SendLine();
    RepromCom(34);    //sprintf(TxBuffer,"        L> SFP Warning Information\r\n");uart_SendLine();
    RepromCom(35);    //sprintf(TxBuffer,"        M> SFP Alarm Information\r\n");uart_SendLine();
    RepromCom(36);    //sprintf(TxBuffer,"Please input your choice<A-M,X,Z>:);uart_SendLine();
}
void VendorR(void)
{
    byte i;
    sprintf(TxBuffer,"%s Vendor Info:",SFP);
    for (i=0;i<4;i++)
    {
        TxBuffer[3]=COM1+i;
        if ( (sfpPlugged) & (1 << i)){

            readEEProm( adr_VendorName, SFP_VENDOR_LENGTH, TxBuffer+17,
    	        e_I2c_SFPDvc1Adr + i*BUS_NR_DIFF, eeprom_Small);
            TxBuffer[33]=13;TxBuffer[34]=10;
            uart_SendChar(35);
        }else{sprintf(TxBuffer+17,"not assemble%s",NR);uart_SendLine();}
    }
}
void SBRR(void)
{
    byte i,temp[3];
    U16 tempbt;
    sprintf(TxBuffer,"%s Bit Rate:",SFP);  
    for (i=0;i<4;i++)
    {
        TxBuffer[3]=COM1+i;
        if ( (sfpPlugged) & (1 << i)){
            readEEProm( adr_BitRateMax, SFP_BR_MAX_LENGTH+SFP_BR_MIN_LENGTH, temp,
    	        e_I2c_SFPDvc1Adr + i*BUS_NR_DIFF, eeprom_Small);
            readEEProm( adr_NominalBitRate, SFP_BITRATE_LENGTH, temp+2,
        	    e_I2c_SFPDvc1Adr + i*BUS_NR_DIFF, eeprom_Small);
            tempbt=temp[2]*100;
            sprintf(TxBuffer+14,"%2d%%(max),%2d%%(min),%dM(nominal)%s",temp[0],temp[1],tempbt,NR);            
            uart_SendLine();
        }else{sprintf(TxBuffer+14,"not assemble%s",NR);uart_SendLine();}
    }
}
void SFPWR (void)
{
    byte i,temp[2];
    U16 tempbt;
    sprintf(TxBuffer,"%s Wavelenghth:",SFP);  
    for (i=0;i<4;i++)
    {
        TxBuffer[3]=COM1+i;
        if ( (sfpPlugged) & (1 << i)){
            readEEProm( 60,2,temp,e_I2c_SFPDvc1Adr + i*BUS_NR_DIFF, eeprom_Small);            
            tempbt = temp[0]*256+temp[1];
            sprintf(TxBuffer+17,"%u%s",tempbt,NR);            
            uart_SendLine();
        }else{sprintf(TxBuffer+17,"not assemble%s",NR);uart_SendLine();}
    }
}
void MediaR (void)
{
    byte i,temp;
    sprintf(TxBuffer,"%s Media Type:",SFP);  
    for (i=0;i<4;i++)
    {
        TxBuffer[3]=COM1+i;
        if ( (sfpPlugged) & (1 << i)){
            readEEProm( 9,1,&temp,e_I2c_SFPDvc1Adr + i*BUS_NR_DIFF, eeprom_Small);
            if(temp&1)  sprintf(TxBuffer+16,"%s%s",Media[0],NR);
            else if(temp&0xc)   sprintf(TxBuffer+16,"%s%s",Media[1],NR);
            else  if(temp)sprintf(TxBuffer+16,"%s%s",Media[2],NR);
            else  sprintf(TxBuffer+16,"%s%s",Media[0],NR);            
            uart_SendLine();
        }else{sprintf(TxBuffer+16,"not assemble%s",NR);uart_SendLine();}
    }
}
void TransDisR(void)   
{
    byte i,k,l=0x10,temp;
    sprintf(TxBuffer,"%s Transmission Distance:",SFP);  
    for (i=0;i<4;i++)
    {
        TxBuffer[3]=COM1+i;
        if ( (sfpPlugged) & (1 << i)){
            readEEProm( 7, 1, &temp,e_I2c_SFPDvc1Adr + i*BUS_NR_DIFF, eeprom_Small);
            if (temp){
                for (k=0;k<4;k++)
                    if(temp&(l<<k)) sprintf(TxBuffer+27,"%s%s",TransDis[k],NR);
            }else sprintf(TxBuffer+27,"%s%s",TransDis[2],NR);            
            uart_SendLine();
        }else{sprintf(TxBuffer+27,"not assemble%s",NR);uart_SendLine();}
    }
}
void EncodeR (void)
{
    byte i,temp;
    sprintf(TxBuffer,"%s Encoding Style:",SFP);  
    for (i=0;i<4;i++)
    {
        TxBuffer[3]=COM1+i;
        if ( (sfpPlugged) & (1 << i)){
            readEEProm( 11, 1, &temp,e_I2c_SFPDvc1Adr + i*BUS_NR_DIFF, eeprom_Small);
            sprintf(TxBuffer+20,"%s%s",Encode[temp],NR);            
            uart_SendLine();
        }else{sprintf(TxBuffer+20,"not assemble%s",NR);uart_SendLine();}
    }
}
void SFPTempR(void)
{
    int8_t chn,temp;
    sprintf(TxBuffer,"%s Temperature:",SFP);  
    for (chn=0;chn<4;chn++)
    {
        TxBuffer[3]=COM1+chn;
        if ( (sfpPlugged) & (1 << chn)){
            temp=measureTempSFP(adrTemp,chn);
            sprintf(TxBuffer+17,"%dC%s",temp,NR);            
            uart_SendLine();

⌨️ 快捷键说明

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