Thread: I2c Sniffer
View Single Post
  #8   Report Post  
Posted to alt.binaries.schematics.electronic
TT_Man TT_Man is offline
external usenet poster
 
Posts: 33
Default I2c Sniffer

SNIP

Don't know the 12C512 except for a misnomer of a 27c512. If I understand
you well, you're looking at the I2C interface inside a programmer. You can
bet there will be a lot a communication on that bus, so multiple START
conditions are normal. A sniffer should not only look for START
conditions. It starts, waits for an event (maybe a START condition),
stores that event and the following data in memory to make it available
for futher investigation. As far as your interest goes, you'd wait for the
START condition, filter the bits you want to see, display them by LEDS and
then hold the sniffer until you (manualy) restart it.

A quick look at the ATmega8 datasheet learns that you can make a pretty
good sniffer with it. Even pieces of code are given. You can store up to a
1000 bytes of data. Of course you will need a display or an RS232
interface to make that data visible.

Whatever you choose, there's no quick solution. You will have to do some
serious work, which will take its time.

petrus bitbyter

sorry, a typo.... I meant 24C512.
I've had a look at mega 8 and a deeper look at tiny 2313. Surprisingly, the
tiny has a USI that sets an interrupt flag on a start condition .....
Basically, what I am trying to do is this....... support for 24C1024 devices
is next to nil..... but it has a simple algorithm to program it's upper 512.
It looks to see if bit2 in the SLA is set... If it is, it takes this as the
17th bit of the devices address.
So, I can sniff the start condition, count ck's until the 6th one and then
jam the SDA (during clock 7) high to force ( kid) the 24C1024 that it
should write its data to the high block...
I'm getting there now....