[sci.electronics] LM628 motion control

tdutton@vmsa.oac.uci.edu (08/25/90)

I'm trying to build a little motion control box based on National's LM628
NMOS motor control chip. I'm using an 8-bit IO port from a device based on
primarily 74HC series CMOS to interface with the chip. Another 8-bit port
on the LM628 interfaces with a D/A converter; that to an  op-amp and the
op-amp to the motor.
My problem is that I seem to be able to write both commands and data to the
LM628 and I can read the status byte from the chip, but I cannot properly
read other data from the chip.
I have a 74HCT245 transceiver for compatibility (I think) of the NMOS '628
with the 74HC controlling device.
Example of what goes wrong: I write a command asking for 4 bytes of data
and then I try to read the bytes one at a time. After I've read two bytes
and ask for a third, the LM628 gives an interrupt condition saying that
I wasn't supposed to ask for anymore data. Similarly, for a command asking
for 2 bytes, I get an error when asking for the second of the two bytes.
I believe that my commands (writes) work because commands intended to alter
the status byte of the LM628 do just that...I read the status byte and
get what I expected.
The data sheets for the chip say that a read strobe must be asserted to get
from the read pin (I haven't seen any on an oscilloscope), I am at a loss
as to what unseen forces are at work.
Anyone else experience similar problems with NMOS LSI?
anyone?
anyone?

necessary disclaimer: I'm a physics graduate student, not an EE so stupidity
                      and ignorance in these affairs may be the key.

Thanks in advance.

tdutton@vmsa.oac.uci.edu (08/25/90)

In article <26D571E5.5494@orion.oac.uci.edu>, tdutton@vmsa.oac.uci.edu writes...

>I'm trying to build a little motion control box based on National's LM628
>NMOS motor control chip. I'm using an 8-bit IO port from a device based on
>primarily 74HC series CMOS to interface with the chip. Another 8-bit port
>on the LM628 interfaces with a D/A converter; that to an  op-amp and the
>op-amp to the motor.
>My problem is that I seem to be able to write both commands and data to the
>LM628 and I can read the status byte from the chip, but I cannot properly
>read other data from the chip.
>I have a 74HCT245 transceiver for compatibility (I think) of the NMOS '628
>with the 74HC controlling device.
>Example of what goes wrong: I write a command asking for 4 bytes of data
>and then I try to read the bytes one at a time. After I've read two bytes
>and ask for a third, the LM628 gives an interrupt condition saying that
>I wasn't supposed to ask for anymore data. Similarly, for a command asking
>for 2 bytes, I get an error when asking for the second of the two bytes.
>I believe that my commands (writes) work because commands intended to alter
>the status byte of the LM628 do just that...I read the status byte and
>get what I expected.
>The data sheets for the chip say that a read strobe must be asserted to get
>from the read pin (I haven't seen any on an oscilloscope), I am at a loss
>as to what unseen forces are at work.
>Anyone else experience similar problems with NMOS LSI?
>anyone?
>anyone?
> 
>necessary disclaimer: I'm a physics graduate student, not an EE so stupidity
>                      and ignorance in these affairs may be the key.
> 
>Thanks in advance.

Correction (editor problems): I must assert a read strobe for each byte and
                              I do see the strobe on an oscilloscope, but I
                              don't (and shouldn't) see any double-triggering.
                              So where did my missing bytes go?