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

📄 weigh_test.lst

📁 一个基于C51开发的计价秤
💻 LST
📖 第 1 页 / 共 4 页
字号:
  19      =1  WORD Local_Height;
  20      =1  WORD Local_Latitude;
  21      =1  WORD Destination_Height;
  22      =1  WORD Destination_Latitude;
  23      =1  WORD Soft_ver_no;
  24      =1  DWORD Cal_Zero_Upper_count;
  25      =1  DWORD Cal_Zero_Lower_count; 
  26      =1  /*********************************************/
  27      =1  BOOL Timeout1_enable,Timeout2_enable;
  28      =1  BOOL Cal_flag,STA_flag,NEG_flag,NET_flag;
  29      =1  BOOL point1_on,point2_on,point3_on;
  30      =1  BOOL half_sec,One_sec,colon,high_digit;
  31      =1  BOOL unit_price_entered,factor_calcul;
  32      =1  BOOL memory_key_hold;
  33      =1  BOOL keydone,keyprocess;
  34      =1  INT8 Timeout1,Timeout2,Timeout3;
  35      =1  BYTE key_num,numeric;
  36      =1  BYTE mode,state,sales_type,op_status,report_type;
  37      =1  BYTE point1_pos,point2_pos,point3_pos;
  38      =1  WORD menu_item;
  39      =1  WORD PLU_no;
  40      =1  WORD Record_Counts;
  41      =1  WORD Weight;
  42      =1  WORD Cal_Weight;
  43      =1  WORD Tare_Weight;
  44      =1  WORD Quantity;
  45      =1  WORD Sold_Quantity;
  46      =1  WORD Select_Report_Quantity;
  47      =1  DWORD Unit_Price;
  48      =1  DWORD Total_Price;
  49      =1  DWORD Sum_Price;
  50      =1  DWORD Money;
  51      =1  FLOAT One_count;
  52      =1  FLOAT Tare_count;
  53      =1  FLOAT Zero_count;
  54      =1  FLOAT Last_count;
  55      =1  FLOAT Cal_Zero_count;
  56      =1  FLOAT Cal_Weight_count;
  57      =1  FLOAT Initial_Zero_count;
  58      =1  /*********************************************/
  59      =1  BYTE lastop;
  60      =1  FLOAT Last_value;
  61      =1  FLOAT Current_value;
  62      =1  TIME time;
  63      =1  DATE date;
  64      =1  UNION_LONG temp_LONG;
  65      =1  UNION_FLOAT temp_FLOAT;
  66      =1  UNION_INT temp_INT;
  67      =1  BYTE keybuf[3]={0x00,0x00,0x00};
  68      =1  BYTE keypre[4]={0x00,0x00,0x00,0x00};
  69      =1  BYTE icon_buf;
  70      =1  BYTE lcd1_buf[5];
  71      =1  BYTE lcd2_buf[7];
  72      =1  BYTE lcd3_buf[7];
  73      =1  BYTE LCD_RAM[20];
  74      =1  BYTE PLU_buf[PLU_LEN];
  75      =1  BYTE Record_buf[RECORD_LEN];
  76      =1  /*********************************************
  77      =1  ***************FUNCTION PROTOTYPES************
  78      =1  *********************************************/
  79      =1  VOID Power_On_Reset();
  80      =1  VOID Power_Down();
