• Dave Hylands's avatar
    stm32/pin_defs_stm32: Fix pin printing to show IN mode correctly. · 8727c4e2
    Dave Hylands authored
    Prior to this commit, if you configure a pin as an output type (I2C in this
    example) and then later configure it back as an input, then it will report
    the type incorrectly.  Example:
    
        >>> import machine
        >>> b6 = machine.Pin('B6')
        >>> b6
        Pin(Pin.cpu.B6, mode=Pin.IN)
        >>> machine.I2C(1)
        I2C(1, scl=B6, sda=B7, freq=420000)
        >>> b6
        Pin(Pin.cpu.B6, mode=Pin.ALT_OPEN_DRAIN, pull=Pin.PULL_UP, af=Pin.AF4_I2C1)
        >>> b6.init(machine.Pin.IN)
        >>> b6
        Pin(Pin.cpu.B6, mode=Pin.ALT_OPEN_DRAIN, af=Pin.AF4_I2C1)
    
    With this commit the last print now works:
    
        >>> b6
        Pin(Pin.cpu.B6, mode=Pin.IN)
    8727c4e2
pin_defs_stm32.c 1015 Bytes