亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? csygreen.c

?? ADSL測試儀
?? C
?? 第 1 頁 / 共 2 頁
字號:
//LCD12864P.c
#include <iom16.h>
#include <ina90.h>
#include <stdio.h>
#include <pgmspace.h>
#include <string.h>
#include <stdlib.h>
#include "HZ.h"
#include "menu.h"
#include "asc1608a.h"
#define SET_CS2 PORTD|=0x08
#define SET_CS1 PORTD|=0x10
#define CLR_CS2 PORTD&=0xF7
#define CLR_CS1 PORTD&=0xEF
#define SET_E   PORTD|=0x80
#define CLR_E   PORTD&=0x7f
#define SET_RW  PORTD|=0x20
#define CLR_RW  PORTD&=0xDf
#define SET_RS  PORTD|=0x40
#define CLR_RS  PORTD&=0xBF

#define  UP_KEY      0xfd
#define  DOWN_KEY    0xf7
#define  BG_KEY      0xfb

#define  Version           1.00

#pragma  vector=TIMER1_OVF_vect
__interrupt void TIMER1VF_Handler(void);

char Line_str[16],BUF[6];
char Languageflag,M_flag,Synflag;
unsigned char Col,Line,Cur_Y=0,Line_nums,CurRow;
char Key_pressed,KeyCode,MenuNumbers=0;
char TimerCount,TimerOffflag,LowOffflag,SampleTime;
unsigned int TimerOff;

__eeprom char unuse @0x00; 
__eeprom char EE_Languageflag=0; 
__eeprom unsigned char EE_RecordDown1[5]="24000",EE_RecordDown2[5]="24000",EE_RecordDown3[5]="24000"; 
__eeprom unsigned char EE_RecordUP1[5]="1024 ",EE_RecordUP2[5]="1024 ",EE_RecordUP3[5]="1024 "; 

char Battery;
unsigned int LowAlarmCount;
void Disp1608(void);
void Disp1608E(void);
void Read_BF(void);
void Clr_Row(char Row);
void Clr_LCD(void);
void Clr_4Row(void);
void CLR1608(void);
void IniLCD(void);
void LCDCommand(void);

void Key(void);
void Get_Keycode(void);
void Initial(void);
void KeyWaite(void);

void MainMenu(void);
void DisplayOne(void);
void DisplayTwo(void);
void DisplayThree(void);
void DisplayFour(void);
void DisplayFive(void);
void DisplaySix(void);

