Also die fertigen I2C Komponenten wie die PCF-Bausteine etc., die unterstützen sicherlich das I2C Protokoll richtig. Nur halt selbst programmierte I2C Softwaretreiber sind nicht immer ganz perfekt, sicherlich stecken da auch in so manchem Compiler Libarys noch ein paar Bugs!

Ja der i2C-Bus wird von Bascom rein softwaremäßig gesteuert. Die Befehle sind aber in der Libary. Im übrigen ist so eine Software Implementation garnicht so sehr lang. Nur weil es halt noch schneller ging ohne an Master Master zu denken, haben da einige im Assemblercode etwas geschludert. Aber für die üblichen I2C Bausteine reichen auch diese "geschluderten" Implementationen.
Wie gesagt, der Bascom ENtwickler arbeitet daran die I2C hardware Register zu unterstützen. Wenn das fertig ist, dann wird man das nach außen ganricht merken. Vermutlich braucht man dann noch nicht mal Basic Programm ändern sondern nur neu compilieren. Der Vorteil der Hardware Unterstützung ist der, das der Controller entlastet wird. Die I2C Ports müssen dann nicht ständig kontrolliert werden, ein großen Teil der Zeit nimmt der Controller dann ab. Er meldet sich dann glaub erst wenn er als Slave angesprochen wird.