📄 function.lst
字号:
C51 COMPILER V7.20 FUNCTION 02/20/2006 10:13:57 PAGE 1
C51 COMPILER V7.20, COMPILATION OF MODULE FUNCTION
OBJECT MODULE PLACED IN .\output\function.obj
COMPILER INVOKED BY: D:\keil c51 v7.09\C51\BIN\C51.EXE function.c BROWSE DEBUG OBJECTEXTEND PRINT(.\list\function.lst) O
-BJECT(.\output\function.obj)
line level source
1 #ifndef _FUNCTION_C_
2 #define _FUNCTION_C_
3
4 #include "api.h"
5
6 void WriteChip( WORD address, BYTE value )
7 {
8 1 XBYTE[address] = value;
9 1 }
10
11 BYTE ReadChip( WORD address )
12 {
13 1 BYTE value;
14 1
15 1 value = XBYTE[address];
16 1
17 1 return value;
18 1 }
19
20 void taskDelay( WORD time )
21 {
22 1 WORD counter;
23 1 BYTE counter1;
24 1
25 1 for( counter=0; counter<time; counter++ )
26 1 for( counter1=0; counter1<200; counter1++ )
27 1 _nop_();
28 1 }
29
30 void system_watchdog( BYTE status )
31 {
32 1 gSystemInfo.reboot_flag = status;
33 1 }
34
35 BYTE disable_remote_alarm_status( void )
36 {
37 1 SYSTEM_DEVICE_STATUS xdata *psdev = &gsystemStauts;
38 1 BYTE xdata fiber;
39 1
40 1 for( fiber=0; fiber<MAX_FIBER_NOMBER; fiber++ )
41 1 {
42 2 if( !(psdev->remote.fiber_status[fiber]&FIBER_NOUSE) )
43 2 if( (psdev->remote.fiber_status[fiber]&FIBER_ALARM_STATUS) )
44 2 return ALARM;
45 2 }
46 1 return NOALARM;
47 1 }
48
49
50 #if _LCD_MENU_
51
52 /*激光关断使能,0使能,1不使能,3无操作*/
53 void SetSystemFiberCloseDown( BYTE state )
54 {
C51 COMPILER V7.20 FUNCTION 02/20/2006 10:13:57 PAGE 2
55 1 SYSTEM_DEVICE_STATUS *psdev = &gsystemStauts;
56 1 SYSTEM_INFOMATION *psys = &gSystemInfo;
57 1
58 1 psys->als_value &= ~ BIT7;
59 1 switch( state )
60 1 {
61 2 case IDB_ENABLE_LASER_CLOSE:
62 2 psdev->local.laser_close[0] = IDB_ENABLE_LASER_CLOSE;
63 2 psys->als_value |= BIT7;
64 2 break;
65 2
66 2 case IDB_DISABLEE_LASER_CLOSE:
67 2 psdev->local.laser_close[0] = IDB_DISABLEE_LASER_CLOSE;
68 2 break;
69 2 }
70 1
71 1 WriteChip( FIBERLOOP_LIGHT_ADDR, psys->als_value );
72 1 }
73
74 #if 0
void save_fiber_close( BYTE *status )
{
BYTE Lock = 0xaa;
I2C_WriteData( EEPROM_FIBER_CLOSEDOWN_ADDRESS, EEPROM_FIBER_CLOSEDOWN_LENGTH, status );
I2C_WriteData( EEPROM_FIBER_CLOSEDOWN_LOCK_ADDRESS, LOCK_LENGTH, &Lock );
}
BYTE GetSystemFiberCloseDown( BYTE end )
{
SYSTEM_DEVICE_STATUS *psdev = &gsystemStauts;
BYTE status = INVALID;
switch( end )
{
case LACAL_EQU:
status = psdev->local.laser_close[0];
break;
case REMOTE_EQU:
status = psdev->remote.laser_close[0];
break;
}
return status;
}
#endif
102
103 void SetSystemProtectMode( BYTE mode )
104 {
105 1 SYSTEM_DEVICE_STATUS *psdev = &gsystemStauts;
106 1 BYTE status;
107 1 SYSTEM_INFOMATION *psys = &gSystemInfo;
108 1
109 1 psys->setbuffer[1] &= SYSTEM_FIBER_AUTO_RC7017;
110 1 psdev->local.protect_mode = mode;
111 1 switch( mode )
112 1 {
113 2 case IDB_FIBER_AUTO:
114 2 status |= SYSTEM_FIBER_AUTO;
115 2 break;
116 2
C51 COMPILER V7.20 FUNCTION 02/20/2006 10:13:57 PAGE 3
117 2 case IDB_FIBER_MASTER:
118 2 psys->setbuffer[1] |= BIT6;
119 2 status |= SYSTEM_FIBER_MASTER;
120 2 break;
121 2
122 2 case IDB_FIBER_SLAVE:
123 2 psys->setbuffer[1] |= BIT5;
124 2 status |= SYSTEM_FIBER_SLAVE;
125 2 break;
126 2 }
127 1 psdev->local.protect_mode = mode;
128 1 WriteChip( FIBER_CONFIG_ADDR, status );
129 1 psys->sendrc7017 = SETCMDSERIAL;
130 1 psys->SetCommandCounter = 0;
131 1 }
132
133 void save_protect_mode( BYTE mode )
134 {
135 1 BYTE Lock = 0xaa;
136 1
137 1 I2C_WriteData( EEPROM_PROTECT_MODE_ADDRESS, EEPROM_PROTECT_MODE_LENGTH, &mode );
138 1 I2C_WriteData( EEPROM_PROTECT_MODE_LOCK_ADDRESS, LOCK_LENGTH, &Lock );
139 1 }
140
141 void SetSystemConstrast( BYTE value )
142 {
143 1 ConstrastSet( value );
144 1 }
145
146 void save_constrast_set( BYTE value )
147 {
148 1 BYTE Lock = 0xaa;
149 1
150 1 I2C_WriteData( EEPROM_CONSTRAST_ADDRESS, EEPROM_CONSTRAST_ADDRESS_LENGTH, &value );
151 1 I2C_WriteData( EEPROM_CONSTRAST_LOCK_ADDRESS, LOCK_LENGTH, &Lock );
152 1 }
153
154 void init_system_infomation( void )
155 {
156 1 BYTE read_lock;
157 1 BYTE status[2];
158 1
159 1 I2C_ReadData( EEPROM_FIBER_CLOSEDOWN_LOCK_ADDRESS, LOCK_LENGTH, &read_lock );
160 1 if( read_lock == LOCK )
161 1 {
162 2 I2C_ReadData( EEPROM_FIBER_CLOSEDOWN_ADDRESS, EEPROM_FIBER_CLOSEDOWN_LENGTH, status );
163 2 SetSystemFiberCloseDown( status[0] );
164 2 }
165 1 else
166 1 {
167 2 SetSystemFiberCloseDown( IDB_ENABLE_LASER_CLOSE );
168 2 }
169 1
170 1 I2C_ReadData( EEPROM_PROTECT_MODE_LOCK_ADDRESS, LOCK_LENGTH, &read_lock );
171 1 if( read_lock == LOCK )
172 1 {
173 2 I2C_ReadData( EEPROM_PROTECT_MODE_ADDRESS, EEPROM_PROTECT_MODE_LENGTH, status );
174 2 SetSystemProtectMode( status[0] );
175 2 }
176 1 else
177 1 SetSystemProtectMode( IDB_FIBER_AUTO );
178 1
C51 COMPILER V7.20 FUNCTION 02/20/2006 10:13:57 PAGE 4
179 1 /*在复位程序后,将对比度拉到最低*/
180 1 wiperDown( 200 );
181 1
182 1 I2C_ReadData( EEPROM_CONSTRAST_LOCK_ADDRESS, LOCK_LENGTH, &read_lock );
183 1 if( read_lock == LOCK )
184 1 {
185 2 I2C_ReadData( EEPROM_CONSTRAST_ADDRESS, EEPROM_CONSTRAST_ADDRESS_LENGTH, status );
186 2 if( status[0] >= 16 )
187 2 status[0] = 5;
188 2 }
189 1 else
190 1 {
191 2 status[0] = 5;
192 2 }
193 1 SetSystemConstrast( status[0] );
194 1 gSystemInfo.contrast_value = status[0];
195 1 }
196
197 #endif
198
199 void serial_interrupt( void ) interrupt SERIALO_INTERRUPT_VECTOR
200 {
201 1 BYTE receive = 0x59;
202 1
203 1 if( RI )
204 1 {
205 2 receive = SBUF;
206 2 // SBUF = receive;
207 2 }
208 1 if( TI )
209 1 return;
210 1 }
211
212 #endif
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 631 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- 1
PDATA SIZE = ---- ----
DATA SIZE = ---- 19
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -