📄 weigh_test.lst
字号:
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 + -