bidirectional psoc4 pins

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

I need to interface with one wire and pseudo one wire devices.  I believe that if the pin is configured to bidirectional open drain with drives low option will work.  

   

The one wire devices require a 5Kohm pull up resistor.  Is it possible to configure the bidirectional pin with the pull up resistor option?

   

 

   

The second part of the question is about switching the port from output mode to read mode.  

   

1.  For the host to assert a low write a 0 to the pin.

   

2. To write a 1 or release the bus for read mode write a 1 to the pin.

   

Is this correct?

   

Thanks 

   

Glenn 

0 Likes
1 Reply
odissey1
Level 9
Level 9
First comment on KBA 1000 replies posted 750 replies posted

1. You can set pin to bidirectional-resistive pull up, but the internal resistor is ~10k and not enough to comply with timing requirements. So there is external 5k resistor required. I believe it is still possible to cheat and not use external resistor by ganging 2 pins together, so effective pull-up resistor becomes ~5k.

   

2. You shoul read 1-wire protocol, I believe it is more complicated than that. As an example take a look on DS18B20 1-wire communication in this custom component

   

http://www.cypress.com/forum/psoc-community-components/component-read-ds18b20-digital-temperature-se...

   

   

0 Likes