void configurePINOutput(uint32_t port, uint8_t pin, uint32_t type) { uint32_t ui32Strength; uint32_t ui32PinType; GPIOPadConfigGet(port, pin, &ui32Strength, &ui32PinType); GPIOPadConfigSet(port, pin,ui32Strength,type); GPIOPinTypeGPIOOutput(port,pin); }
/** * /fn InitializeLedUserSwitch * /brief Initialize led D1 und USR SW1. * /return void. */ static void InitializeLedUserSwitch() { uint32_t strength; uint32_t pinType; Hwi_Params buttonHWIParams; Hwi_Handle buttonHwi; Error_Block eb; // enable port N SysCtlPeripheralEnable(SYSCTL_PERIPH_GPION); // LED2 GPIOPinTypeGPIOOutput(GPIO_PORTN_BASE, GPIO_PIN_0); /* set pin gpio port to output */ GPIOPinTypeGPIOOutput(GPIO_PORTN_BASE, GPIO_PIN_1); /*configure pad as standard pin with default output current*/ GPIOPadConfigGet(GPIO_PORTN_BASE, GPIO_PIN_1, &strength, &pinType); GPIOPadConfigSet(GPIO_PORTN_BASE, GPIO_PIN_1, strength, GPIO_PIN_TYPE_STD); /* turn off led 1 */ GPIOPinWrite(GPIO_PORTN_BASE, GPIO_PIN_1, 0); /* configure switch 1 with pull up as input on GPIO_PIN_0 as pull-up pin */ GPIOPinTypeGPIOInput(GPIO_PORTJ_BASE, GPIO_PIN_0); GPIOPadConfigGet(GPIO_PORTJ_BASE, GPIO_PIN_0, &strength, &pinType); GPIOPadConfigSet(GPIO_PORTJ_BASE, GPIO_PIN_0, strength, GPIO_PIN_TYPE_STD_WPU); Error_init(&eb); Hwi_Params_init(&buttonHWIParams); buttonHWIParams.arg = 0; buttonHWIParams.enableInt = false; buttonHwi = Hwi_create(INT_GPIOJ_TM4C129, ButtonFunction, &buttonHWIParams, &eb); if (buttonHwi == NULL) { System_abort("Button Hardware interrupt create failed."); } Hwi_enableInterrupt(INT_GPIOJ_TM4C129); GPIOIntEnable(GPIO_PORTJ_BASE, GPIO_INT_PIN_0); }
// Functions void ledSetup() { uint32_t ui32Strength; uint32_t ui32PinType; SysCtlPeripheralEnable(SYSCTL_PERIPH_GPION); SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOF); GPIOPadConfigGet(GPIO_PORTN_BASE, GPIO_PIN_1, &ui32Strength, &ui32PinType); GPIOPadConfigSet(GPIO_PORTN_BASE, GPIO_PIN_1, ui32Strength, GPIO_PIN_TYPE_STD); GPIOPadConfigSet(GPIO_PORTN_BASE, GPIO_PIN_0, ui32Strength, GPIO_PIN_TYPE_STD); GPIOPadConfigSet(GPIO_PORTF_BASE, GPIO_PIN_0, ui32Strength, GPIO_PIN_TYPE_STD); GPIOPadConfigSet(GPIO_PORTF_BASE, GPIO_PIN_4, ui32Strength, GPIO_PIN_TYPE_STD); GPIOPinTypeGPIOOutput(GPIO_PORTN_BASE, GPIO_PIN_1); GPIOPinTypeGPIOOutput(GPIO_PORTN_BASE, GPIO_PIN_0); GPIOPinTypeGPIOOutput(GPIO_PORTF_BASE, GPIO_PIN_0); GPIOPinTypeGPIOOutput(GPIO_PORTF_BASE, GPIO_PIN_4); }
void setup_ledcube(void){ uint32_t ui32Strength0; uint32_t ui32PinType0; /* * Outputenable */ SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOQ); GPIOPadConfigGet(GPIO_PORTA_BASE, GPIO_PIN_0, &ui32Strength0, &ui32PinType0); GPIOPadConfigSet(GPIO_PORTA_BASE, GPIO_PIN_0,ui32Strength0,GPIO_PIN_TYPE_STD); GPIOPinTypeGPIOOutput(GPIO_PORTQ_BASE,GPIO_PIN_4); GPIOPinWrite(GPIO_PORTQ_BASE, GPIO_PIN_4,GPIO_PIN_4); GPIOPinWrite(GPIO_PORTQ_BASE, GPIO_PIN_4,0); /* * Anode Row Controls */ SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOA); GPIOPadConfigGet(GPIO_PORTA_BASE, GPIO_PIN_0, &ui32Strength0, &ui32PinType0); GPIOPadConfigSet(GPIO_PORTA_BASE, GPIO_PIN_0,ui32Strength0,GPIO_PIN_TYPE_STD_WPU); GPIOPadConfigGet(GPIO_PORTA_BASE, GPIO_PIN_1, &ui32Strength0, &ui32PinType0); GPIOPadConfigSet(GPIO_PORTA_BASE, GPIO_PIN_1,ui32Strength0,GPIO_PIN_TYPE_STD_WPU); GPIOPadConfigGet(GPIO_PORTA_BASE, GPIO_PIN_2, &ui32Strength0, &ui32PinType0); GPIOPadConfigSet(GPIO_PORTA_BASE, GPIO_PIN_2,ui32Strength0,GPIO_PIN_TYPE_STD_WPU); GPIOPadConfigGet(GPIO_PORTA_BASE, GPIO_PIN_3, &ui32Strength0, &ui32PinType0); GPIOPadConfigSet(GPIO_PORTA_BASE, GPIO_PIN_3,ui32Strength0,GPIO_PIN_TYPE_STD_WPU); GPIOPadConfigGet(GPIO_PORTA_BASE, GPIO_PIN_4, &ui32Strength0, &ui32PinType0); GPIOPadConfigSet(GPIO_PORTA_BASE, GPIO_PIN_4,ui32Strength0,GPIO_PIN_TYPE_STD_WPU); GPIOPadConfigGet(GPIO_PORTA_BASE, GPIO_PIN_5, &ui32Strength0, &ui32PinType0); GPIOPadConfigSet(GPIO_PORTA_BASE, GPIO_PIN_5,ui32Strength0,GPIO_PIN_TYPE_STD_WPU); GPIOPadConfigGet(GPIO_PORTA_BASE, GPIO_PIN_6, &ui32Strength0, &ui32PinType0); GPIOPadConfigSet(GPIO_PORTA_BASE, GPIO_PIN_6,ui32Strength0,GPIO_PIN_TYPE_STD_WPU); GPIOPadConfigGet(GPIO_PORTA_BASE, GPIO_PIN_7, &ui32Strength0, &ui32PinType0); GPIOPadConfigSet(GPIO_PORTA_BASE, GPIO_PIN_7,ui32Strength0,GPIO_PIN_TYPE_STD_WPU); GPIOPinTypeGPIOOutput(GPIO_PORTA_BASE,GPIO_PIN_0); GPIOPinTypeGPIOOutput(GPIO_PORTA_BASE,GPIO_PIN_1); GPIOPinTypeGPIOOutput(GPIO_PORTA_BASE,GPIO_PIN_2); GPIOPinTypeGPIOOutput(GPIO_PORTA_BASE,GPIO_PIN_3); GPIOPinTypeGPIOOutput(GPIO_PORTA_BASE,GPIO_PIN_4); GPIOPinTypeGPIOOutput(GPIO_PORTA_BASE,GPIO_PIN_5); GPIOPinTypeGPIOOutput(GPIO_PORTA_BASE,GPIO_PIN_6); GPIOPinTypeGPIOOutput(GPIO_PORTA_BASE,GPIO_PIN_7); SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOG); GPIOPinTypeGPIOOutput(GPIO_PORTG_BASE,GPIO_PIN_0); GPIOPadConfigGet(GPIO_PORTG_BASE, GPIO_PIN_0, &ui32Strength0, &ui32PinType0); GPIOPadConfigSet(GPIO_PORTG_BASE, GPIO_PIN_0,0,GPIO_PIN_TYPE_STD_WPU); /* * Kathode Controls */ SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOD); GPIOPadConfigGet(GPIO_PORTD_BASE, GPIO_PIN_0, &ui32Strength0, &ui32PinType0); GPIOPadConfigSet(GPIO_PORTD_BASE, GPIO_PIN_0,ui32Strength0,GPIO_PIN_TYPE_STD_WPU); GPIOPadConfigGet(GPIO_PORTD_BASE, GPIO_PIN_1, &ui32Strength0, &ui32PinType0); GPIOPadConfigSet(GPIO_PORTD_BASE, GPIO_PIN_1,ui32Strength0,GPIO_PIN_TYPE_STD_WPU); GPIOPadConfigGet(GPIO_PORTD_BASE, GPIO_PIN_2, &ui32Strength0, &ui32PinType0); GPIOPadConfigSet(GPIO_PORTD_BASE, GPIO_PIN_2,ui32Strength0,GPIO_PIN_TYPE_STD_WPU); GPIOPadConfigGet(GPIO_PORTD_BASE, GPIO_PIN_3, &ui32Strength0, &ui32PinType0); GPIOPadConfigSet(GPIO_PORTD_BASE, GPIO_PIN_3,ui32Strength0,GPIO_PIN_TYPE_STD_WPU); GPIOPadConfigGet(GPIO_PORTD_BASE, GPIO_PIN_4, &ui32Strength0, &ui32PinType0); GPIOPadConfigSet(GPIO_PORTD_BASE, GPIO_PIN_4,ui32Strength0,GPIO_PIN_TYPE_STD_WPU); GPIOPadConfigGet(GPIO_PORTD_BASE, GPIO_PIN_5, &ui32Strength0, &ui32PinType0); GPIOPadConfigSet(GPIO_PORTD_BASE, GPIO_PIN_5,ui32Strength0,GPIO_PIN_TYPE_STD_WPU); GPIOPadConfigGet(GPIO_PORTD_BASE, GPIO_PIN_6, &ui32Strength0, &ui32PinType0); GPIOPadConfigSet(GPIO_PORTD_BASE, GPIO_PIN_6,ui32Strength0,GPIO_PIN_TYPE_STD_WPU); GPIOPadConfigGet(GPIO_PORTD_BASE, GPIO_PIN_7, &ui32Strength0, &ui32PinType0); GPIOPadConfigSet(GPIO_PORTD_BASE, GPIO_PIN_7,ui32Strength0,GPIO_PIN_TYPE_STD_WPU); GPIOPinTypeGPIOOutput(GPIO_PORTD_BASE,GPIO_PIN_0); GPIOPinTypeGPIOOutput(GPIO_PORTD_BASE,GPIO_PIN_1); GPIOPinTypeGPIOOutput(GPIO_PORTD_BASE,GPIO_PIN_2); GPIOPinTypeGPIOOutput(GPIO_PORTD_BASE,GPIO_PIN_3); GPIOPinTypeGPIOOutput(GPIO_PORTD_BASE,GPIO_PIN_4); GPIOPinTypeGPIOOutput(GPIO_PORTD_BASE,GPIO_PIN_5); GPIOPinTypeGPIOOutput(GPIO_PORTD_BASE,GPIO_PIN_6); GPIOPinTypeGPIOOutput(GPIO_PORTD_BASE,GPIO_PIN_7); /* * Chipselect */ SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOK); GPIOPadConfigGet(GPIO_PORTK_BASE, GPIO_PIN_0, &ui32Strength0, &ui32PinType0); GPIOPadConfigSet(GPIO_PORTK_BASE, GPIO_PIN_0,ui32Strength0,GPIO_PIN_TYPE_STD_WPU); GPIOPadConfigGet(GPIO_PORTK_BASE, GPIO_PIN_1, &ui32Strength0, &ui32PinType0); GPIOPadConfigSet(GPIO_PORTK_BASE, GPIO_PIN_1,ui32Strength0,GPIO_PIN_TYPE_STD_WPU); GPIOPadConfigGet(GPIO_PORTK_BASE, GPIO_PIN_2, &ui32Strength0, &ui32PinType0); GPIOPadConfigSet(GPIO_PORTK_BASE, GPIO_PIN_2,ui32Strength0,GPIO_PIN_TYPE_STD_WPU); GPIOPadConfigGet(GPIO_PORTK_BASE, GPIO_PIN_3, &ui32Strength0, &ui32PinType0); GPIOPadConfigSet(GPIO_PORTK_BASE, GPIO_PIN_3,ui32Strength0,GPIO_PIN_TYPE_STD_WPU); GPIOPadConfigGet(GPIO_PORTK_BASE, GPIO_PIN_4, &ui32Strength0, &ui32PinType0); GPIOPadConfigSet(GPIO_PORTK_BASE, GPIO_PIN_4,ui32Strength0,GPIO_PIN_TYPE_STD_WPU); GPIOPadConfigGet(GPIO_PORTK_BASE, GPIO_PIN_5, &ui32Strength0, &ui32PinType0); GPIOPadConfigSet(GPIO_PORTK_BASE, GPIO_PIN_5,ui32Strength0,GPIO_PIN_TYPE_STD_WPU); GPIOPadConfigGet(GPIO_PORTK_BASE, GPIO_PIN_6, &ui32Strength0, &ui32PinType0); GPIOPadConfigSet(GPIO_PORTK_BASE, GPIO_PIN_6,ui32Strength0,GPIO_PIN_TYPE_STD_WPU); GPIOPadConfigGet(GPIO_PORTK_BASE, GPIO_PIN_7, &ui32Strength0, &ui32PinType0); GPIOPadConfigSet(GPIO_PORTK_BASE, GPIO_PIN_7,ui32Strength0,GPIO_PIN_TYPE_STD_WPU); GPIOPinTypeGPIOOutput(GPIO_PORTK_BASE,GPIO_PIN_0); GPIOPinTypeGPIOOutput(GPIO_PORTK_BASE,GPIO_PIN_1); GPIOPinTypeGPIOOutput(GPIO_PORTK_BASE,GPIO_PIN_2); GPIOPinTypeGPIOOutput(GPIO_PORTK_BASE,GPIO_PIN_3); GPIOPinTypeGPIOOutput(GPIO_PORTK_BASE,GPIO_PIN_4); GPIOPinTypeGPIOOutput(GPIO_PORTK_BASE,GPIO_PIN_5); GPIOPinTypeGPIOOutput(GPIO_PORTK_BASE,GPIO_PIN_6); GPIOPinTypeGPIOOutput(GPIO_PORTK_BASE,GPIO_PIN_7); /* //write led GPIOPinWrite(GPIO_PORTG_BASE,GPIO_PIN_0,0); SysCtlDelay(500); GPIOPinWrite(GPIO_PORTA_BASE,GPIO_PIN_1 |GPIO_PIN_2 |GPIO_PIN_3 |GPIO_PIN_4 |GPIO_PIN_5 |GPIO_PIN_6 |GPIO_PIN_7,0); SysCtlDelay(500); //activate all GPIOPinWrite(GPIO_PORTD_BASE,GPIO_PIN_0 |GPIO_PIN_1 |GPIO_PIN_2 |GPIO_PIN_3 |GPIO_PIN_4 |GPIO_PIN_5 |GPIO_PIN_6 |GPIO_PIN_7,0xFF); SysCtlDelay(500); //deactivate all GPIOPinWrite(GPIO_PORTD_BASE,GPIO_PIN_0 |GPIO_PIN_1 |GPIO_PIN_2 |GPIO_PIN_3 |GPIO_PIN_4 |GPIO_PIN_5 |GPIO_PIN_6 |GPIO_PIN_7,0); SysCtlDelay(500); GPIOPinWrite(GPIO_PORTK_BASE,GPIO_PIN_0 |GPIO_PIN_1 |GPIO_PIN_2 |GPIO_PIN_3 |GPIO_PIN_4 |GPIO_PIN_5 |GPIO_PIN_6 |GPIO_PIN_7,test); SysCtlDelay(100);*/ /* uint8_t test = 1; while(1) { // Schaltet Led in Reihe // Schaltet Ebene //Schaltet Reihe GPIOPinWrite(GPIO_PORTG_BASE,GPIO_PIN_0,test); GPIOPinWrite(GPIO_PORTA_BASE,GPIO_PIN_1 |GPIO_PIN_2 |GPIO_PIN_3 |GPIO_PIN_4 |GPIO_PIN_5 |GPIO_PIN_6 |GPIO_PIN_7,test); SysCtlDelay(100); GPIOPinWrite(GPIO_PORTD_BASE,GPIO_PIN_0 |GPIO_PIN_1 |GPIO_PIN_2 |GPIO_PIN_3 |GPIO_PIN_4 |GPIO_PIN_5 |GPIO_PIN_6 |GPIO_PIN_7,test); SysCtlDelay(100); GPIOPinWrite(GPIO_PORTD_BASE,GPIO_PIN_0 |GPIO_PIN_1 |GPIO_PIN_2 |GPIO_PIN_3 |GPIO_PIN_4 |GPIO_PIN_5 |GPIO_PIN_6 |GPIO_PIN_7,0); SysCtlDelay(100); GPIOPinWrite(GPIO_PORTK_BASE,GPIO_PIN_0 |GPIO_PIN_1 |GPIO_PIN_2 |GPIO_PIN_3 |GPIO_PIN_4 |GPIO_PIN_5 |GPIO_PIN_6 |GPIO_PIN_7,test); SysCtlDelay(100); test = test<<1; if (test == 0) test=1; //SysCtlDelay(120e6/200); GPIOPinWrite(GPIO_PORTG_BASE,GPIO_PIN_0,0); GPIOPinWrite(GPIO_PORTA_BASE,GPIO_PIN_1 |GPIO_PIN_2 |GPIO_PIN_3 |GPIO_PIN_4 |GPIO_PIN_5 |GPIO_PIN_6 |GPIO_PIN_7,0); SysCtlDelay(100); GPIOPinWrite(GPIO_PORTD_BASE,GPIO_PIN_0 |GPIO_PIN_1 |GPIO_PIN_2 |GPIO_PIN_3 |GPIO_PIN_4 |GPIO_PIN_5 |GPIO_PIN_6 |GPIO_PIN_7,0xFF); SysCtlDelay(100); GPIOPinWrite(GPIO_PORTD_BASE,GPIO_PIN_0 |GPIO_PIN_1 |GPIO_PIN_2 |GPIO_PIN_3 |GPIO_PIN_4 |GPIO_PIN_5 |GPIO_PIN_6 |GPIO_PIN_7,0); SysCtlDelay(100); GPIOPinWrite(GPIO_PORTK_BASE,GPIO_PIN_0 |GPIO_PIN_1 |GPIO_PIN_2 |GPIO_PIN_3 |GPIO_PIN_4 |GPIO_PIN_5 |GPIO_PIN_6 |GPIO_PIN_7,0); SysCtlDelay(100); } */ }