I am using three micro controllers mainly for printing, ADC and one main controller for controlling all. Between these controllers only 2 pins are shared commonly. So, there is possibility that communication might be using 2 wire protocol (I2C protocol). How to check weather these pins are SCL and SDA?

I cant check with probing DSO because there is some problem with display so I cant touch any key ( its not getting sensed ). By default, these pins are at Logic High state.But, since display is not sensing, i am totally unaware about interfacing protocol between these controllers.

Is there any other way to check this? According to me,checking with DSO is not possible in my case.

Please suggest any other way for checking interconnection.

Thank you in advance.


1 Answer 1


You could program another micro to sample both pins and send you information about the signal.
For instance, use input capture inputs of an appropriate Arduino board to determine the pulse lengths over a certain time, store them into a buffer and transmit that buffer via UART to your PC, where you can do an offline analysis.
Take care that your micro is powerful enough to handle the max. I2C frequency of 400kHz.
And make sure you have a good ground connection between both systems.

  • \$\begingroup\$ A slight possibility is that if every device on the I2C bus is controlled by the designer ( ie the same micro controller and no other chips like ADCs ) then it could be running higher than 400kHz. I have seen an example of debug information being sent from a device at the maximum possible rate determined by the micro controller's registers. A digital scope was used to capture and decode the data. Also see electronics.stackexchange.com/questions/49752/… \$\endgroup\$
    – Spoon
    Dec 4, 2014 at 12:59

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.