úÎ&Œ#Q<      !"#$%&'()*+,-./0123456789:; Safe-InferedEither high or low. ,This describes the address of an I2C slave. PA GPIO pin can be either set to input mode, output mode or an alternative mode. APins for the P1 connector of the V1 revision of the Raspberry Pi APins for the P5 connector of the V2 revision of the Raspberry Pi 1APins for the P1 connector of the V2 revision of the Raspberry Pi 2kAny IO computation that accesses the GPIO pins using this library should be wrapped with this function; ie withGPIO $ do foo. % It prepares the file descriptors to devYmem and makes sure everything is safely deallocated if an exception occurs. The behavior @ when accessing the GPIO outside of this function is undefined. 3eAny IO computation that uses the I2C bus using this library should be wrapped with this function; ie withI2C $ do foo. „ It prepares the relevant pins for use with the I2C protocol and makes sure everything is safely returned to normal if an exception ; occurs. If you only use the GPIO pins for I2C, you can do withGPIO . withI2C $ do foo) and it will work as expected. WARNING: H after this function returns, the I2C pins will be set to Input, so use 4% if you want to use them for output. 4Sets the pin to either   or   mode. 5!Sets the specified pin to either < or =. 60Returns the current state of the specified pin. 7ASets the clock divider for (and hence the speed of) the I2C bus. 8#Sets the baud rate of the I2C bus. 9Writes the data in the  ByteStringD to the specified adress. Throws an IOException if an error occurs. :VReads num bytes from the specified address. Throws an IOException if an error occurs. ; Writes a  ByteStringS containing a register address to the specified address, then reads num bytes from  it, using the "repeated start"7 I2C method. Throws an IOException if an error occurs. =  !"#$%&'()*+,-./0123456789:;><  !"#$%&'()*+,-./0123456789:;< 10/.-,+*)('&%$#"!   24653789:;  &10/.-,+*)('&%$#"!  23456789:;>?      !"#$%&'()*+,-./0123456789:;<=>?@>?ABC HPi-0.4.0System.RaspberryPi.GPIO LogicLevelAddressPinModeAlt5Alt4Alt3Alt2Alt1Alt0OutputInputPinPinV1_26PinV1_24PinV1_23PinV1_22PinV1_21PinV1_19PinV1_18PinV1_16PinV1_15PinV1_13PinV1_12PinV1_11PinV1_10PinV1_08PinV1_07PinV1_05PinV1_03PinP5_06PinP5_05PinP5_04PinP5_03Pin26Pin24Pin23Pin22Pin21Pin19Pin18Pin16Pin15Pin13Pin12Pin11Pin10Pin08Pin07Pin05Pin03withGPIOwithI2CsetPinFunctionwritePinreadPinsetI2cClockDividersetI2cBaudRatewriteI2CreadI2C writeReadI2Cghc-prim GHC.TypesTrueFalse $fEnumPinMode