mirror of
https://github.com/tinygo-org/tinygo.git
synced 2026-08-14 07:53:40 +00:00
machine/stm32: add i2c Frequency and SetBaudRate() function for boards that were missing implementation
Signed-off-by: deadprogram <ron@hybridgroup.com>
This commit is contained in:
@@ -289,11 +289,22 @@ func (spi SPI) getBaudRate(config SPIConfig) uint32 {
|
||||
//---------- I2C related code
|
||||
|
||||
// Gets the value for TIMINGR register
|
||||
func (i2c *I2C) getFreqRange() uint32 {
|
||||
func (i2c *I2C) getFreqRange(br uint32) uint32 {
|
||||
// This is a 'magic' value calculated by STM32CubeMX
|
||||
// for 48Mhz PCLK1.
|
||||
// TODO: Do calculations based on PCLK1
|
||||
return 0x20303E5D
|
||||
switch br {
|
||||
case 10 * KHz:
|
||||
return 0x9010DEFF
|
||||
case 100 * KHz:
|
||||
return 0x20303E5D
|
||||
case 400 * KHz:
|
||||
return 0x2010091A
|
||||
case 500 * KHz:
|
||||
return 0x00201441
|
||||
default:
|
||||
return 0
|
||||
}
|
||||
}
|
||||
|
||||
//---------- UART related code
|
||||
|
||||
Reference in New Issue
Block a user