Hardware I2C solution for H8/H89

76 views
Skip to first unread message

Terry Smedley

unread,
Apr 19, 2022, 9:05:52 PM4/19/22
to SEBHC
Here's a small I2C board that plugs into an 8255 socket to provide hardware I2C capabilities to any machine that has an 8255.  It uses the PCA9665 parallel-to-I2C chip.  This was built with a SOIC-20 version of the chip.  There are a very few places where you can still get the DIP-20 version (Quest Components has some).

The bit-banged I2C solution using Norberto's 8255 PPIO board has worked fine for low datarate sensors.  This hardware solution reduces the software overhead, and also supports high speed I2C channels for moving larger chunks of data.

The PCA9665 requires a 3.3v supply, but all of the I/O pins are 5v tolerant.  The PCA9665 is/was an improvement over the two previous generations of this chip (PCF8584, PCA9534) because it offers a 68-byte transmit/receive buffer that can eliminate the per-byte software intervention that was required with the earlier chips.

This prototype demo takes up a bit of space, but this would not be difficult to implement on a much smaller permanent PCB.

Terry





pca9665_on_PPIO.jpg
pca9665_top.jpg
pca9665_bottom.jpg

glenn.f...@gmail.com

unread,
Apr 19, 2022, 9:55:21 PM4/19/22
to se...@googlegroups.com

Very cool!  You must  have stocked up on those protoboards at the Radio Shack going out of business sale!

--
You received this message because you are subscribed to the Google Groups "SEBHC" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sebhc+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/sebhc/1d90d370-7a79-4778-af2a-ed8760be1f7cn%40googlegroups.com.

Terry Smedley

unread,
Apr 19, 2022, 10:00:56 PM4/19/22
to SEBHC
Glenn:

A favorite board for short-lifetime (aka throwaway) projects.  


Terry

George Farris

unread,
Apr 19, 2022, 11:27:39 PM4/19/22
to se...@googlegroups.com
Hi Terry did you draw up a schematic for this?

George

Terry Smedley

unread,
Apr 19, 2022, 11:50:46 PM4/19/22
to SEBHC
With the exception of a 5v to 3.3v regulator and two gates of a 74HCT04 inverter, the "circuit" is just interconnecting matching pins on the 8255 and PCA9665.  Here is the grid I used to determine the hookup.  Excepting interrupts, this should work with any 8255 board.   Norberto's PPIO board brings PC3 (8255 INTRA) out to a header where it can be jumpered to one of the Z80 INT lines, so I used that as my interrupt connection.   The PCA9665 can also be polled, leaving the interrupt line open.

Terry
PCA9665_I2C.pdf

Dave McGuire

unread,
Apr 20, 2022, 9:31:46 AM4/20/22
to SEBHC
On 4/19/22 23:50, Terry Smedley wrote:
> With the exception of a 5v to 3.3v regulator and two gates of a 74HCT04
> inverter, the "circuit" is just interconnecting matching pins on the
> 8255 and PCA9665.  Here is the grid I used to determine the hookup.
> Excepting interrupts, this should work with any 8255 board.   Norberto's
> PPIO board brings PC3 (8255 INTRA) out to a header where it can be
> jumpered to one of the Z80 INT lines, so I used that as my interrupt
> connection.   The PCA9665 can also be polled, leaving the interrupt line
> open.

What's the advantage of connecting the PCA9665 through an 8255? It
has an 8080/Z80-compatible interface. I've used its predecessor (the
PCF8584) many times directly. Unless there's some major advantage,
going through an 8255 seems like a lot of unnecessary complexity.

-Dave

--
Dave McGuire, AK4HZ
New Kensington, PA

Terry Smedley

unread,
Apr 20, 2022, 9:40:38 AM4/20/22
to SEBHC
The advantage is that I could plug it into an existing board without (re-)building the bus interface onto a new board.  As far as complexity goes, there's not much to this.  

tas

Terry Smedley

unread,
Apr 20, 2022, 9:44:28 AM4/20/22
to SEBHC
I guess the more significant point is that it is not interfaced through an 8255.  It simply uses the socket for an 8255, which aready has all the bus interface lines on it.    The 8255 sockets just provide a convenient way to grab the bus without building a new board.

tas

On Wednesday, April 20, 2022 at 6:31:46 AM UTC-7 mcg...@neurotica.com wrote:

Dave McGuire

unread,
Apr 20, 2022, 9:44:55 AM4/20/22
to SEBHC

Ah ok, that's a good point. I thought you were designing a new board.

People seem to do this all the time for IDE interfaces too, which
just seems wacked to me. The 8255 is, in truth, a fairly crappy chip to
program, but people seem to get stuck in an "8255 is the way to connect
things to a computer!!!" loop. I'm glad this is not that. :)

-Dave
> --
> You received this message because you are subscribed to the Google
> Groups "SEBHC" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to sebhc+un...@googlegroups.com
> <mailto:sebhc+un...@googlegroups.com>.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/sebhc/a372f34b-53b0-4dc7-bd97-35ef7da918a6n%40googlegroups.com
> <https://groups.google.com/d/msgid/sebhc/a372f34b-53b0-4dc7-bd97-35ef7da918a6n%40googlegroups.com?utm_medium=email&utm_source=footer>.

Dave McGuire

unread,
Apr 20, 2022, 9:45:28 AM4/20/22
to se...@googlegroups.com

The best of both worlds, very nice!

-Dave
> --
> You received this message because you are subscribed to the Google
> Groups "SEBHC" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to sebhc+un...@googlegroups.com
> <mailto:sebhc+un...@googlegroups.com>.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/sebhc/c501fe0e-e0a5-4bf2-a54d-cda15c7a1b38n%40googlegroups.com
> <https://groups.google.com/d/msgid/sebhc/c501fe0e-e0a5-4bf2-a54d-cda15c7a1b38n%40googlegroups.com?utm_medium=email&utm_source=footer>.

Douglas Miller

unread,
Apr 20, 2022, 12:08:53 PM4/20/22
to se...@googlegroups.com
Yeah, I'm with you Dave. I wish I had inserted myself in the early
design of the "Dual CF" card now.

Dave McGuire

unread,
Apr 20, 2022, 2:03:57 PM4/20/22
to se...@googlegroups.com

Oh dear...I didn't know that that did that. (that's a lot of thats!)

Sorry, no offense intended!! :-/

-Dave
Reply all
Reply to author
Forward
0 new messages