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

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

?? define data struct.lst

?? 一個充電控制器的完整單片機程序
?? LST
?? 第 1 頁 / 共 4 頁
字號:
C51 COMPILER V6.11.4C,  DEFINE DATA STRUCT        04/01/103  02:34:47  PAGE  1

QCW(0x00002D1A)

WIN32 C51 COMPILER V6.11.4C, COMPILATION OF MODULE DEFINE DATA STRUCT
OBJECT MODULE PLACED IN d:\solar_charge_controller\scca\define data struct.obj
COMPILER INVOKED BY: C51.EXE D:\SOLAR_CHARGE_CONTROLLER\SCCA\DEFINE DATA STRUCT.
            -C OBJECT(D:\SOLAR_CHARGE_CONTROLLER\SCCA\DEFINE DATA STRUCT.OBJ) PI
            -N(D:\FSI\INC) NOAM PR(D:\SOLAR_CHARGE_CONTROLLER\SCCA\DEFINE DATA S
            -TRUCT.LST) CD SB OE(1) SM FP(NOFLOAT) PW(80) 

stmt level    source
   1          /*
   2          */
   3          #include <absacc.h> 
   4          #include <stdlib.h>
   5          #include <AT89X52.H>
   6          #include <INTRINS.h>
   7          #include "charger.h"
   8          #include "lcdp.h"
   9          
  10          //
  11          //-----------------------------
  12          //define data struct
  13          
  14          
  15          //-----------------------------
  16          //System flag,char of control;
  17          //-----------------------------
  18          static bit bdata boostflag=1;
  19          static unsigned char idata switchchar=0x3f;
  20          
  21          /*
  22          //init_system_work_point , counter rate flow
  23          */
  24          
  25          #define BENCHMARK 5
  26          #define AMPLIFICATORY 10//predefine 0.1 proccess, amplificatory 10
            -
  27          #define ADMAX 1024
  28          
  29          static unsigned char xdata  str[0x1800] _at_ 0x4000;
  30          void init_system_work_point(void)
  31          {
  32   1        unsigned char idata i;
  33   1        link xdata head;
  34   1        link xdata new;
  35   1        link xdata pointer;
  36   1      
  37   1        for(i=0;i<7;i++)
  38   1        {
  39   2          sys[i]=dtab[2][i];//default=2,system is 220V
  40   2        }  
  41   1        for(i=0;i<5;i++)//i=7
  42   1      	{
  43   2      		sys[i+7]=stab[i][2];
  44   2      	}
  45   1        sys[12]=0;//tested temperature
  46   1      
  47   1        	init_mempool((void *)str,0x1800L);//&XBYTE[0x4000]
  48   1      
  49   1          head=(link)malloc(sizeof(daydata));
  50   1          if(head==0){text(0x90,"Head Null");delay(1000);return;}

WARNING 451 IN LINE 50 OF define data struct.c : Assignment between pointers to
            - char signed and unsigned
  51   1      		text(0x80,"malloc is ok!");

WARNING 451 IN LINE 51 OF define data struct.c : Assignment between pointers to
            - char signed and unsigned
  52   1      		head->next=NULL;
  53   1         	head->up=NULL;
  54   1      		delay(1000);
  55   1      
  56   1          pointer=head;
  57   1      		for(i=0;;i++)
  58   1      		{
  59   2      				new=(link)malloc(sizeof(daydata));
  60   2      				if(new==0)break;
  61   2            	new->next=NULL;
  62   2            	new->up=NULL;
  63   2            	pointer->next=new;
  64   2            	new->up=pointer;
  65   2            	pointer=new;
  66   2          };
  67   1          pointer->next=head;
  68   1          head->up=pointer;
  69   1      
  70   1      		WC_LCD(0x90);
  71   1      		WD_LCD(i);
  72   1      		delay(2000);
  73   1      
  74   1          //The moving header
  75   1          today.next=head;
  76   1          today.up=pointer; //is head->up;
  77   1      
  78   1        init_rate();
  79   1      
  80   1      }
  81          
  82          static void init_rate(void)
  83          {
  84   1       unsigned int data i;
  85   1       crate.temperature=100*BENCHMARK*AMPLIFICATORY/ADMAX;
  86   1       i=sys[11];
  87   1       crate.volatage=i*BENCHMARK*AMPLIFICATORY/ADMAX;
  88   1       i=sys[8];
  89   1       crate.discharge=i*BENCHMARK*AMPLIFICATORY/ADMAX;
  90   1       i=sys[9];
  91   1       crate.charge=i*BENCHMARK*AMPLIFICATORY/ADMAX;
  92   1      }
  93          
  94          /*
  95          //intput data from tlc1543,changed and saved
  96          */
  97          void getadin(void)
  98          {
  99   1        unsigned char data i;
 100   1      
 101   1        for(i=0;i<6;i++)
 102   1        {
 103   2         adin[i]=tlc1543(i)*crate.charge;
 104   2        } 
 105   1        adin[6]=tlc1543(6)*crate.discharge;
 106   1        adin[7]=tlc1543(8)*crate.temperature;
 107   1        adin[8]=tlc1543(9)*crate.volatage;//9way
 108   1      }
 109          
 110          /*
 111          //count today working result
 112          */
 113          void account(void)
 114          {
 115   1      	if(tlong%60==0)
 116   1      	//count Ah, per 10s	//count max & min per 10s 
 117   1      	{char i;
 118   2      		for(i=0;i<9;i++)
 119   2      		{
 120   3      			if(i<7)
 121   3      			{ //save current integral value
 122   4      				today.work[i*2+1]+=(today.work[i*2+1]+adin[i])/(60*2);
 123   4      			}
 124   3      			else 
 125   3      			{//save max & min value
 126   4      				if(adin[i]>today.work[i*2+1])today.work[i*2+1]=adin[i]; 
 127   4      				else if(adin[i]<today.work[2*i])today.work[i*2]=adin[i];
 128   4      			}
 129   3      			//only save max value
 130   3      			if(adin[i]>today.work[2*i])today.work[i*2]=adin[i];
 131   3      		}
 132   2      	}
 133   1      }
 134          
 135          /*
 136          //output control,switch operation
 137          */
 138          
 139          #define boostvolatage    sys[0]
 140          #define booststart       sys[1]
 141          #define floatvolatage    sys[2]
 142          #define floatrecover     sys[3]
 143          #define moterstart       sys[4]
 144          #define lowlevel         sys[5]
 145          //alarm overload
 146          #define overload         sys[6]
 147          #define dischargecurrent 13
 148          
 149          //-----------------------------
 150          
 151          #pragma DISABLE
 152          
 153          static void controlswitch (unsigned char i)
 154          {
 155   1      	P2_7=1;
 156   1      	_nop_();
 157   1        P0=i;
 158   1      	_nop_();
 159   1        P2_7=0;
 160   1      	_nop_();
 161   1      	_nop_();
 162   1      }
 163          //-----------------------------
 164          static void alarm_overload()
 165          {
 166   1      }
 167          //-----------------------------
 168          
 169          void control(void)
 170          {
 171   1      	unsigned int data t,b;
 172   1      	t=today.work[dischargecurrent];
 173   1      	if(t>overload)alarm_overload();
 174   1      
 175   1      	t=adin[8];// volatage of storage battery
 176   1      	b=AMPLIFICATORY*boostvolatage;//boost charge volatage 
 177   1      	if(t>b)
 178   1      	{
 179   2      		 switchchar=0x0;
 180   2      	   controlswitch(switchchar);//all close & wcharge=0
 181   2      	   boostflag=0;
 182   2      	}
 183   1      	else
 184   1        if(boostflag)
 185   1      	{
 186   2            b=AMPLIFICATORY*booststart;//boost charge start
 187   2            if(t>b);
 188   2            else 
 189   2      		 {
 190   3      				switchchar=0x3f;
 191   3              controlswitch(switchchar);//6 way start
 192   3              boostflag=1;
 193   3              b=AMPLIFICATORY*moterstart;
 194   3      
 195   3              if(t>b);
 196   3              else 
 197   3      			 {
 198   4      							 switchchar=0x7f;
 199   4                     controlswitch(switchchar);//6 way start and motor s
            -tart
 200   4                     b=AMPLIFICATORY*lowlevel;
 201   4      
 202   4                     if(t>b);
 203   4                     else {switchchar=0xff;controlswitch(switchchar);}//
            -not enough volatage alarm,6 way start and motor start
 204   4                   }
 205   3               }
 206   2      	}
 207   1      	else 
 208   1      	{
 209   2            b=AMPLIFICATORY*floatvolatage;
 210   2            if(t>b)
 211   2      	  {
 212   3      		switchchar &= 0x3f;
 213   3      		switchchar>>=1;
 214   3      		controlswitch(switchchar);
 215   3      	  }//close 1 way ,stop motor
 216   2            else 
 217   2      	  {
 218   3              b=AMPLIFICATORY*floatrecover;
 219   3              if(t>b);
 220   3      		else {switchchar=0x3f;controlswitch(switchchar);}
 221   3            }
 222   2          }
 223   1      }
 224          
C51 COMPILER V6.11.4C,  DEFINE DATA STRUCT        04/01/103  02:34:47  PAGE  2

ASSEMBLY LISTING OF GENERATED OBJECT CODE

            ; FUNCTION init_system_work_point (BEGIN)
                                           ; SOURCE LINE # 37 
0000 7900    R      MOV    R1,#i
0002 7700           MOV    @R1,#000H
0004         ?FOR3:
                                           ; SOURCE LINE # 39 
0004 7900    R      MOV    R1,#i
0006 E7             MOV    A,@R1
0007 23             RL     A
0008 2400    R      ADD    A,#LOW (dtab)+01CH
000A F582           MOV    DPL,A
000C E4             CLR    A
000D 3400    R      ADDC   A,#HIGH (dtab)+01CH
000F F583           MOV    DPH,A
0011 E4             CLR    A
0012 93             MOVC   A,@A+DPTR
0013 FC             MOV    R4,A
0014 7401           MOV    A,#001H
0016 93             MOVC   A,@A+DPTR
0017 FD             MOV    R5,A
0018 E7             MOV    A,@R1
0019 23             RL     A
001A 2400    R      ADD    A,#LOW (sys)
001C F582           MOV    DPL,A
001E E4             CLR    A
001F 3400    R      ADDC   A,#HIGH (sys)
0021 F583           MOV    DPH,A
0023 EC             MOV    A,R4
0024 F0             MOVX   @DPTR,A
0025 A3             INC    DPTR
0026 ED             MOV    A,R5
0027 F0             MOVX   @DPTR,A
                                           ; SOURCE LINE # 37 
