void prvSetupHardware( void ) { /* If running on Rev A2 silicon, turn the LDO voltage up to 2.75V. This is a workaround to allow the PLL to operate reliably. */ // if( DEVICE_IS_REVA2 ) // { // SysCtlLDOSet( SYSCTL_LDO_2_75V ); // } // // Set the clocking to run from the PLL at 50 MHz // SysCtlClockSet( SYSCTL_SYSDIV_4 | SYSCTL_USE_PLL | SYSCTL_OSC_MAIN | SYSCTL_XTAL_8MHZ ); /* Enable Port F for Ethernet LEDs LED0 Bit 3 Output LED1 Bit 2 Output */ SysCtlPeripheralEnable( SYSCTL_PERIPH_GPIOF ); GPIODirModeSet( GPIO_PORTF_BASE, (GPIO_PIN_2 | GPIO_PIN_3), GPIO_DIR_MODE_HW ); GPIOPadConfigSet( GPIO_PORTF_BASE, (GPIO_PIN_2 | GPIO_PIN_3 ), GPIO_STRENGTH_2MA, GPIO_PIN_TYPE_STD ); enableSysClock(); enableGPIO(); enableADC(); enableUART(); }
void gps_igt() { disableUART(); GPIO_SetBits(GPIOC, GPIO_Pin_0); delay(); GPIO_ResetBits(GPIOC, GPIO_Pin_0); enableUART(); }
void init( void ) { int i ; enableUART(0,115200); enableUART(1,115200); usbll_init(); messageRxInit(); framInit(); // must come before ethernet ethernetInit(); samba_init(); setUsbCallback(USBAPP_ETHERNET,ethernetUsbRx); while(1){ setLED(i++ >> 10); usbll_poll(); } }
void enableMessaging(void) { enableUART(UART_PORT, 115200); }
void initGPS() { enableUART(); //enable Alternate function reg RCC_APB2PeriphClockCmd(RCC_APB2ENR_AFIOEN, ENABLE); GPIO_InitTypeDef txPin; GPIO_InitTypeDef rxPin; #ifdef TERM_UART1 txPin.GPIO_Pin = GPIO_Pin_9; txPin.GPIO_Mode = GPIO_Mode_AF_PP; txPin.GPIO_Speed = GPIO_Speed_2MHz; GPIO_Init(GPIOA, &txPin); rxPin.GPIO_Pin = GPIO_Pin_10; rxPin.GPIO_Mode = GPIO_Mode_IPU; rxPin.GPIO_Speed = GPIO_Speed_2MHz; GPIO_Init(GPIOA, &rxPin); #elif defined TERM_UART2 txPin.GPIO_Pin = GPIO_Pin_2; txPin.GPIO_Mode = GPIO_Mode_AF_PP; txPin.GPIO_Speed = GPIO_Speed_2MHz; GPIO_Init(GPIOA, &txPin); rxPin.GPIO_Pin = GPIO_Pin_3; rxPin.GPIO_Mode = GPIO_Mode_IN_FLOATING; rxPin.GPIO_Speed = GPIO_Speed_2MHz; GPIO_Init(GPIOA, &rxPin); #elif defined TERM_UART3_REMAPPED txPin.GPIO_Pin = GPIO_Pin_10; txPin.GPIO_Mode = GPIO_Mode_AF_PP; txPin.GPIO_Speed = GPIO_Speed_2MHz; GPIO_Init(GPIOC, &txPin); rxPin.GPIO_Pin = GPIO_Pin_11; rxPin.GPIO_Mode = GPIO_Mode_IN_FLOATING; rxPin.GPIO_Speed = GPIO_Speed_2MHz; GPIO_Init(GPIOC, &rxPin); GPIO_PinRemapConfig(GPIO_PartialRemap_USART3, ENABLE); #endif //Map UART interrupt NVIC_InitTypeDef termInt; #ifdef TERM_UART1 termInt.NVIC_IRQChannel = USART1_IRQn; #elif defined TERM_UART2 termInt.NVIC_IRQChannel = USART2_IRQn; #elif defined TERM_UART3_REMAPPED termInt.NVIC_IRQChannel = USART3_IRQn; #endif termInt.NVIC_IRQChannelCmd = ENABLE; termInt.NVIC_IRQChannelPreemptionPriority = 1; termInt.NVIC_IRQChannelSubPriority = 3; NVIC_Init(&termInt); GPIO_InitTypeDef pin; pin.GPIO_Mode = GPIO_Mode_Out_PP; pin.GPIO_Speed = GPIO_Speed_2MHz; pin.GPIO_Pin = GPIO_Pin_9; GPIO_Init(GPIOC, &pin); GPIO_ResetBits(GPIOC, GPIO_Pin_9); pin.GPIO_Pin = GPIO_Pin_8; GPIO_Init(GPIOC, &pin); GPIO_ResetBits(GPIOC, GPIO_Pin_8); pin.GPIO_Pin = GPIO_Pin_0; GPIO_Init(GPIOC, &pin); GPIO_ResetBits(GPIOC, GPIO_Pin_0); delay(); }