i2c - nanosleep

Previous Topic Next Topic
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

i2c - nanosleep

I have set up i2c bit banging (bashing) on my Orange Pi one – not without
difficulty,  There are three issues I would like to explore:

- existing drivers, gpioiic

- nanosleep

- input/output on same gpio pin




What is the resolution on arm?


When I tried to use to  stretch the output pulses the timing was unusable.


When creating a square wave with ioctl the shortest period I can get is
about 4 to 6 microseconds due to the execution time of the code.

If I try to stretch the pulse width with nanosleep the pulse width goes to a
minimum of 20 milliseconds even with a count of only 1 nanosecond.

I tried running nanosleep for ½ second (count of 500,000,000) for 1000
iterations and the timing seems to be correct.

Could nanosleep take 20 milliseconds to set up?