Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "pinFunc.h"
- void setPinDigOut( const uint8_t portNum, const uint8_t pinNum )
- {
- Chip_IOCON_PinMuxSet( LPC_IOCON, portNum, pinNum, (IOCON_DIGITAL_EN | IOCON_FUNC0 | IOCON_GPIO_MODE));
- Chip_GPIO_SetPinDIROutput( LPC_GPIO, portNum, pinNum );
- }
- void setPinDigitalIn( const uint8_t portNum, const uint8_t pinNum )
- {
- Chip_IOCON_PinMuxSet( LPC_IOCON, portNum, pinNum, (IOCON_DIGITAL_EN | IOCON_FUNC0 | IOCON_GPIO_MODE));
- Chip_GPIO_SetPinDIRInput( LPC_GPIO, portNum, pinNum );
- }
- void digitalWrite( const uint8_t portNum, const uint8_t pinNum, const bool writeValue )
- {
- Chip_GPIO_SetPinState( LPC_GPIO, portNum, pinNum, writeValue );
- }
- bool digitalRead( const uint8_t portNum, const uint8_t pinNum )
- {
- bool rv = Chip_GPIO_GetPinState( LPC_GPIO, portNum, pinNum );
- return rv;
- }
- void initBoard()
- {
- // INMUX and IOCON are used by many apps, enable both INMUX and IOCON clock bits here.
- Chip_Clock_EnablePeriphClock( SYSCON_CLOCK_INPUTMUX );
- Chip_Clock_EnablePeriphClock( SYSCON_CLOCK_IOCON );
- // Sets up DEBUG UART
- DEBUGINIT();
- // Initialize GPIO pins
- Chip_GPIO_Init( LPC_GPIO );
- // Pin muxing for tri-state LED (acitve LOW)
- for (int pinNum = 29; pinNum < 32; pinNum++)
- {
- Chip_GPIO_SetPinDIROutput(LPC_GPIO, 0, pinNum);
- Chip_GPIO_SetPinState(LPC_GPIO, 0, pinNum, true);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement