📄 function.lst
字号:
237 ES0 = 0; // Disable UART0 interrupts
238
239 while ( RI0 == 0 ) // Waiting...
240 {
241 count++; if(count==255) {SCREEN = 51; break;}
C51 COMPILER V7.20 FUNCTION 11/15/2005 18:46:54 PAGE 5
242 }
243
244 datum = SBUF0;
245 RI0 = 0;
246
247 #if UART0_INT_EN == 1 // Enable UART0 interrupts
248 ES0 = 1; // Enable UART0 interrupts
249 #endif
250
251 return( datum );
252 }
253 */
254 //-------------------------------------------------------------------------------------------------
255 // SendString
256 /*
257 void UART0SendString ( unsigned char *p )
258 {
259 ES0 = 0; // Disable UART0 interrupts
260
261 while( *p != '\0' )
262 {
263 SBUF0 = *p++;
264 while ( TI0 == 0 ) ; // Waiting...
265 TI0 = 0;
266 }
267
268 #if UART0_INT_EN == 1 // Enable UART0 interrupts
269 ES0 = 1; // Enable UART0 interrupts
270 #endif
271 }
272 */
273 //-------------------------------------------------------------------------------------------------
274 //-------------------------------------------------------------------------------------------------
275 // interrupt
276 #if UART0_INT_EN == 1 // Enable UART0 interrupts
void UART0_ISR ( void ) interrupt 4
{
RI0 = 0; // Clear Flag of RI0
ES0 = 0; // Disable UART0 interrupts
ES0 = 1; // Enable UART0 interrupts
}
#endif
287
288 //=================================================================================================
289 // UART1_Init
290 //=================================================================================================
291 // Configure the UART0 using Timer4, for <baudrate> and 8-N-1.
292 //
293 #define BAUDRATE1 115200 // Baud rate of UART1 in bps
294
295 //-------------------------------------------------------------------------------------------------
296 //
297 void UART1_Init ( void )
298 {
299 1 SCON1 = 0x50; // SCON1: Mode 1, 8-bit UART, enable RX.
300 1 // Bit 7-6: SM01,SM11
301 1 // Bit 5 : SM21
302 1 // Bit 4 : REN1
303 1 // Bit 3-2: TB81,RB81
C51 COMPILER V7.20 FUNCTION 11/15/2005 18:46:54 PAGE 6
304 1 // Bit 1-0: TI1, RI1
305 1
306 1 CKCON |= 0x40; // (CKCON.6) Timer4 uses SYSCLK as time base
307 1 PCON |= 0x10; // (PCON.4) = SMOD1 = 1
308 1
309 1 RCAP4 = -(SYSCLK/BAUDRATE1/32); // Set Timer4 reload value for baudrate
310 1 T4 = RCAP4; // initialize Timer value
311 1
312 1 T4CON |= 0x04; // (T4CON.2) = TR4, Start Timer4
313 1
314 1 #if UART1_INT_EN == 1 // Enable UART1 interrupts
EIE2 |= 0x40; // (EIE2.6) = ES1, Enable UART1 interrupts
#endif
317 1 }
318
319 //-------------------------------------------------------------------------------------------------
320 // SendByte
321 void UART1SendByte ( unsigned char datum )
322 {
323 1 EIE2 &= 0xBF; // (EIE2.6) = ES1 = 0, Disable UART1 interrupts
324 1
325 1 SCON1 &= 0xFD; // TI1 = 0;
326 1 SBUF1 = datum;
327 1 while ( (SCON1 | 0xFD) == 0xFD ) ; // Waiting...
328 1 SCON1 &= 0xFD; // TI1 = 0;
329 1
330 1 #if UART1_INT_EN == 1 // Enable UART1 interrupts
EIE2 |= 0x40; // (EIE2.6) = ES1, Enable UART1 interrupts
#endif
333 1 }
334 /*
335 //-------------------------------------------------------------------------------------------------
336 // RecvByte
337 unsigned char UART1RecvByte ( void )
338 {
339 unsigned char datum,count;
340
341 EIE2 &= 0xBF; // (EIE2.6) = ES1 = 0, Disable UART1 interrupts
342
343 // while ( (SCON1 | 0xFE) == 0xFE ) ; // Waiting...
344 while ( (SCON1 | 0xFE) == 0xFE ) // Waiting...
345 {
346 count++; if(count==255) {SCREEN = 51; break;}
347 }
348
349 datum = SBUF1;
350 SCON1 &= 0xFE; // RI1 = 0;
351
352 #if UART1_INT_EN == 1 // Enable UART1 interrupts
353 EIE2 |= 0x40; // (EIE2.6) = ES1, Enable UART1 interrupts
354 #endif
355
356 return( datum );
357 }
358
359 //-------------------------------------------------------------------------------------------------
360 // SendString
361 void UART1SendString ( unsigned char *p )
362 {
363 EIE2 &= 0xBF; // (EIE2.6) = ES1 = 0, Disable UART1 interrupts
364
365 while( *p != '\0' )
C51 COMPILER V7.20 FUNCTION 11/15/2005 18:46:54 PAGE 7
366 {
367 SBUF1 = *p++;
368 while ( (SCON1 | 0xFD) == 0xFD ); // Waiting...
369 SCON1 &= 0xFD; // TI1 = 0;
370 }
371
372 #if UART1_INT_EN == 1 // Enable UART1 interrupts
373 EIE2 |= 0x40; // (EIE2.6) = ES1, Enable UART1 interrupts
374 #endif
375 }
376 */
377 //-------------------------------------------------------------------------------------------------
378 //-------------------------------------------------------------------------------------------------
379 // interrupt
380 #if UART1_INT_EN == 1 // Enable UART1 interrupts
void UART1_ISR ( void ) interrupt 20
{
SCON1 &= 0xFE; // (SCON1.0) = RI1 = 0, Clear Flag of RI1
EIE2 &= 0xBF; // (EIE2.6) = ES1 = 0, Disable UART1 interrupts
// USBStatus = SBUF1;
EIE2 |= 0x40; // (EIE2.6) = ES1, Enable UART1 interrupts
}
#endif
391
392
C51 COMPILER V7.20 FUNCTION 11/15/2005 18:46:54 PAGE 8
NAME CLASS MSPACE TYPE OFFSET SIZE
==== ===== ====== ==== ====== ====
P0 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 0080H 1
P1 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 0090H 1
P2 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00A0H 1
ADC0CF . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00BCH 1
P3 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00B0H 1
T2 . . . . . . . . . . . . . . . . . . SFR DATA U_INT 00CCH 2
EIE2 . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00E7H 1
T4 . . . . . . . . . . . . . . . . . . SFR DATA U_INT 00F4H 2
ADC0CN . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00E8H 1
_PWM8. . . . . . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
channel. . . . . . . . . . . . . . . * REG * DATA U_CHAR 0007H 1
datum. . . . . . . . . . . . . . . . * REG * DATA U_CHAR 0005H 1
IE . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00A8H 1
PCA0CPH0 . . . . . . . . . . . . . . . SFR DATA U_CHAR 00FAH 1
PCA0CPH1 . . . . . . . . . . . . . . . SFR DATA U_CHAR 00FBH 1
PCA0CPH2 . . . . . . . . . . . . . . . SFR DATA U_CHAR 00FCH 1
PCA0CPH3 . . . . . . . . . . . . . . . SFR DATA U_CHAR 00FDH 1
PCA0CPH4 . . . . . . . . . . . . . . . SFR DATA U_CHAR 00FEH 1
PCA0CPM0 . . . . . . . . . . . . . . . SFR DATA U_CHAR 00DAH 1
PCA0CN . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00D8H 1
PCA0CPM1 . . . . . . . . . . . . . . . SFR DATA U_CHAR 00DBH 1
PCA0CPM2 . . . . . . . . . . . . . . . SFR DATA U_CHAR 00DCH 1
IP . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00B8H 1
PCA0CPM3 . . . . . . . . . . . . . . . SFR DATA U_CHAR 00DDH 1
PCA0CPM4 . . . . . . . . . . . . . . . SFR DATA U_CHAR 00DEH 1
AMX0CF . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00BAH 1
AD0INT . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00EDH 1
SMB0CN . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00C0H 1
SPI0CN . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00F8H 1
PCON . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 0087H 1
TCON . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 0088H 1
AMX0SL . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00BBH 1
GetTemperature . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
temp . . . . . . . . . . . . . . . . AUTO DATA U_LONG 0000H 4
TEMPER . . . . . . . . . . . . . . . * REG * DATA U_INT 0006H 2
DAC0H. . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00D3H 1
DAC1H. . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00D6H 1
DAC0L. . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00D2H 1
DAC1L. . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00D5H 1
TR2. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00CAH 1
RCAP2. . . . . . . . . . . . . . . . . SFR DATA U_INT 00CAH 2
RCAP4. . . . . . . . . . . . . . . . . SFR DATA U_INT 00E4H 2
SBUF1. . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00F2H 1
UART0_Init . . . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
SCON0. . . . . . . . . . . . . . . . . SFR DATA U_CHAR 0098H 1
UART1_Init . . . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
SCON1. . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00F1H 1
T2CON. . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00C8H 1
T4CON. . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00C9H 1
CKCON. . . . . . . . . . . . . . . . . SFR DATA U_CHAR 008EH 1
_UART1SendByte . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
datum. . . . . . . . . . . . . . . . * REG * DATA U_CHAR 0007H 1
ADC0 . . . . . . . . . . . . . . . . . SFR DATA U_INT 00BEH 2
AD0BUSY. . . . . . . . . . . . . . . . ABSBIT ----- BIT 00ECH 1
PSW. . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00D0H 1
_DAConvert0. . . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
datum. . . . . . . . . . . . . . . . * REG * DATA U_INT 0006H 2
C51 COMPILER V7.20 FUNCTION 11/15/2005 18:46:54 PAGE 9
NAME CLASS MSPACE TYPE OFFSET SIZE
==== ===== ====== ==== ====== ====
_ADConvert0. . . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
channel. . . . . . . . . . . . . . . * REG * DATA U_CHAR 0007H 1
configure. . . . . . . . . . . . . . * REG * DATA U_CHAR 0005H 1
_DAConvert1. . . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
datum. . . . . . . . . . . . . . . . * REG * DATA U_INT 0006H 2
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 214 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 4
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 + -