0028 07             INC    @R1
0029 B707D8         CJNE   @R1,#007H,?FOR3
                                           ; SOURCE LINE # 41 
002C 7900    R      MOV    R1,#i
002E 7700           MOV    @R1,#000H
0030         ?FOR4:
                                           ; SOURCE LINE # 43 
0030 7900    R      MOV    R1,#i
0032 E7             MOV    A,@R1
0033 23             RL     A
0034 23             RL     A
0035 23             RL     A
0036 2400    R      ADD    A,#LOW (stab)+004H
0038 F582           MOV    DPL,A
003A E4             CLR    A
003B 3400    R      ADDC   A,#HIGH (stab)+004H
003D F583           MOV    DPH,A
003F E4             CLR    A
0040 93             MOVC   A,@A+DPTR
0041 FC             MOV    R4,A
0042 7401           MOV    A,#001H
0044 93             MOVC   A,@A+DPTR
0045 FD             MOV    R5,A
0046 E7             MOV    A,@R1
0047 23             RL     A
0048 2400    R      ADD    A,#LOW (sys)+00EH
004A F582           MOV    DPL,A
004C E4             CLR    A
004D 3400    R      ADDC   A,#HIGH (sys)+00EH
004F F583           MOV    DPH,A
0051 EC             MOV    A,R4
0052 F0             MOVX   @DPTR,A
0053 A3             INC    DPTR
0054 ED             MOV    A,R5
0055 F0             MOVX   @DPTR,A
                                           ; SOURCE LINE # 37 
0056 07             INC    @R1
0057 B705D6         CJNE   @R1,#005H,?FOR4
                                           ; SOURCE LINE # 45 
