| NedoPC Project | NedoPC Forum | NedoPC Group |

NedoPC-85-A


  On June 22, 2004 I finished assembling and debugging of test board NedoPC-85-A based on P8085AH (old Intel 8085 clone) microprocessor that running 2 MHz clock. Board consists of electrically erased programmed read only memory (EEPROM) KM2865A-25 (8Kx8), static random access memory (SRAM) HM6264P-12 (8Kx8) and 3 logic ICs: 74ALS573, 74LS138, 74LS08. Cost of components is $27. Current of board is less then 200 mA.

Assembled board:

Board without large ICs:

View of soldering side:

Scheme
(click mouse to magnify):

How we can see address space devided to 8 parts of 8 kylobytes each:

RangeCS
#0000...#1FFFROM
#2000...#3FFFRAM
#4000...#5FFF-
#6000...#7FFF-
#8000...#9FFF-
#A000...#BFFF_CS
#C000...#DFFFRAM
#E000...#FFFFROM

_CS is output signal in 15-pins connector:

PinNameDescription
1GNDGround signal
2_CSSelect external device (act.0)
3ALEData is low byte of address (act.1)
4M_IOUsing memory (1) or I/O-port (0)
5_RDRead access(act.0)
6_WRWrite access (act.0)
7D0Bit 0 of data (or address)
8D1Bit 1 of data (or address)
9D2Bit 2 of data (or address)
10D3Bit 3 of data (or address)
11D4Bit 4 of data (or address)
12D5Bit 5 of data (or address)
13D6Bit 6 of data (or address)
14D7Bit 7 of data (or address)
15VCCPower signal (+5V)

We may call it "Nedo Interface 15" (because 15 pins) or NI-15 as a short name (in the near future we implement a number of circuits for working with NedoPC-85-A board using this interface). The interface NI-15 may do:

  • read 1 byte from 256 bytes of external memory (address range #A000...#A0FF and far with step 256 bytes since #BF00...#BFFF)
  • write 1 byte to 256 bytes of external memory (address range #A000...#A0FF and far with step 256 bytes since #BF00...#BFFF)
  • read 1 byte from 32 input ports (range of port numbers is #A0...#BF)
  • write 1 byte to 32 input ports (range of port numbers is #A0...#BF)
Without additional circuit for demultiplexing of data and low byte address by ALE signal, this device may address only 1 byte in any address in range #A000...#BFFF or only 1 port in range #A0...#BF.

Using NI-15 connector the board is connected to any standard breadboard and with simple stuff may do something like LEDs control:

Scheme of LED-device
(click mouse to magnify):

Sample program for LEDs control:

    ORG 0
START:
    JMP #E003
_E003:
    MVI B,1
LOOP1:
    LXI H,0
LOOP2:
    DCX H
    MOV A,H
    ORA L
    JNZ LOOP2
    MOV A,B
    OUT #A0
    RLC
    MOV B,A
    JMP LOOP1

Listing of the compiled program:

Adr1Adr2CodeCommandComment
#0000#E000#C3JMP #E003Jump to last window
#0001#E001#03
#0002#E002#E0
#0003#E003#06MVI B,1Starting state
#0004#E004#01
#0005#E005#21LXI H, #0000Clear counter
#0006#E006#00
#0007#E007#00
#0008#E008#2BDCX HDecrement counter
#0009#E009#7CMOV A,HTest 16-bits 0
#000A#E00A#B5ORA L
#000B#E00B#C2JNZ #E008Repeat if not 0
#000C#E00C#08
#000D#E00D#E0
#000E#E00E#78MOV A,BCopy state to A
#000F#E00F#D3OUT #A0Send to port #A0
#0010#E010#A0
#0011#E011#07RLCShift left
#0012#E012#47MOV B,ASave state
#0013#E013#C3JMP #E005Go to begin of cycle
#0014#E014#05
#0015#E015#E0

Programming of EEPROM may be done by NedoProg-1. If we have 2 MHz processor clock (4 MHz crystal) full cycle of 8 LEDs is done during 6.3 sec.

Discuss it 


Rambler's Top100
^ Go Up
© 2002-2008 NedoPC.org