C51 COMPILER V7.50   WEIGH_TEST                                                            05/04/2006 10:55:56 PAGE 11  

  81      =1  VOID Input_Code();
  82      =1  VOID Calibration();
  83      =1  VOID Initialization();
  84      =1  VOID Sales();
  85      =1  VOID Total();
  86      =1  VOID Payback();
  87      =1  VOID PLU_Setup();
  88      =1  VOID Time_Setup();
  89      =1  VOID Beep_and_Light_Setup();
  90      =1  VOID Calculator();
  91      =1  VOID Reports();
  92      =1  VOID Download();
  93      =1  VOID Download_Option();
  94      =1  VOID Print_Cancel();
  95      =1  /****************Sub function****************/
  96      =1  extern VOID Beep();
  97      =1  extern VOID Alarm();
  98      =1  extern VOID Delay(WORD n);
  99      =1  extern VOID Wait_n_s(BYTE n);
 100      =1  extern VOID Wait_n_ms(BYTE n);
 101      =1  extern VOID Float_Format(FLOAT f);
 102      =1  extern VOID Calculator_Operate(BYTE token);
 103      =1  extern VOID Load_PLU_to_LCD_Buf(WORD temp);
 104      =1  extern VOID Load_Record_to_LCD_Buf(WORD temp);
 105      =1  extern BOOL Password_Compare(BYTE *password,BYTE *lcd_buf);
 106      =1  /****************Adc function****************/
 107      =1  extern VOID CS5532_init();
 108      =1  extern DWORD Get_AD_Convert_Data();
 109      =1  /***************Scale function***************/
 110      =1  extern BOOL Cal_Zero_Count_Check();
 111      =1  extern VOID Calculate_One_Count();
 112      =1  extern VOID Monitor_Weigh_Scale_On_Calibration_Mode();
 113      =1  extern VOID Monitor_Weigh_Scale();
 114      =1  extern BOOL Maximum_Capacity_Check();
 115      =1  extern BOOL Zero_Setting_When_Power_Up();
 116      =1  extern VOID Zero_Setting_When_Zero_Key_Pressed();
 117      =1  extern VOID Tare_Operation_When_Tare_Key_Pressed();
 118      =1  /***************Clock function***************/
 119      =1  extern BOOL Clock_Set_Save();
 120      =1  /***************RS232 function***************/
 121      =1  extern VOID RS232_init();
 122      =1  extern BOOL Package_EOF_Check();
 123      =1  extern BOOL Package_Header_Check();
 124      =1  extern VOID Receive_PLU_Data_from_PC();
 125      =1  extern VOID Print_Record(BYTE print_type);
 126      =1  extern VOID Receive_Option_Table_from_PC(BYTE *pt);
 127      =1  /***************Eeprom function**************/
 128      =1  extern VOID Read_Option_Table(BYTE *pt);
 129      =1  extern VOID Read_Cal_Password(BYTE *pt);
 130      =1  extern VOID Read_Cal_Zero_limit(BYTE *pt);
 131      =1  extern VOID Save_Option_Table(BYTE *pt);
 132      =1  extern VOID PLU_Save(WORD temp);
 133      =1  extern VOID Save_Option_Param(BYTE *pt);
 134      =1  extern VOID Print_Select_Report();
 135      =1  extern VOID Save_Cal_One_count(FLOAT temp);
 136      =1  extern VOID Save_Cal_Zero_count(FLOAT temp);
 137      =1  extern VOID Record_Save(WORD temp);
 138      =1  extern VOID Amount_Select_Report_Quantity();
 139      =1  extern VOID Save_PLU_Setup_form_Disp_Buf(WORD temp);
 140      =1  /**************Display function**************/
 141      =1  extern VOID Display();
 142      =1  extern VOID Clock_Flash_Display();
