Example #1
0
void MCU_init(void) {

	clocks_init();
	interrupts_init();

	RCC_ClockSecuritySystemCmd(ENABLE);

}
Example #2
0
/*
 * We ought to arrange for this to be called before main, but for now,
 * we require that the user's main call u2_init as the first thing...
 */
bool
u2_init(void)
{
  hal_disable_ints();
  hal_io_init();

  // init spi, so that we can switch over to the high-speed clock
  spi_init();

  // set up the default clocks
  clocks_init();

  hal_uart_init();

  // init i2c so we can read our rev
  pic_init();	// progammable interrupt controller
  i2c_init();
  hal_enable_ints();

  // flash all leds to let us know board is alive
  hal_set_led_src(0x0, 0x1f); /* software ctrl */
  hal_set_leds(0x0, 0x1f);    mdelay(300);
  hal_set_leds(LED_E, LED_E); mdelay(300);
  hal_set_leds(LED_C, LED_C); mdelay(300);
  hal_set_leds(LED_A, LED_A); mdelay(300);
  for (int i = 0; i < 3; i++){ //blink all
    static const int blinks = LED_E | LED_C | LED_A;
    hal_set_leds(0x0,    0x1f); mdelay(100);
    hal_set_leds(blinks, 0x1f); mdelay(100);
  }
  hal_set_led_src(0x1f & ~LED_D, 0x1f); /* hardware ctrl */
  hal_set_leds(LED_D, 0x1f);  // Leave one on

#if 0
  // test register readback
  int rr, vv;
  vv = ad9777_read_reg(0);
  printf("ad9777 reg[0] = 0x%x\n", vv);
  
  for (rr = 0x04; rr <= 0x0d; rr++){
    vv = ad9510_read_reg(rr);
    printf("ad9510 reg[0x%x] = 0x%x\n", rr, vv);
  }
#endif

  output_regs->serdes_ctrl = (SERDES_ENABLE | SERDES_RXEN);

  return true;
}
int main(int argc, char *argv[]) {

	hal_disable_ints();
  hal_uart_init();
	spi_init();

	puts("Hardware testbed. Init clocks...");

	clocks_init();

	//now, hopefully, we should be running at 100MHz instead of 50MHz, meaning our UART is twice as fast and we're talking at 230400.

	while(1) {
		delay(500000);
		puts("Eat at Joe's.");
	}





	return 0;
}
Example #4
0
/*FUNCTION*---------------------------------------------------------------------
*
* Function Name    : init_hardware
* Returned Value   : void
* Comments         :
*   Initialize device.
*
*END*-------------------------------------------------------------------------*/
void init_hardware(void)
{
    clocks_init();
    ddr_init();
}