It’s not so much that setting the pin, as such, takes a long time. It’s the fact that doing it via Open-AT means that it has to be scheduled into Open-AT’s internal operations (which, in turn, has to be scheduled within the GSM stack’s requirements) - and that is where the problem lies!
Again, the analogy with VB on a Windows PC holds.
Yes.
Actually, the Master has to time its write pulse as 8us (+/-5%);
It’s the Slave that holds the line fo 15us to response with a ‘0’
The ARM9 is not the limiting factor - again, like the VB analogy.
From the timing limits & capabilities given in the documentation, it should be obvious that microsecond resolution is not available.