int platform_init() { unsigned i; TIM_InitTypeDef tim; TIM_TypeDef* base; // System configuration platform_config_scu(); // PIO setup for( i = 0; i < 10; i ++ ) GPIO_DeInit( ( GPIO_TypeDef* )port_data[ i ] ); // Initialize VIC VIC_DeInit(); // UART setup (only STR9_UART is used in this example) platform_uart_setup( CON_UART_ID, CON_UART_SPEED, 8, PLATFORM_UART_PARITY_NONE, PLATFORM_UART_STOPBITS_1 ); // Initialize timers for( i = 0; i < 4; i ++ ) { base = ( TIM_TypeDef* )timer_data[ i ]; TIM_DeInit( base ); TIM_StructInit( &tim ); tim.TIM_Clock_Source = TIM_CLK_APB; tim.TIM_Prescaler = 255; TIM_Init( base, &tim ); TIM_CounterCmd( base, TIM_START ); } cmn_platform_init(); return PLATFORM_OK; }
int platform_init() { unsigned i; TIM_InitTypeDef tim; TIM_TypeDef* base; // System configuration platform_config_scu(); // PIO setup for( i = 0; i < 10; i ++ ) GPIO_DeInit( ( GPIO_TypeDef* )port_data[ i ] ); // UART setup (only STR9_UART is used in this example) platform_uart_setup( 0, 115200, 8, PLATFORM_UART_PARITY_NONE, PLATFORM_UART_STOPBITS_1 ); // Initialize timers for( i = 0; i < 4; i ++ ) { base = ( TIM_TypeDef* )timer_data[ i ]; TIM_DeInit( base ); TIM_StructInit( &tim ); tim.TIM_Clock_Source = TIM_CLK_APB; tim.TIM_Prescaler = 255; TIM_Init( base, &tim ); TIM_CounterCmd( base, TIM_START ); } // Set the send/recv functions std_set_send_func( uart_send ); std_set_get_func( uart_recv ); return PLATFORM_OK; }
int platform_init() { unsigned i; TIM_InitTypeDef tim; TIM_TypeDef* base; // System configuration platform_config_scu(); // PIO setup for( i = 0; i < 10; i ++ ) GPIO_DeInit( ( GPIO_TypeDef* )port_data[ i ] ); // UART setup platform_gpio_uart_setup(); // Initialize timers for( i = 0; i < NUM_PHYS_TIMER; i ++ ) { base = ( TIM_TypeDef* )str9_timer_data[ i ]; TIM_DeInit( base ); TIM_StructInit( &tim ); tim.TIM_Clock_Source = TIM_CLK_APB; tim.TIM_Prescaler = 255; TIM_Init( base, &tim ); TIM_CounterCmd( base, TIM_START ); } cmn_platform_init(); #ifdef BUILD_ADC // Setup ADCs platform_setup_adcs(); #endif #ifdef BUILD_CAN // Setup CANs cans_init(); #endif // Initialize system timer cmn_systimer_set_base_freq( 1000000 ); cmn_systimer_set_interrupt_freq( VTMR_FREQ_HZ ); platform_s_timer_set_match_int( VTMR_TIMER_ID, 1000000 / VTMR_FREQ_HZ, PLATFORM_TIMER_INT_CYCLIC ); return PLATFORM_OK; }