Skip to content

Conversation

@ABOSTM
Copy link

@ABOSTM ABOSTM commented Jan 24, 2022

Add STM32 boards support through stm32duino
https://github.com/stm32duino/Arduino_Core_STM32

Tested on

  • Nucleo-L476RG
  • Nucleo-F401RE
  • Nucleo-G071RB
  • Nucleo-F103RB

With LM75 tempetature sensor
with LM75 library modified to use SoftwareWire
https://github.com/thefekete/LM75

Signed-off-by: Alexandre Bourdiol alexandre.bourdiol@st.com

https://github.com/stm32duino/Arduino_Core_STM32
Tested on
* Nucleo-L476RG
* Nucleo-F401RE
* Nucleo-G071RB
* Nucleo-F103RB
With LM75 tempetature sensor
with LM75 library modified to use SoftwareWire
https://github.com/thefekete/LM75

Signed-off-by: Alexandre Bourdiol <alexandre.bourdiol@st.com>
@Koepel
Copy link
Collaborator

Koepel commented Jan 24, 2022

Thank you very much for this good addition. However, there is a basic question that we have yet to decide.

Since the I2C bus is slow (at 100kHz and 400kHz) and the functions Wire.endTransmission() and Wire.requestFrom() wait until the I2C session has finished, there is no speed gain by using direct port access. In my opinion, the normal digitalRead() and digitalWrite() will do for faster boards.

Should we do as the OneWire library: https://github.com/PaulStoffregen/OneWire/blob/master/util/OneWire_direct_gpio.h or fall back to normal Arduino functions such as digitalRead() and digitalWrite() for faster boards ? If we do as the OneWire library, perhaps the support files from the OneWire library can be used, instead of copying that.

The SAMD21G has to be supported as well and the ATmega4809 and the Raspberryp Pi Pico and the nRF52840 and the AT91SAM3X8E (Due).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants