Exemple #1
0
int main(
    void)
{
    struct itimer Blink_Timer;

    /*At this stage the microcontroller clock setting is already configured,
       this is done through SystemInit() function which is called from startup
       file (startup_stm32f10x_xx.s) before to branch to application main.
       To reconfigure the default setting of SystemInit() function, refer to
       system_stm32f10x.c file */
    RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, ENABLE);
    RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);
    led_init();
    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOB |
        RCC_APB2Periph_GPIOC | RCC_APB2Periph_GPIOD | RCC_APB2Periph_GPIOE,
        ENABLE);
    timer_init();
    lse_init();
    led_init();
    rs485_init();
    bacnet_init();
    timer_interval_start(&Blink_Timer, 125);
    for (;;) {
        if (timer_interval_expired(&Blink_Timer)) {
            timer_interval_reset(&Blink_Timer);
            led_ld3_toggle();
        }
        led_task();
        bacnet_task();
    }
}
Exemple #2
0
void app_main()
{
	copy_static();			/* Need to do this before I/O init */
	usart_list[0].usart = DBGU;	/* Use the debug unit for serial IO */
	usart_list[0].baud = 115200;
	usart_list[0].flags = 
		UF_BREAK |		/* Interrupt on break from terminal */
		UF_CR;			/* Allow CR as end of line */
	usart_init( usart_list, USARTS );
	ad53_dac[0].pio = PIOA;
	ad53_dac[0].sclk = bit(10);
	ad53_dac[0].sync = bit(4);
	ad53_dac[0].din = bit(9);
	init_pit( PIT, TICK_HZ );
	on_tick = blink; 
	lse_init();
	/* build application primitives here */
	build_primitive( msec, "msec" );
	build_primitive( to_led, ">LED" );
	build_primitive( hard_reset, "RESET" );
	tc_primitives();
	pulsar_spi_primitives();
	pulsar_spi_init( SPI0 );
	ad53_primitives();
	tc_start();	/* go live on raw clock and PPS */
	lse_main();
}