C51 COMPILER V7.50   WEIGH_TEST                                                            05/04/2006 10:55:56 PAGE 12  

 143      =1  extern VOID Set_AC_Icon();
 144      =1  extern VOID Cls_AC_Icon();
 145      =1  extern VOID Set_BAT_Icon();
 146      =1  extern VOID Cls_BAT_Icon();
 147      =1  extern VOID Set_NEG_Icon();
 148      =1  extern VOID Cls_NEG_Icon();
 149      =1  extern VOID Set_NET_Icon();
 150      =1  extern VOID Cls_NET_Icon();
 151      =1  extern VOID Set_STA_Icon();
 152      =1  extern VOID Cls_STA_Icon();
 153      =1  extern VOID Cls_Icon_Buf();
 154      =1  extern VOID Set_BEEP_Icon();
 155      =1  extern VOID Cls_BEEP_Icon();
 156      =1  extern VOID Set_ZERO_Icon();
 157      =1  extern VOID Cls_ZERO_Icon();
 158      =1  extern VOID Cls_Weighing_Icon();
 159      =1  extern VOID Set_Logo_Display();
 160      =1  extern VOID Set_SCALE_Display();
 161      =1  extern VOID Clock_Display_Update();
 162      =1  extern VOID Set_INPUT_CODE_Display();
 163      =1  extern VOID Set_OVER_On_Lcd1_Display();
 164      =1  extern VOID Set_EEP_On_Lcd1_Display();
 165      =1  extern VOID Set_NOCAL_On_Lcd1_Display();
 166      =1  extern VOID Set_ERROR_On_Lcd2_Display();
 167      =1  extern VOID Set_OVER_On_Lcd3_Display();
 168      =1  extern VOID Set_PLUS_On_Lcd2_Display();
 169      =1  extern VOID Set_TOTAL_On_Lcd2_Display();
 170      =1  extern VOID Set_SEL_PLU_On_Lcd2_Display();
 171      =1  extern VOID Set_INPUT_PRICE_On_Lcd2_Display();
 172      =1  extern VOID Set_ERR_n_On_Lcd1_Display(BYTE n);
 173      =1  extern VOID Set_Calcul_Result_Display(BYTE *pt);
 174      =1  extern VOID Set_One_count_Display(BYTE temp);
 175      =1  extern VOID Set_PLU_no_Display(WORD temp);
 176      =1  extern VOID Set_Ver_no_Display(WORD temp);
 177      =1  extern VOID Set_Weight_Display(WORD temp);
 178      =1  extern VOID Set_Cal_Weight_Display(WORD temp);
 179      =1  extern VOID Set_Quantity_Display(WORD temp);
 180      =1  extern VOID Set_Sold_Quantity_Display(WORD temp);
 181      =1  extern VOID Set_Money_Display(DWORD temp);
 182      =1  extern VOID Set_Unit_Price_Display(DWORD temp);
 183      =1  extern VOID Set_Sum_Price_Display(DWORD temp);
 184      =1  extern VOID Set_Total_Price_Display(DWORD temp);
 185      =1  extern WORD Get_Quantity_from_display_buf();
 186      =1  extern DWORD Get_Money_from_display_buf();
 187      =1  extern WORD Get_Cal_Weight_from_display_buf();
 188      =1  extern VOID LCD_Init(BYTE mode,BYTE glitter);
 189      =1  extern DWORD Get_Unit_Price_from_display_buf();
 190      =1  extern VOID Set_Lcd1_Buf(CHAR c,BYTE pos,BYTE cnt);
 191      =1  extern VOID Set_Lcd2_Buf(CHAR c,BYTE pos,BYTE cnt);
 192      =1  extern VOID Set_Lcd3_Buf(CHAR c,BYTE pos,BYTE cnt);
 193      =1  extern VOID Set_Select_Report_Quantity_Display(DWORD temp);
 194      =1  extern VOID Lcd_Buf_Left_Shift(BYTE *lcd_buf,BYTE n,BYTE num);
   6          main()
   7          {
   8   1              INT16 i;
   9   1              CS5532_init();
  10   1              for(i=0;i<5;i++)
  11   1                      Single_Convert();
*** WARNING C206 IN LINE 11 OF WEIGH_TEST.C: 'Single_Convert': missing function-prototype
  12   1              Tare_count=0;
  13   1              for(i=0;i<5;i++)
  14   1              {
C51 COMPILER V7.50   WEIGH_TEST                                                            05/04/2006 10:55:56 PAGE 13  

  15   2                      Single_Convert();
  16   2                      Tare_count+=Get_Convert_Data();
*** WARNING C206 IN LINE 16 OF WEIGH_TEST.C: 'Get_Convert_Data': missing function-prototype
  17   2              }
  18   1              Tare_count=Tare_count/5;
  19   1              One_count=0x8f;
  20   1              Cal_flag=TRUE;
  21   1              while(1)
  22   1              {
  23   2                      Single_Convert();
  24   2                      Monitor_Weigh_Scale();
  25   2                      if(NEG_flag)
  26   2                              printf("Current Weight is -%d g\n",Weight);
  27   2                      else
  28   2                              printf("Current Weight is %d g\n",Weight);
  29   2              }
  30   1      }