void SetupLanguage(void);
void SetupLanguageUpdate(void);
void DelayTime(unsigned int);
void BeeSpeak(unsigned int time);
void Disp2(void);
void DrawDot(unsigned char x,unsigned char y);
void DrawLine(unsigned char x,unsigned char y);
void BackLight(void);
char Get_BackLightKey(void);
char ReceiveComm(void);
void WriteComm(unsigned char Data);
void ReadComm(void);
void Start(void);
void ADCBattery(void);
struct dsl{
          char standard[15];
          char Local_Tx_Power[5];
          char Remote_Tx_Power[5];
          char Local_Line_Att[5];
          char Remote_Line_Att[5];
          char Local_SNR_Margin[5];
          char Remote_SNR_Margin[5];
          char Tx_Line_Rate[5];
          char Rx_Line_Rate[5];
          char Up_Capability[5];
          char Down_Capability[5];
         // char Up_Dvalue[10];
         // char Down_Dvalue[10];
}Dsl;
void main(void)
{
  char Synflag1,i;
  DDRD=0xff;
  Synflag=0;
  Synflag1=0;
  PORTD|=0x77;
   IniLCD();
   Clr_LCD();
   
  BeeSpeak(10);
  Languageflag=EE_Languageflag;
   if(Get_BackLightKey())
    SetupLanguage();
  Initial();
  SampleTime=0;
   //adc set
   ADMUX=0xE0;//Set VREF=2.56V Select PA0
   ADCSRA=0x87;
   LowAlarmCount=0;
  ADCBattery();
  if(LowOffflag)
  {
        DDRC|=0x02;
        PORTC|=0x02;
        DelayTime(30);
        PORTC&=0xfd;
  }
  Start();
  DDRA=0;
  PORTA&=0x7f;
 
  DelayTime(600);
  Clr_LCD();
  MenuNumbers=0; 
  TimerCount=0;
  MainMenu();
  TimerOffflag=0;
  TimerOff=0;
  Synflag=0;
  Synflag1=0;
  while(1)
  {
    SampleTime++;
     if(SampleTime&0x10)
          ADCBattery();
     if(LowOffflag||TimerOffflag)
     {
        BeeSpeak(10);
        DDRC|=0x02;
        PORTC|=0x02;
        DelayTime(100);
        PORTC&=0xfd;
     }
     if(Synflag!=Synflag1)
     {
         if(Synflag)
         {
             ReadComm();
             ReadComm();
         }
         else
         {
           for(i=0;i<5;i++)
           {
              EE_RecordDown1[i]=EE_RecordDown2[i];
              EE_RecordDown2[i]=EE_RecordDown3[i];
              EE_RecordDown3[i]=Dsl.Rx_Line_Rate[i];
              EE_RecordUP1[i]=EE_RecordUP2[i];
              EE_RecordUP2[i]=EE_RecordUP3[i];
              EE_RecordUP3[i]=Dsl.Tx_Line_Rate[i];
           }
           for(i=0;i<5;i++)
           {
              Dsl.standard[i]=' ';
              Dsl.Local_Tx_Power[i]=' ';
              Dsl.Remote_Tx_Power[i]=' ';
              Dsl.Local_Line_Att[i]=' ';
              Dsl.Remote_Line_Att[i]=' ';
              Dsl.Local_SNR_Margin[i]=' ';
              Dsl.Remote_SNR_Margin[i]=' ';
              Dsl.Tx_Line_Rate[i]=' ';
              Dsl.Rx_Line_Rate[i]=' ';
              Dsl.Up_Capability[i]=' ';
              Dsl.Down_Capability[i]=' ';
           }
           for(i=0;i<10;i++)
           {
             Dsl.standard[i+5]=' ';
           }
         } 
         BeeSpeak(10);
         Clr_LCD();
         MainMenu();
         Synflag1=Synflag;
     }
     Key();   
     if(Key_pressed)
     {
       Get_Keycode();
       if(KeyCode==DOWN_KEY)
       {
           if(MenuNumbers<5)
           { 
              MenuNumbers++; 
              BeeSpeak(10);
              Clr_LCD();
              MainMenu();
           }
           KeyWaite();
       }
       else  if(KeyCode==UP_KEY)
       {
        
           if(MenuNumbers>0)
           {
             MenuNumbers--; 
             Clr_LCD();
             BeeSpeak(10);
             MainMenu();
           }
           KeyWaite();
       }
     }  
  }
} 
void Start(void)
{
   char rrr[]="ADSL Tester";
   Clr_LCD();
   if(!Languageflag)
   {
      /*strncpy_P(Line_str,StartMenu,16);
      Line=0;
      Col=0;Line_nums=16;
      Disp1608();*/
      strncpy_P(Line_str,Start2Menu,16);
      Line=1;//Line=2;
      Col=0;Line_nums=16;
      Disp1608();
      strncpy_P(Line_str,Start3Menu,16);
      Line=2;//Line=3;
      Col=0;Line_nums=16;
      Disp1608();
   }
   else
   {
      strncpy_P(Line_str,StartMenuE,16);
      //strncpy(Line_str,rrr,11);
      Line=1;
      Col=0;Line_nums=16;
      Disp1608();
   }
   
}
void ReadComm(void)
{
  char Command[]="get dsl params",chr;
  unsigned int i,j,n;
  _CLI();
  for(i=0;i<14;i++)
     WriteComm(Command[i]);
  WriteComm(0x0a);
  WriteComm(0x0d);
  i=0;j=0,n=0;
  while(1)
  {
    chr=ReceiveComm();
      if(chr=='$')
      break;
    else if(chr==':')
    {
      j++;
      i=0;
      while(1)
      {
         chr=ReceiveComm();
         if(chr!=' ')
           break;
      }
      do 
      {
          n++;
          //chr=ReceiveComm();
          if(j==6)
            Dsl.standard[i++]=chr;
          else if(j==8)
            Dsl.Local_Tx_Power[i++]=chr;
          else if(j==9)
            Dsl.Remote_Tx_Power[i++]=chr;
          else if(j==10)
            Dsl.Local_Line_Att[i++]=chr;
          else if(j==11)
            Dsl.Remote_Line_Att[i++]=chr;
          else if(j==12)
            Dsl.Local_SNR_Margin[i++]=chr;
          else if(j==13)
            Dsl.Remote_SNR_Margin[i++]=chr;
          else if(j==14)
            Dsl.Tx_Line_Rate[i++]=chr;
          else if(j==15)
            Dsl.Rx_Line_Rate[i++]=chr;
          else if(j==29)
            Dsl.Down_Capability[i++]=chr;
          else if(j==30)
            Dsl.Up_Capability[i++]=chr;
         // else if(j==18)
         //   Dsl.Up_Dvalue[i++]=chr;
         // else if(j==19)
         //   Dsl.Down_Dvalue[i++]=chr;
          chr=ReceiveComm();
        }while((chr!=' '));
     }
    if(n>2048)
      break;
  }
  _SEI();
}
char ReceiveComm(void)
{
 // unsigned int i=20000;
  while(!(UCSRA&0x80));
  return UDR;
}
void WriteComm(unsigned char Data)
{
    while ((UCSRA&0x20)==0); 
    UDR=Data; 
}

