[sdiy] lpt polyphonic interface
Karl Ekdahl
_nial_ at yahoo.com
Fri Nov 8 14:32:20 CET 2002
Hi everyone!
I'm currently building a lpt (computer parallel port)
controlled interface controllig several polyphonic
channels. Basically, this interface will be able to
select channel and select note on / note off.
I use the 8-bits from the LPT port like this
7th bit = 0 = set key : bit 0-5 forms the key to set a
value for and bit 6 is 0 for note off and 1 for note
on.
7th bit = 1 = set channel : bit 0-3 is the channel to
set.
Select channel simply sets a multiplexer with latches
that sets an enable '1' to the selected channel. While
setting a key, key value and note state is send to all
channels, though only the one selected by the channel
multiplexer should response.
Each note on each channel has a output in a 4099 latch
that is '1' for on and '0' for off. While bit 7 is '1'
i set WRITE DISABLE to '1' on the 4099 thus disabling
input since the channel number and key number has the
same lines.
The problem is like this:
I set channel 0 (outputting 10000000) and sets key 0
to ON (outputting 01000000), everything works OK so
far. If i then set key 0 to OFF (outputting 00000000),
key 0 is OFF, BUT if i after that tries to set key 1
to ON (outputting 01000001) either only key 0 is ON or
both key 0 is ON AND key 1 is ON.
I managed to solve this the software way by doing like
this:
Set channel 0, (10000000).
Set key 0 to ON (01000000).
Disable key write but PRESERVE the old key value and
key state (11000000).
Change channel to old channel (10000000).
Set key 0 to OFF (00000000).
Disable key write but preserve the old key value and
state (10000000).
Change channel to old channel (10000000).
Set key 1 to ON (01000001).
Disable key write but preserve the old key value and
state (11000001).
Change channel to old channel (10000000).
This works, but isn't especially elegant. Could anyone
please give me a hint how to prevent the latches to
write using hardware?
I belive this could have been some comfusing.. :)
/Karl
_____________________________________________________
Gratis e-mail resten av livet på www.yahoo.se/mail
Busenkelt!
More information about the Synth-diy
mailing list