26 строки
		
	
	
	
		
			667 Б
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			26 строки
		
	
	
	
		
			667 Б
		
	
	
	
		
			Go
		
	
	
	
	
	
| //go:build stm32l4x2
 | |
| // +build stm32l4x2
 | |
| 
 | |
| package machine
 | |
| 
 | |
| // Peripheral abstraction layer for the stm32l4x2
 | |
| 
 | |
| func CPUFrequency() uint32 {
 | |
| 	return 80000000
 | |
| }
 | |
| 
 | |
| // Internal use: configured speed of the APB1 and APB2 timers, this should be kept
 | |
| // in sync with any changes to runtime package which configures the oscillators
 | |
| // and clock frequencies
 | |
| const APB1_TIM_FREQ = 80e6 // 80MHz
 | |
| const APB2_TIM_FREQ = 80e6 // 80MHz
 | |
| 
 | |
| //---------- I2C related code
 | |
| 
 | |
| // Gets the value for TIMINGR register
 | |
| func (i2c *I2C) getFreqRange() uint32 {
 | |
| 	// This is a 'magic' value calculated by STM32CubeMX
 | |
| 	// for 80MHz PCLK1.
 | |
| 	// TODO: Do calculations based on PCLK1
 | |
| 	return 0x10909CEC
 | |
| }
 | 
