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

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? display.lst

?? 一個(gè)充電控制器的完整單片機(jī)程序
?? LST
?? 第 1 頁(yè) / 共 5 頁(yè)
字號(hào):
C51 COMPILER V6.11.4C,  DISPLAY                   04/01/103  02:34:47  PAGE  1

QCW(0x00002D1A)

WIN32 C51 COMPILER V6.11.4C, COMPILATION OF MODULE DISPLAY   
OBJECT MODULE PLACED IN d:\solar_charge_controller\scca\display.obj
COMPILER INVOKED BY: C51.EXE D:\SOLAR_CHARGE_CONTROLLER\SCCA\DISPLAY.C OBJECT(D:
            -\SOLAR_CHARGE_CONTROLLER\SCCA\DISPLAY.OBJ) PIN(D:\FSI\INC) NOAM PR(
            -D:\SOLAR_CHARGE_CONTROLLER\SCCA\DISPLAY.LST) CD SB OE(1) SM FP(NOFL
            -OAT) PW(80) 

stmt level    source
   1          //-----------------
   2          //change value that display in lcd
   3          //-----------------
   4          #include <string.h>
   5          #include <ABSACC.H>
   6          #include <stdio.h>
   7          #include <INTRINS.h>
   8          #include <stdlib.h>
   9          #include <AT89X52.H>
  10          
  11          #include "charger.h"
  12          #include "lcdp.h"
  13          
  14          //----------------------------------------------------------------
            -----
  15          //keyboard
  16          static unsigned char idata pos=0,len=0;
  17          static unsigned int idata pushlen=0,uplen=0;
  18          unsigned int bdata tlong=0,t50ms=0;
  19          static unsigned char bdata kstate=0,mstate=0;
  20          sbit waitover=kstate^0;
  21          sbit change=kstate^1;
  22          sbit key=kstate^2;
  23          sbit kflag=kstate^3;//key buffer enmpty while kflag=0
  24          //menu
  25          static unsigned char idata no;
  26          sbit mfirst=mstate^0;
  27          sbit madin=mstate^1;
  28          sbit mhis=mstate^2;
  29          sbit msel=mstate^3;//select  date
  30          sbit mset=mstate^4;
  31          //
  32          static unsigned char idata dstr[21];
  33          static unsigned char idata str[10];
  34          
  35          static void itoa(unsigned i,unsigned int ad);
  36          static void keyrst(void);
  37          //
  38          //--------------------------------------
  39          //change lcd display number
  40          static void onchange(unsigned char *chs)
  41          {
  42   1       len=(unsigned char)strlen(chs)-1;

WARNING 451 IN LINE 42 OF display.c : Assignment between pointers to char signe
            -d and unsigned
  43   1       //restet cursor in second line
  44   1       if(kflag)
  45   1        {
  46   2         if(key)//over 2s islong push,0x39='9'
  47   2         {
  48   3            if(chs[pos]>0x39||chs[pos]<0x30)//long push at no number pos
            -ition
  49   3             {
  50   4               keyrst();
  51   4               return;
  52   4             }
  53   3            change=!change;
  54   3            if(change)WC_LCD(SCR_TTT); 
  55   3            else WC_LCD(SCR_TTF); //change cursor state
  56   3      	  delay(1000);
  57   3         }
  58   2         else //short push
  59   2         {
  60   3      	 if(change)
  61   3           {
  62   4      	   if(chs[pos]<0x39)chs[pos]++;
  63   4             else chs[pos]=0x30;//'0'
  64   4             if(pos&1)
  65   4             {
  66   5               WD_LCD(chs[pos-1]);
  67   5               WD_LCD(chs[pos]);
  68   5               WC_LCD(SCR_ACL);
  69   5             }//acc add 1 while write two time 
  70   4      	   else
  71   4             {
  72   5               WD_LCD(chs[pos]);
  73   5               WD_LCD(chs[pos+1]);
  74   5               WC_LCD(SCR_ACL);
  75   5             }
  76   4      	 }
  77   3           else 
  78   3           if(pos<len)
  79   3           {
  80   4            if(pos&1)WC_LCD(SCR_ACR);
  81   4            pos++;
  82   4            WC_LCD(SCR_TTF);
  83   4           }
  84   3           else 
  85   3           {
  86   4             pos=0;
  87   4             WC_LCD(0x90);
  88   4           }
  89   3         }
  90   2       kflag=0;
  91   2       }
  92   1      }
  93          //
  94          //----------------------------
  95          //key state and buffer reset
  96          static void keyrst(void)
  97          {
  98   1        EX1=1;
  99   1        EX0=1;
 100   1        ET0=0;
 101   1        TR0=0; 
 102   1      
 103   1        kstate=0;
 104   1        mstate=0;
 105   1        pos=0;
 106   1        no=0;
 107   1        waitover=0;
 108   1        WC_LCD(SCR_TFF);
 109   1        WC_LCD(0x90);
 110   1        clear();
 111   1      }
 112          
 113          /* 
 114             Using to read input key
 115             Configure Timer 0
 116             - Mode                  = 2
 117             - Interrupt                   = ENABLED
 118             - Clock Source                = INTERNAL
 119             - Enable Gating Control    = DISABLED
 120          */
 121          //-----------------------------------------
 122          //int0,t0,int1,t1,ser;int0 to 12887,int1 to key
 123          
 124          
 125          void keyint(void)interrupt IE1_VECTOR //start key operation
 126          {
 127   1      	EX0=0;//close 12887 second interrupt
 128   1      	EX1=0;//close externd keyint
 129   1      	//init_timer0();//enable readkey
 130   1        TMOD &= 0XF0;   
 131   1        TMOD |= 0X1;  //mode 1 max is 65.536ms on 12M
 132   1        TL0 = 0X58;    //on 6M,100ms(3CB0);
 133   1        TH0 = 0X9E;    //on 6M,50ms(9E58);
 134   1        ET0 = 1;       //on 6M,50ms(D8F0);
 135   1        TF0 = 0;
 136   1        TR0 = 1;  
 137   1      	//display a/d input
 138   1      	madin=1;
 139   1      }
 140          //---------------------------------------------
 141          //timer0 interrupt,scan key input
 142          void readkey(void) interrupt TF0_VECTOR 
 143          {
 144   1        //Timer reload
 145   1      	TR0=0;
 146   1        TL0 = 0X58;    //on 6M,100ms(3CB0);
 147   1        TH0 = 0X9E;    //on 6M,50ms(9E58);
 148   1      	TR0=1;
 149   1        //Timer counter
 150   1      
 151   1      	if(((t50ms++)%20)==0)tlong++;
 152   1      
 153   1        if(!kflag)
 154   1      	{
 155   2      		if(P3_3)
 156   2          {
 157   3            uplen++;
 158   3            if(pushlen>1)
 159   3            {
 160   4              key=0;
 161   4              kflag=1;
 162   4      				uplen=0;
 163   4            }
 164   3         	  else if(uplen>400)
 165   3            {
 166   4               waitover=1;
 167   4            }
 168   3      		pushlen=0;
 169   3          }
 170   2          else
 171   2      	  {
 172   3             pushlen++;
 173   3             uplen=0;
 174   3             if(pushlen>40)
 175   3             {
 176   4                key=1;
 177   4                kflag=1;
 178   4                pushlen=0;
 179   4             }
 180   3          }
 181   2      	}
 182   1      
 183   1      }
 184          
 185          //
 186          //----------------------------------------------
 187          #define xdcdy adinhz[8]
 188          #define lllssj adinhz[9]
 189          //-------------------------------------------------
 190          //general after second interrupt
 191          //display battery volatage and timer
 192          static void firstscr(void)
 193          {
 194   1      // if(_testbit_(mfirst))
 195   1      // {
 196   1        itoa(0,adin[8]);
 197   1        strcpy(dstr,xdcdy);

WARNING 451 IN LINE 197 OF display.c : Assignment between pointers to char sign
            -ed and unsigned

WARNING 451 IN LINE 197 OF display.c : Assignment between pointers to char sign
            -ed and unsigned
 198   1        strcat(dstr,str);

WARNING 451 IN LINE 198 OF display.c : Assignment between pointers to char sign
            -ed and unsigned

WARNING 451 IN LINE 198 OF display.c : Assignment between pointers to char sign
            -ed and unsigned
 199   1        text(0x80,dstr);
 200   1      
 201   1        itoa(4,0);
 202   1        text(0x90,dstr);
 203   1      // }
 204   1      }
 205          //----------------------------------------------
 206          //int0,12887 second interrupt,display date and time,
 207          //display volatage of storage battery 
 208          
 209          void int0second(void) interrupt IE0_VECTOR 
 210          {
 211   1      /*
 212   1          str[0]=P128879;
 213   1          str[1]=P128878;
 214   1          str[2]=P128877;
 215   1          str[3]=P128874;
 216   1          str[4]=P128872;
 217   1          str[5]=P128870;
 218   1          str[6]=P128876;
 219   1       		str[0]=P12887c;
 220   1      
 221   1      	today.date[0]=str[0];
 222   1      	today.date[1]=str[1];
 223   1      	today.date[2]=str[2];
 224   1      
 225   1      	tlong++;
 226   1        mfirst=1;
 227   1      */
 228   1      }
 229          //
 230          //-----------------------------------------------------------
 231          //change unsigned int to ascii,add unit,change to date format
 232          static void itoa(unsigned i,unsigned int ad)
 233          {
 234   1      	unsigned char data t;
 235   1        unsigned char data k;
 236   1      	
 237   1      	dstr[0]='\0';
 238   1      	if(i<4)
 239   1      	{//change int to string
 240   2      		   t=ad%0xA;
 241   2        		 ad /=0xA;
 242   2      
 243   2             sprintf(str,"%u.%bu\0",(unsigned char)ad,t);

WARNING 451 IN LINE 243 OF display.c : Assignment between pointers to char sign
            -ed and unsigned
 244   2             if(i==3)
 245   2             {
 246   3       				 k=strlen(str);

WARNING 451 IN LINE 246 OF display.c : Assignment between pointers to char sign
            -ed and unsigned
 247   3               if(k&1)
 248   3               {
 249   4                str[k++]=0x20;
 250   4                str[k]='\0';
 251   4               }
 252   3             };
 253   2             strcat(str,unit[i]);

WARNING 451 IN LINE 253 OF display.c : Assignment between pointers to char sign
            -ed and unsigned

WARNING 451 IN LINE 253 OF display.c : Assignment between pointers to char sign
            -ed and unsigned
 254   2        }
 255   1      	else
 256   1      	{//change to timer format string
 257   2      		sprintf(dstr,"%b02u/%b02u/%b02u \0",str[0],str[1],str[2]);

WARNING 451 IN LINE 257 OF display.c : Assignment between pointers to char sign
            -ed and unsigned
 258   2      		if(i==4)
 259   2      		{
 260   3           	sprintf(&dstr[9],"%b02u:%b02u:%b02u\0",str[3],str[4],str[5])
            -;

WARNING 451 IN LINE 260 OF display.c : Assignment between pointers to char sign
            -ed and unsigned
 261   3      		}
 262   2        }
 263   1      }
 264          //
 265          //----------------------------------------------------------------
            -----
 266          //menu  control
 267          //            first, current, history, set 
 268          //----------------------------------------------------------------
            -----
 269          //
 270          //  
 271           static link pdate=&today;
 272          
 273          void displayadin(void) //current
 274          {
 275   1      
 276   1       if(madin)
 277   1         if(kflag)
 278   1         {
 279   2      //--------------------------------------------------
 280   2      	 clear();
 281   2           if(key)//long push
 282   2           {
 283   3             if(no<8)//8 way a/d input
 284   3             {//enable mset
 285   4               mstate=0;
 286   4               kstate=0;
 287   4               mset=1;
 288   4               no=0;
 289   4             }
 290   3             else msel=1;//enable msel
 291   3      
 292   3             if(msel)
 293   3             {
 294   4               pdate=pdate->next;
 295   4               mstate=0;
 296   4               kstate=0;
 297   4               mhis=1;
 298   4             };
 299   3      	   delay(2000);
 300   3           }
 301   2           else//short push
 302   2           {
 303   3              if(no<8)//8 way a/d input
 304   3              { //0 2 4 6 
 305   4                secondline:
 306   4                itoa(uadin[no],adin[no]);
 307   4                strcpy(dstr,adinhz[no]);

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
中文字幕一区二区三区在线播放| 91精品国产免费久久综合| 中文字幕在线观看不卡视频| 成人av电影在线网| 日韩av不卡一区二区| 欧美精品乱码久久久久久| 国产中文字幕精品| 夜夜爽夜夜爽精品视频| 日韩久久久久久| 91蜜桃在线观看| 国产原创一区二区| 亚洲精品一二三| 精品粉嫩超白一线天av| 色综合中文字幕国产 | 日本女优在线视频一区二区| 精品人在线二区三区| 色婷婷av一区二区三区大白胸| 日韩精彩视频在线观看| 亚洲欧美日韩国产另类专区| 欧美人与z0zoxxxx视频| 不卡电影一区二区三区| 麻豆精品在线视频| 亚洲五码中文字幕| 亚洲欧洲99久久| 久久久亚洲午夜电影| 欧美精品色综合| 91久久一区二区| 国产福利不卡视频| 蜜臀久久久99精品久久久久久| 亚洲精品视频在线看| 欧美激情综合五月色丁香小说| 91精品国产91热久久久做人人 | 日韩和欧美一区二区三区| 国产精品欧美一级免费| 欧美成人aa大片| 欧美日韩一级片在线观看| 91免费版pro下载短视频| 国产91综合网| 国产乱一区二区| 精品制服美女丁香| 一区二区三区中文在线| 国产精品视频第一区| 久久综合av免费| 国产精品资源网| 久久草av在线| 玖玖九九国产精品| 亚洲激情网站免费观看| 亚洲欧洲美洲综合色网| 国产亚洲成aⅴ人片在线观看| 精品日韩av一区二区| 日韩三级免费观看| 欧美一区二区啪啪| 91麻豆精品91久久久久久清纯 | 91最新地址在线播放| 国产成人亚洲精品青草天美| 国产真实乱偷精品视频免| 久久精品理论片| 免费成人av在线播放| 久久99久久99小草精品免视看| 日韩国产精品久久久| 日韩激情av在线| 秋霞影院一区二区| 韩国视频一区二区| 激情五月播播久久久精品| 久久99久久精品| 国产激情视频一区二区三区欧美 | 8v天堂国产在线一区二区| 欧美精品tushy高清| 欧美一区二区三区视频在线| 欧美mv日韩mv国产网站| 2014亚洲片线观看视频免费| 国产日产亚洲精品系列| 国产精品欧美久久久久一区二区| 中文字幕在线不卡| 国产精品理伦片| 亚洲综合丁香婷婷六月香| 天堂一区二区在线| 狠狠色丁香久久婷婷综合丁香| 国产精品综合av一区二区国产馆| 国产精品乡下勾搭老头1| 狠狠色丁香婷综合久久| 成人午夜av电影| 91热门视频在线观看| 欧美性感一区二区三区| 中文字幕一区二区三区不卡 | 韩国v欧美v日本v亚洲v| 成人丝袜视频网| 色悠悠亚洲一区二区| 制服丝袜一区二区三区| 久久影院电视剧免费观看| 国产精品国产三级国产专播品爱网| 亚洲女人****多毛耸耸8| 日韩一区精品视频| 国产一区激情在线| 91热门视频在线观看| 91精品国产91久久久久久最新毛片| 精品少妇一区二区三区视频免付费 | 欧美亚日韩国产aⅴ精品中极品| 欧美视频一区二区三区四区| 精品国产免费人成电影在线观看四季 | 六月丁香综合在线视频| 色婷婷综合中文久久一本| 精品久久久久久久人人人人传媒| 一区二区成人在线| 岛国一区二区三区| 日韩免费观看2025年上映的电影| 樱花草国产18久久久久| 丰满放荡岳乱妇91ww| 日韩一级欧美一级| 亚洲一级二级三级在线免费观看| 国产成人午夜视频| 欧美tk—视频vk| 日本不卡一区二区| 91久久精品一区二区三| 亚洲国产成人午夜在线一区| 毛片一区二区三区| 宅男在线国产精品| 亚洲成人777| 日本精品裸体写真集在线观看 | 亚洲精品国产精华液| 国产91对白在线观看九色| 亚洲精品一线二线三线| 蜜臀av国产精品久久久久| 欧美三级视频在线播放| 亚洲精品欧美在线| 91视频国产资源| 中文字幕一区二区三区色视频| 国产福利一区在线| 久久久一区二区| 国产专区综合网| 久久久久国产精品免费免费搜索| 精品在线播放午夜| 欧美一级搡bbbb搡bbbb| 免费高清不卡av| 欧美电视剧在线观看完整版| 免费精品视频在线| 欧美mv和日韩mv的网站| 老司机免费视频一区二区三区| 91精品免费在线| 麻豆中文一区二区| 精品福利一区二区三区免费视频| 久久er99精品| 欧美精品一区二区三区很污很色的 | 日韩一级欧美一级| 九九视频精品免费| 久久亚洲一级片| 成人午夜大片免费观看| 国产精品美女一区二区在线观看| 岛国精品在线播放| 日韩美女久久久| 在线观看中文字幕不卡| 午夜欧美一区二区三区在线播放| 欧美久久高跟鞋激| 久久99这里只有精品| 欧美国产禁国产网站cc| av色综合久久天堂av综合| 一区二区三区在线观看国产| 欧美三区在线观看| 老司机精品视频导航| 国产欧美中文在线| 91影院在线免费观看| 午夜精品影院在线观看| 日韩欧美三级在线| 成人精品电影在线观看| 亚洲午夜一区二区| 精品久久99ma| 99久久精品国产精品久久| 亚洲一区二区三区影院| 日韩精品中文字幕一区二区三区| 国产福利精品一区| 亚洲午夜久久久久中文字幕久| 91精品国产综合久久久久久久久久 | 欧美一区二区网站| 国产成人福利片| 亚洲一区在线视频| 337p日本欧洲亚洲大胆色噜噜| 高清成人免费视频| 午夜精品视频在线观看| 国产欧美一区二区精品忘忧草| 色一情一乱一乱一91av| 麻豆精品一区二区三区| 中文字幕在线观看不卡| 91精品国产福利| 91美女片黄在线观看91美女| 美女任你摸久久| 国产精品三级电影| 欧美高清性hdvideosex| 国产999精品久久久久久 | 成人激情动漫在线观看| 亚洲不卡在线观看| 欧美放荡的少妇| 亚洲人成亚洲人成在线观看图片| 在线视频欧美精品| 一区二区三区波多野结衣在线观看| 欧美一区二区成人6969| av毛片久久久久**hd| 911精品国产一区二区在线| 蜜臀av性久久久久蜜臀aⅴ四虎| 欧美日韩国产不卡| 亚洲国产日韩在线一区模特|