Restore correct STM32 port-bits code (#19678)
This commit is contained in:
		
							parent
							
								
									72f9fdc05f
								
							
						
					
					
						commit
						2adac87c45
					
				@ -51,15 +51,15 @@ void FastIO_init(); // Must be called before using fast io macros
 | 
			
		||||
 | 
			
		||||
#if defined(STM32F0xx) || defined(STM32F1xx) || defined(STM32F3xx) || defined(STM32L0xx) || defined(STM32L4xx)
 | 
			
		||||
  #define _WRITE(IO, V) do { \
 | 
			
		||||
    if (V) FastIOPortMap[STM_PORT(digitalPin[IO])]->BSRR = _BV32(digitalPinToPinName(IO) & 0x1F) ; \
 | 
			
		||||
    else   FastIOPortMap[STM_PORT(digitalPin[IO])]->BRR  = _BV32(digitalPinToPinName(IO) & 0x1F) ; \
 | 
			
		||||
    if (V) FastIOPortMap[STM_PORT(digitalPin[IO])]->BSRR = _BV32(STM_PIN(digitalPin[IO])) ; \
 | 
			
		||||
    else   FastIOPortMap[STM_PORT(digitalPin[IO])]->BRR  = _BV32(STM_PIN(digitalPin[IO])) ; \
 | 
			
		||||
  }while(0)
 | 
			
		||||
#else
 | 
			
		||||
  #define _WRITE(IO, V) (FastIOPortMap[STM_PORT(digitalPin[IO])]->BSRR = _BV32(digitalPinToPinName(IO) + ((V) ? 0 : 16)))
 | 
			
		||||
  #define _WRITE(IO, V) (FastIOPortMap[STM_PORT(digitalPin[IO])]->BSRR = _BV32(STM_PIN(digitalPin[IO]) + ((V) ? 0 : 16)))
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#define _READ(IO)               bool(READ_BIT(FastIOPortMap[STM_PORT(digitalPin[IO])]->IDR, _BV32(digitalPinToPinName(IO) & 0x1F)))
 | 
			
		||||
#define _TOGGLE(IO)             (FastIOPortMap[STM_PORT(digitalPin[IO])]->ODR ^= _BV32(digitalPinToPinName(IO) & 0x1F))
 | 
			
		||||
#define _READ(IO)               bool(READ_BIT(FastIOPortMap[STM_PORT(digitalPin[IO])]->IDR, _BV32(STM_PIN(digitalPin[IO]))))
 | 
			
		||||
#define _TOGGLE(IO)             (FastIOPortMap[STM_PORT(digitalPin[IO])]->ODR ^= _BV32(STM_PIN(digitalPin[IO])))
 | 
			
		||||
 | 
			
		||||
#define _GET_MODE(IO)
 | 
			
		||||
#define _SET_MODE(IO,M)         pinMode(IO, M)
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user