C51 COMPILER V7.50   WEIGH_TEST                                                            05/04/2006 10:55:56 PAGE 14  

ASSEMBLY LISTING OF GENERATED OBJECT CODE


             ; FUNCTION Com000F (BEGIN)
0000         L?0016:
0000 C3                CLR     C
0001 900000      R     MOV     DPTR,#i+01H
0004 E0                MOVX    A,@DPTR
0005 9405              SUBB    A,#05H
0007 900000      R     MOV     DPTR,#i
000A E0                MOVX    A,@DPTR
000B 6480              XRL     A,#080H
000D 9480              SUBB    A,#080H
000F 22                RET     
             ; FUNCTION Com000F (END)

             ; FUNCTION main (BEGIN)
                                           ; SOURCE LINE # 6
                                           ; SOURCE LINE # 7
                                           ; SOURCE LINE # 9
0000 120000      E     LCALL   CS5532_init
                                           ; SOURCE LINE # 10
0003 E4                CLR     A
0004 900000      R     MOV     DPTR,#i
0007 F0                MOVX    @DPTR,A
0008 A3                INC     DPTR
0009 F0                MOVX    @DPTR,A
000A         ?C0001:
                                           ; SOURCE LINE # 11
000A 120000      E     LCALL   Single_Convert
000D 900000      R     MOV     DPTR,#i+01H
0010 E0                MOVX    A,@DPTR
0011 04                INC     A
0012 F0                MOVX    @DPTR,A
0013 7006              JNZ     ?C0012
0015 900000      R     MOV     DPTR,#i
0018 E0                MOVX    A,@DPTR
0019 04                INC     A
001A F0                MOVX    @DPTR,A
001B         ?C0012:
001B 120000      R     LCALL   L?0016
001E 40EA              JC      ?C0001
0020         ?C0002:
                                           ; SOURCE LINE # 12
0020 900000      R     MOV     DPTR,#Tare_count
0023 120000      E     LCALL   ?C?LSTKXDATA
0026 00                DB      00H
0027 00                DB      00H
0028 00                DB      00H
0029 00                DB      00H
                                           ; SOURCE LINE # 13
002A E4                CLR     A
002B 900000      R     MOV     DPTR,#i
002E F0                MOVX    @DPTR,A
002F A3                INC     DPTR
0030 F0                MOVX    @DPTR,A
0031         ?C0004:
                                           ; SOURCE LINE # 14
                                           ; SOURCE LINE # 15
0031 120000      E     LCALL   Single_Convert
                                           ; SOURCE LINE # 16
0034 900000      R     MOV     DPTR,#Tare_count
C51 COMPILER V7.50   WEIGH_TEST                                                            05/04/2006 10:55:56 PAGE 15  

0037 E0                MOVX    A,@DPTR
0038 F8                MOV     R0,A
0039 A3                INC     DPTR
003A E0                MOVX    A,@DPTR
003B F9                MOV     R1,A
003C A3                INC     DPTR
003D E0                MOVX    A,@DPTR
003E FA                MOV     R2,A
003F A3                INC     DPTR
0040 E0                MOVX    A,@DPTR
0041 FB                MOV     R3,A
0042 C000              PUSH    AR0
0044 C001              PUSH    AR1
0046 C002              PUSH    AR2

⌨️ 快捷键说明

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