Skip to content

Commit

Permalink
bit bang i2c master (#703)
Browse files Browse the repository at this point in the history
* Fix uninitialized variable warning.

* Bit-banged I2C driver ready for testing.

* Fix compile/link errors.

* Fix I2C bit-bang state machine bugs.

* Final pre-review commentary tweaks.

* Force optimize -03 for I2C bit-bang interrupt handler.

* Refactor state_tx() based on review feedback.

* state_start() and state_tx() tweaks.

* Fix build error.

* Move state_tx() reset to the caller.

* Type the enum class objects.

* Additional review fixes.

* Refactor the state_rx() based on review feedback.

* Fix state_rx() stateRx_ math bug.

* Move the state_rx reseet to the caller.

* Fix state_rx stateRx_ advancement bug.

* Move function implementations over to the header (inline).

* Turn the BitBangI2C object into a template with an HW parameter.

* Implement SCL and SDA I/O as template HW parameters.

* Correct documentation.

* Add GpioInputOutputPin definition.

* Add tick enable/disable to the HW template argument.

* Remove obsolete file.

* Fix bug on input condition (length) check.

* Add timeout capability.

* Remove BitBangI2C.cxx from the build.

* Address review comments.
  • Loading branch information
bakerstu authored Aug 13, 2023
1 parent fb0762d commit a7e4abf
Show file tree
Hide file tree
Showing 4 changed files with 802 additions and 2 deletions.
Loading

0 comments on commit a7e4abf

Please sign in to comment.