This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

declaration for sending to the serial port

Why when i use serial port i need to declare this 2 declaration

#ifdef MONITOR51                           // Debugging with Monitor-51 needs
char code reserve [3] _at_ 0x23;         // space for serial interrupt if
#endif 
                                 // Stop Exection with Serial Intr.
#ifndef MONITOR51
  SCON  = 0x50;               // SCON: mode 1, 8-bit UART, enable rcvr
  TMOD |= 0x20;               // TMOD: timer 1, mode 2, 8-bit reload
  TH1   = 221;                // TH1:  reload value for 1200 baud @ 16MHz
  TR1   = 1;                  // TR1:  timer 1 run
  TI    = 1;                  // TI:   set TI to send first char of UART
#endif

.
What is good for ???
Why can i just write this :

  SCON  = 0x50;               // SCON: mode 1, 8-bit UART, enable rcvr
  TMOD |= 0x20;               // TMOD: timer 1, mode 2, 8-bit reload
  TH1   = 221;                // TH1:  reload value for 1200 baud @ 16MHz
  TR1   = 1;                  // TR1:  timer 1 run
  TI    = 1;                  // TI:   set TI to send first char of UART


What is the different between them ???

Thanks for the help

Mayer

Parents
  • Why when i use serial port i need to declare this 2 declaration

    You don't. You only need them if you want to use the serial port and still be able to optionally use the debugger monitor kernel (MON51).

    The debugger needs the serial port for itself, and it would wreak havoc on your debug session if you re-configured that port in the middle of a debug session. But you must configure the port yourself if you're not using the debug monitor. So the code has to behave differently, depending if the debug monitor is being used or not.

Reply
  • Why when i use serial port i need to declare this 2 declaration

    You don't. You only need them if you want to use the serial port and still be able to optionally use the debugger monitor kernel (MON51).

    The debugger needs the serial port for itself, and it would wreak havoc on your debug session if you re-configured that port in the middle of a debug session. But you must configure the port yourself if you're not using the debug monitor. So the code has to behave differently, depending if the debug monitor is being used or not.

Children
No data