void BeeSpeak(unsigned int time)
{
  DDRC|=0x01;
  PORTC|=0x01;
  DelayTime(time);
  PORTC&=0xfe;
  DelayTime(time); 
}
char Get_BackLightKey(void)
{
  char temp,BackLightKey;
  unsigned int i;
  DDRA=0x00;
  temp=PINA|0xfb;
  BackLightKey=0;
  if(temp!=0xff)
  {
    for(i=0;i<100;i++);
    temp=PINA|0xfb;
    if(temp!=0xff)
    {
       BackLightKey=1;
       _CLI();
       TimerOff=0;
       _SEI();
    }
  }
  return BackLightKey;
}
void BackLight(void)
{
  char temp;
  unsigned int i;
  DDRA=0x00;
  temp=PINA|0xfb;
  
 if(temp!=0xff)
  {
    for(i=0;i<100;i++);
    temp=PINA|0xfb;
    if(temp!=0xff)
    {
       DDRD|=0x04;
       PORTD|=0x04;
    }
    else
    {
       DDRD|=0x04;
       PORTD&=0xfb;
    }
  }
  else
  {
       DDRD|=0x04;
       PORTD&=0xfb;
  }
}
void MainMenu(void)
{
   if(MenuNumbers==0)
     DisplayOne();
   else if(MenuNumbers==1)
     DisplaySix();
   else if(MenuNumbers==2)
     DisplayTwo();
   else if(MenuNumbers==3)
     DisplayThree();
   else if(MenuNumbers==4)
     DisplayFour();
   else if(MenuNumbers==5)
     DisplayFive();
  // else if(MenuNumbers==5)
  //   DisplaySix();
     
}
void DisplayOne(void)
{
     char i;
     for(i=0;i<3;i++)
     {
       if(!Languageflag)
          strncpy_P(Line_str,&DisplayOneMenu[i*9],9);
       else
          strncpy_P(Line_str,&DisplayOneMenuE[i*9],9);
       Line=i;
       Line_nums=10;
       Col=0;
       Disp1608();
     }
     if(!Synflag)
     {
         for(i=0;i<3;i++)
         {
              strncpy(Line_str,"  --  ",6);
              Line=i;
              Line_nums=6;
              Col=9;
              Disp1608();
         }
          Line_str[0]=25;
          Line_nums=1;
          Col=15;
          Disp1608();
     }
     else
     {
         if(Dsl.standard[6]=='2')
            Dsl.standard[5]='+',Dsl.standard[6]=' ';//RE-ADSL ADSL2+
         strncpy(Line_str,Dsl.standard,7);
         Line=0;
         Line_nums=7;
         Col=9;Disp1608();
         strncpy(Line_str,Dsl.Rx_Line_Rate,5);
         Line_nums=5;
         Line=1;
         Disp1608();
         strncpy(Line_str,Dsl.Tx_Line_Rate,6);
         Line_nums=4;
         Line=2;
         Disp1608();
     }
     Line_str[0]='K';
     Line=1;
     Line_nums=1;
     Col=15;
     Disp1608();
     Line=2;
     Disp1608();
     Line_str[0]=25;
     Line=3;
     Disp1608();
     
}
void DisplaySix(void)
{
  if(!Languageflag)
      strncpy_P(Line_str,DisplaySixMenu,15);
   else
      strncpy_P(Line_str,DisplaySixMenuE,15);
  Line=0;
  Line_nums=15;
  Col=0;
  Disp1608(); 
 
    if(!Languageflag)
        strncpy_P(Line_str,DiplayThreeMenu2,5);
    else
        strncpy_P(Line_str,DiplayThreeMenu2E,5);
    Line=1;
    Line_nums=5;
    Col=0;
    Disp1608();
    if(!Languageflag)
        strncpy_P(Line_str,&DiplayThreeMenu2[5],5);
    else
        strncpy_P(Line_str,&DiplayThreeMenu2E[5],5);
    Line_nums=5;
    Line=2;
    Col=0;
    Disp1608();
    if(!Synflag)
    {
        strncpy(Line_str,"--   ",5);
        Line=1;
        Line_nums=5;
        Col=5;
        Disp1608();
        Line=2;
        Disp1608();
    }
    else
    {
       strncpy(Line_str,Dsl.Down_Capability,5);
       Line=1;
       Line_nums=7;
       Col=8;
       Line_str[5]='K';
       Line_str[6]='b';
       Disp1608();
       strncpy(Line_str,Dsl.Up_Capability,5);
       Line=2;
       Col=8;
       Disp1608();
    }
  Line_str[0]=24;
  Line=0;
  Col=15;
  Line_nums=1;
  Disp1608();
  Line_str[0]=25;
  Line=3;
  Disp1608();
}
void DisplayTwo(void)
{
  if(!Languageflag)
      strncpy_P(Line_str,DisplayTwoMenu1,15);
   else
      strncpy_P(Line_str,DisplayTwoMenu1E,15);
  Line=0;
  Line_nums=15;
  Col=0;
  Disp1608(); 
  if(!Languageflag)
      strncpy_P(Line_str,DisplayTwoMenu2,15);
   else
      strncpy_P(Line_str,DisplayTwoMenu2E,15);
  Line=2;
  Line_nums=15;
  Col=0;
  Disp1608(); 
  Line_str[0]=24;
  Line=0;
  Col=15;
  Line_nums=1;
  Disp1608();
  Line_str[0]=25;
  Line=3;
  Disp1608();
   if(!Languageflag)
        strncpy_P(Line_str,DiplayTwoMenu3,3);
    else
        strncpy_P(Line_str,DiplayTwoMenu3E,3);
    Line=3;
    Line_nums=3;
    Col=0;
    Disp1608();
    Line=1;
    Disp1608();
    if(!Languageflag)
        strncpy_P(Line_str,&DiplayTwoMenu3[3],3);
    else
        strncpy_P(Line_str,&DiplayTwoMenu3E[3],3);
    Line=3;
    Line_nums=3;
    Col=8;
    Disp1608();
    Line=1;
    Disp1608();
  if(!Synflag)
  {
    strncpy(Line_str," --  ",4);
    Line=1;
    Line_nums=4;
    Col=3;
    Disp1608();
     Col=11;
    Disp1608();
    strncpy(Line_str,"--   ",4);
    Line=3;
    Line_nums=4;
    Col=11;
    Disp1608();
    Col=3;
    Disp1608();
  }
  else
  {
    strncpy(Line_str,Dsl.Remote_Tx_Power,4);
    Line=1;
    Col=3;
    Line_nums=4;
    Disp1608();
    strncpy(Line_str,Dsl.Remote_Tx_Power,4);
    Col=11;
    Line_nums=4;
    Disp1608();
    strncpy(Line_str,Dsl.Remote_SNR_Margin,4);
    Line=3;
    Col=3;
    Line_nums=4;
    Disp1608();
    strncpy(Line_str,Dsl.Local_SNR_Margin,4);
    Line=3;
    Col=11;
    Line_nums=4;
    Disp1608();
  }
    
}
void DisplayThree(void)
{
  if(!Languageflag)
      strncpy_P(Line_str,DisplayThreeMenu1,15);
   else
      strncpy_P(Line_str,DisplayThreeMenu1E,15);
  Line=0;
  Line_nums=15;
  Col=0;
  Disp1608(); 
 /* if(!Languageflag)
      strncpy_P(Line_str,DisplayThreeMenu2,15);
   else
      strncpy_P(Line_str,DisplayThreeMenu2E,15);
  Line=2;
  Line_nums=15;
  Col=0;
  Disp1608(); */
    if(!Languageflag)
        strncpy_P(Line_str,DiplayThreeMenu2,5);
    else
        strncpy_P(Line_str,DiplayThreeMenu2E,5);
    Line=1;
    Line_nums=5;
    Col=0;
    Disp1608();
    if(!Languageflag)
        strncpy_P(Line_str,&DiplayThreeMenu2[5],5);
    else
        strncpy_P(Line_str,&DiplayThreeMenu2E[5],5);
    Line_nums=5;
    Line=2;
    Col=0;
    Disp1608();

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲久本草在线中文字幕| 久久先锋影音av鲁色资源 | 日韩免费观看高清完整版在线观看| 亚洲综合色视频| 日韩欧美一区电影| 亚洲乱码一区二区三区在线观看| 色综合色综合色综合| 一区二区三区国产精华| 欧美高清视频www夜色资源网| 亚洲午夜在线观看视频在线| 91精品国产91综合久久蜜臀| 国产一区三区三区| 亚洲精品免费在线| 日韩一区二区三区视频在线| 粉嫩av一区二区三区在线播放 | 日韩欧美黄色影院| 成人激情校园春色| 夜夜亚洲天天久久| 精品国产电影一区二区| av在线一区二区三区| 五月婷婷激情综合| 欧美高清在线精品一区| 欧美日韩中文字幕一区| 国产尤物一区二区| 亚洲第一在线综合网站| 久久精品人人做人人综合| 在线日韩一区二区| 黑人巨大精品欧美一区| 亚洲美女免费视频| 精品久久五月天| 欧美亚洲一区三区| 国产盗摄精品一区二区三区在线| 亚洲国产成人精品视频| 国产欧美一区二区在线| 欧美女孩性生活视频| 国产91精品精华液一区二区三区 | 国产精品影音先锋| 亚洲1区2区3区4区| 国产精品热久久久久夜色精品三区| 欧美日韩卡一卡二| 91一区二区在线| 国产一区二区三区电影在线观看| 亚洲第一搞黄网站| 国产精品福利一区二区| 精品毛片乱码1区2区3区| 欧美日韩激情一区二区| 成人性视频网站| 韩国在线一区二区| 免费精品视频在线| 亚洲va欧美va天堂v国产综合| 中文字幕制服丝袜成人av | 夜夜亚洲天天久久| 国产精品欧美综合在线| 精品国产伦一区二区三区观看方式| 欧美在线观看视频一区二区| 久久久综合网站| 亚洲成av人片在www色猫咪| 久久久欧美精品sm网站| 欧美肥胖老妇做爰| 欧美三级视频在线播放| 91丨porny丨国产入口| 国产成人aaaa| 国产福利视频一区二区三区| 国模少妇一区二区三区| 奇米精品一区二区三区在线观看一| 亚洲人成精品久久久久| 中文字幕巨乱亚洲| 欧美激情综合网| 久久久久久久久久久久久女国产乱| 日韩欧美国产三级电影视频| 日韩视频在线你懂得| 欧美一个色资源| 日韩女优电影在线观看| 日韩精品一区在线观看| 日韩欧美国产精品| 欧美大白屁股肥臀xxxxxx| 欧美一区二区三区视频免费播放 | 99re在线精品| 岛国精品在线播放| 成人av免费在线观看| jizz一区二区| 在线看不卡av| 欧洲国产伦久久久久久久| 欧美日韩免费不卡视频一区二区三区| 欧美性videosxxxxx| 91精品国产综合久久久久久漫画 | 国产喂奶挤奶一区二区三区| 久久久精品黄色| 中文字幕色av一区二区三区| 亚洲码国产岛国毛片在线| 一区二区三区在线免费观看| 亚洲bdsm女犯bdsm网站| 日韩黄色一级片| 韩国女主播一区二区三区| 成人永久aaa| 欧美午夜宅男影院| 精品国产一区二区三区忘忧草 | 亚洲韩国精品一区| 日韩国产欧美一区二区三区| 久久99精品久久久久久国产越南| 国产精品香蕉一区二区三区| 99riav一区二区三区| 欧美精品久久一区二区三区| 久久亚洲捆绑美女| 亚洲人成在线播放网站岛国| 日韩中文字幕91| 丁香六月久久综合狠狠色| 欧洲精品一区二区| 国产亚洲女人久久久久毛片| 亚洲综合小说图片| 激情六月婷婷综合| 91黄色在线观看| www国产精品av| 亚洲综合小说图片| 粉嫩高潮美女一区二区三区| 在线观看欧美黄色| 久久久精品黄色| 亚洲成人久久影院| 暴力调教一区二区三区| 91精品国产91久久久久久一区二区 | 蜜臀av亚洲一区中文字幕| 成人免费高清在线| 欧美一区二区黄| 一区二区三区日韩精品| 国产曰批免费观看久久久| 欧美日韩国产成人在线免费| 中文字幕一区二区在线播放| 免费国产亚洲视频| 在线视频一区二区免费| 国产日产欧美一区二区视频| 日韩激情视频在线观看| 91麻豆精东视频| 久久蜜桃av一区精品变态类天堂 | 免费观看一级欧美片| 91美女蜜桃在线| 国产日韩精品一区二区三区在线| 视频一区二区三区在线| 91免费看`日韩一区二区| 国产婷婷色一区二区三区在线| 日韩国产精品大片| 日本韩国欧美一区二区三区| 国产精品久久久一区麻豆最新章节| 日韩高清中文字幕一区| 精品视频免费在线| 亚洲精品免费在线播放| www.99精品| 国产欧美精品一区| 精品无人区卡一卡二卡三乱码免费卡| 欧美男人的天堂一二区| 一区二区三区小说| 91亚洲精华国产精华精华液| 国产精品毛片久久久久久| 国内成+人亚洲+欧美+综合在线| 日韩一级二级三级精品视频| 婷婷久久综合九色综合绿巨人| 色系网站成人免费| 亚洲免费在线电影| 色婷婷激情久久| 亚洲午夜在线视频| 精品视频999| 日韩福利电影在线观看| 欧美一级黄色录像| 久久电影国产免费久久电影| 精品国产免费一区二区三区香蕉| 狠狠色丁香婷婷综合| 久久久久久日产精品| 国产精品1区2区3区在线观看| 久久综合九色综合欧美亚洲| 国产精品2024| 自拍偷拍亚洲欧美日韩| 91首页免费视频| 一区二区三区欧美| 欧美群妇大交群中文字幕| 日韩二区三区在线观看| 日韩一区二区三免费高清| 国内成人免费视频| 中文字幕在线观看不卡视频| 一本色道久久综合狠狠躁的推荐| 亚洲美女视频在线| 欧美日韩一区二区三区不卡 | 国产一区二区中文字幕| 国产亚洲一区二区三区四区 | 欧美精品久久久久久久多人混战| 日韩激情av在线| 久久综合九色综合欧美98| 成人小视频在线观看| 亚洲男同1069视频| 在线播放国产精品二区一二区四区 | 精品少妇一区二区三区视频免付费 | 国产成人综合在线观看| 亚洲日本在线看| 欧美日韩一区国产| 韩国女主播成人在线| 亚洲天堂精品在线观看| 欧美日韩国产成人在线91| 国产精品一品二品| 亚洲制服丝袜在线| 久久综合色之久久综合| 色婷婷一区二区三区四区| 美女被吸乳得到大胸91|