Shelezyaka Planet - RS-232 interface for Spectrum.


  ┌──────────────────────────────────────────────────────────┐
  │  ####  ###  ### #  # #### #####  ###                     │  │  #  # #  # #  # #  # #      #   #  #                     │  │  #  # #  # #### #### ###    #   ####                     │  │  #  # #  # #  # #  # #      #   #  #                     │  │  #  # #  # #  # #  # ####   #   #  #                     │  │                                                          │  │                #   # ####  ### ####  ##   ### #  #  ###  │  │                # # # #    #  # #    #  # #  # # #  #  #  │  │                # # # ###  #  # ###    #   ### ##   ####  │  │                # # # #    #  # #    #  #  # # # #  #  #  │  │                ##### #### #  # ####  ##  #  # #  # #  #  │  └─────────────────────────────────── ───────────────────────┘ ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓

 RS-232 INTERFACE FOR SPECTRUM COMPUTERS
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
(c) KOHASOFT'1991
(c) UАЗPRQ'1992
 ending

 Interface functionality can be checked
from the terminal program itself when connecting to each other
pins TxD-RxD.   In this case, the display should show
stable echo of characters entered from the terminal. If the setting
BBS1 is produced at 8-bit, then you need to check all modes
terminal: RUS, LAT, ALTER. In alternative encoding mode
IBM standard there should be no failures or incorrectly received
characters, if this is observed, then you should try replacing
KPS8OBB51 or reduce the baud rate. In the complete absence of echo
on the screen, as well as incomplete functionality of the interface should
check ZX-SPECTRUM, for example like this:
  1) First of all it is necessarymake sure that no one is using
There are no “conflicts” with other ports in the RS-232 address
input/output (of course without connecting RS-232 to the data bus).
For example, with the following BASIC program:

 10 READ PORT
 20 CLS : PRINT " Checking port=";PORT;" to input"
        30 FOR I=0 TO 20
        40 PRINT IN PORT
        50 NEXT I
        60 PRINT "Press any key to check next port"
        70 GOTO 10
        80 DATA 247,215,183,151,239,207

 When checking on all ports, it should be read and printed on
screen value 255 (#FF).  Unfortunately, this is how you can check
only input ports, although output port states in this
case are not so important, nevertheless they are checked by programs
means is not possible here. If there are concerns
in undesirable effects on the SD or still the byte is not checked
equals 255, you need to monitor the CS inputs with an oscilloscope or
EO of the remaining I/O ports of the computer (line 40 for
output change: 40 OUT PORT) while the program is running.
Activation of these inputs will indicate that
The decoder of these devices does not work correctly.
  2) By connecting the RS-232 interface to the system bus and
by initializing the terminal program (Term91v2)necessary
make sure that the KPS8OVI5Z timer is configured in the DPKD mode to
desired division factor: pulse frequency at output OUTO
equal to Fclk(2000000 Hz)/K division (or Baud Rate*16). For
1200 baud, you can observe pulses with a frequency of 19200 Hz (period
52 ns) and duration 1/2000000 (0.5 ns).  In the absence
division, you should check all signals at the timer input and
try reducing the supply voltage (see above).
  3) The KPS8OBB51(A) transceiver usually works normally when
given clock frequency in the absence of installation errors. When
entering the exchange mode in the program: ON-LINE, should not light up
the inscription ERROR in the upper right corner of the status line "Term91v2",
even if no device is connected to RS-232. On exits
TxD, DTR should be at log level."1";  on RTS -
log."0". At the corresponding receiving inputs - active state
RxD, DSR, CTS interface - log "0" (with peripherals disabled).
A different state of the m/circuit pins indicates its
inoperability at the moment, or a buffer malfunction
K561PUCH.  In ON-LINE mode, when you press the output keys
TxD must be observed stable parcels transmitted
symbols with a period equal to the exchange rate, and the output is RTS
periodic appearance of log "1" when the receiving buffer is full
BBS1 (ifpins RxD-TxD and
'echo' is displayed on the terminal screen). Unfortunately the program
does not control the DTR output properly, so using it
in the full RS-232 exchange protocol it is difficult. This error may
be eliminated by software adjustments if
such a need will arise for the user.
  If all checks are successful, you can test
interface already with a real device, for example with a controller
packet communication TNC-2.  In this case, it is first necessary
configure the interface for 8-bit exchange (using the SU program command
(Set Universal) 8-bit,1-stop bit,no parity. It should be remembered that
Usually all versions of TNC controllers are installed when turned on
the default settings are different, so switching to ON-LINE mode
You should first issue direct commands:


 8 Y 
  AW 8 
  PAR 0 
  RESTART 

 Something like the following message should appear on the terminal:
nations (depending on the software version):

|A

PacComm TINY-2 Packet Controller
AX.25 Level 2 Version 2.0
Features:
  KISS
  PERSONAL MESSAGE SYSTEM V 3.0
  CLOCK CHIP SUPPORT
  CWID
Release E1.1.6D1 May24, 1990 - 32K RAM
Checksum $43
cmd:


 Because Usually the 'echo' mode (ECHO) is always on, you will see
put on the terminal everything that is typed from the keyboard. It should also
once again make sure the reliability of the transmitted and received data
in RUSS, LAT, ALTER modes.

Share your thoughts about the article