005A 900000  R      MOV    DPTR,#sys+018H
005D E4             CLR    A
005E FD             MOV    R5,A
005F F0             MOVX   @DPTR,A
0060 A3             INC    DPTR
0061 F0             MOVX   @DPTR,A
                                           ; SOURCE LINE # 47 
0062 7A40           MOV    R2,#HIGH (str)
0064 8A06           MOV    AR6,R2
0066 7900           MOV    R1,#LOW (str)
0068 8907           MOV    AR7,R1
006A 7C18           MOV    R4,#018H
006C 120000  R      LCALL  _init_mempool
                                           ; SOURCE LINE # 49 
006F E4             CLR    A
0070 FE             MOV    R6,A
0071 7F2D           MOV    R7,#02DH
0073 120000  R      LCALL  _malloc
0076 EB             MOV    A,R3
0077 900000  R      MOV    DPTR,#head
007A F0             MOVX   @DPTR,A
007B A3             INC    DPTR
007C EA             MOV    A,R2
007D F0             MOVX   @DPTR,A
007E A3             INC    DPTR
007F E9             MOV    A,R1
0080 F0             MOVX   @DPTR,A
                                           ; SOURCE LINE # 50 
0081 701F           JNZ    ?NXT12
0083 900000  R      MOV    DPTR,#head+01H
0086 E0             MOVX   A,@DPTR

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩三级中文字幕| 91精品国产综合久久婷婷香蕉| 亚洲午夜久久久久久久久久久 | 狠狠色丁香久久婷婷综| 亚洲人成电影网站色mp4| 日韩欧美国产一区二区在线播放 | 91蜜桃免费观看视频| 开心九九激情九九欧美日韩精美视频电影| **欧美大码日韩| 久久久99精品免费观看不卡| 在线成人免费视频| 91在线porny国产在线看| 国产精品一区专区| 青青草国产精品亚洲专区无| 一个色在线综合| 国产亚洲精品资源在线26u| 欧美日韩精品一区二区在线播放| 波多野结衣精品在线| 国产久卡久卡久卡久卡视频精品| 蜜臀av性久久久久蜜臀aⅴ四虎 | 国产欧美一区二区在线观看| 欧美本精品男人aⅴ天堂| 欧美日韩国产另类一区| 色婷婷久久一区二区三区麻豆| 成人激情动漫在线观看| 国产精一区二区三区| 国内久久精品视频| 免费成人你懂的| 日韩中文字幕麻豆| 亚洲高清免费视频| 午夜伦欧美伦电影理论片| 亚洲精品中文字幕在线观看| 亚洲三级在线免费观看| 亚洲人精品午夜| 伊人一区二区三区| 亚洲久本草在线中文字幕| 亚洲精品水蜜桃| 亚洲欧美日韩国产手机在线| 亚洲乱码国产乱码精品精可以看| 1区2区3区精品视频| 亚洲色图第一区| 一区二区三区在线观看网站| 亚洲一区二区三区三| 日韩精品1区2区3区| 青青草原综合久久大伊人精品 | 天堂一区二区在线免费观看| 日韩高清一级片| 成人福利电影精品一区二区在线观看| 国产精品自拍一区| 成人在线综合网| 99re视频精品| 欧美日韩一区二区欧美激情 | 国产精品素人一区二区| 欧美激情在线一区二区| 中文字幕一区二区三区不卡| 夜夜亚洲天天久久| 午夜一区二区三区视频| 日本不卡中文字幕| 国产制服丝袜一区| 成人av电影在线| 欧美性大战xxxxx久久久| 欧美电影一区二区| 久久精品这里都是精品| 亚洲乱码精品一二三四区日韩在线| 婷婷综合久久一区二区三区| 国内精品在线播放| 91碰在线视频| 日韩一级欧美一级| 国产精品成人免费| 午夜视频久久久久久| 国产美女精品在线| 色婷婷av一区二区三区大白胸| 91精品久久久久久久99蜜桃| 国产网站一区二区| 亚洲一卡二卡三卡四卡无卡久久| 日韩va欧美va亚洲va久久| 成人美女视频在线观看| 在线观看91精品国产麻豆| 久久精品一区八戒影视| 亚洲一区二区三区四区的| 国产美女久久久久| 欧美性猛片xxxx免费看久爱| 久久久午夜精品理论片中文字幕| 亚洲狠狠丁香婷婷综合久久久| 青娱乐精品在线视频| 91免费版在线看| 久久网站热最新地址| 亚洲在线观看免费视频| 国产在线精品一区二区不卡了 | 欧美三级一区二区| 日本一区二区三区国色天香| 香蕉久久夜色精品国产使用方法 | 国产精品国产三级国产a| 青青草成人在线观看| 一本色道a无线码一区v| 久久夜色精品一区| 日韩电影免费在线| 99re亚洲国产精品| 久久久久国产精品麻豆ai换脸| 亚洲超碰97人人做人人爱| 国产高清精品在线| 日韩一级视频免费观看在线| 一区二区三区产品免费精品久久75| 国产一区二区三区免费| 欧美高清你懂得| 亚洲乱码精品一二三四区日韩在线 | 日韩免费一区二区三区在线播放| 亚洲精品国产无天堂网2021| 风流少妇一区二区| 精品国产乱码久久久久久久| 午夜精品一区二区三区免费视频| eeuss国产一区二区三区| 久久综合久久鬼色| 蜜臀精品久久久久久蜜臀| 欧美日韩在线亚洲一区蜜芽| 综合色天天鬼久久鬼色| 国产成人免费在线| 久久尤物电影视频在线观看| 日本伊人午夜精品| 欧美丰满少妇xxxxx高潮对白| 一区二区三区蜜桃| 色综合久久中文综合久久牛| 自拍偷拍欧美激情| 97成人超碰视| 国产精品久久久久四虎| 粉嫩aⅴ一区二区三区四区 | 国产精品网站在线| 国产激情精品久久久第一区二区 | 亚洲午夜私人影院| 欧洲在线/亚洲| 亚洲美女免费视频| 色狠狠综合天天综合综合| 亚洲色图第一区| 色婷婷亚洲精品| 亚洲国产精品视频| 在线观看中文字幕不卡| 亚洲韩国一区二区三区| 欧美午夜电影一区| 天堂午夜影视日韩欧美一区二区| 欧美区在线观看| 免费三级欧美电影| 亚洲精品在线免费观看视频| 国模少妇一区二区三区| 久久精品欧美一区二区三区麻豆| 国产精品一二三四| 国产精品久久久久久久久久免费看 | 精品久久人人做人人爰| 国内精品久久久久影院色 | 亚洲少妇30p| 欧洲精品视频在线观看| 婷婷成人激情在线网| 欧美一区二区不卡视频| 精品一区二区三区蜜桃| 国产精品欧美一级免费| 一道本成人在线| 日韩不卡一区二区| 久久综合久久鬼色中文字| 99精品视频在线观看免费| 尤物在线观看一区| 日韩一区二区三区在线视频| 国产传媒欧美日韩成人| 亚洲精品免费视频| 日韩欧美国产麻豆| 成人黄色在线视频| 亚洲小说春色综合另类电影| 日韩欧美国产一二三区| 成人av免费在线| 日韩综合在线视频| 中文字幕免费不卡在线| 欧美日韩国产系列| 国产精品99久久久久| 亚洲夂夂婷婷色拍ww47| xvideos.蜜桃一区二区| 一本色道久久加勒比精品| 蜜臀久久久99精品久久久久久| 国产精品美日韩| 欧美精品粉嫩高潮一区二区| 国产98色在线|日韩| 亚洲二区在线视频| 久久久综合网站| 欧美吞精做爰啪啪高潮| 国产精品99久久久久久久vr| 亚洲午夜精品在线| 国产视频一区二区在线观看| 欧美在线不卡视频| 粉嫩高潮美女一区二区三区| 亚洲午夜激情av| 中文字幕乱码亚洲精品一区| 欧美精品777| 91美女片黄在线观看91美女| 99久久精品国产一区二区三区 | 一区二区三区视频在线观看| 日韩欧美中文字幕制服| 色网站国产精品| 国产精品性做久久久久久| 视频一区欧美日韩| 国产精品久久久久久久午夜片| 日韩一区二区三区在线视频| 色婷婷久久一区二区三区麻豆| 国产91精品欧美|