Esempio n. 1
0
int main(void)
{

  HAL_Init();

  SystemClock_Config();


  MX_GPIO_Init();
  MX_ADC1_Init();
  MX_DMA2D_Init();
  MX_FMC_Init();
  MX_I2C3_Init();
  MX_LTDC_Init();
  MX_RNG_Init();
  MX_SPI5_Init();

	BSP_LCD_Init();
	BSP_LCD_LayerDefaultInit(LCD_BACKGROUND_LAYER, LCD_FRAME_BUFFER);
	BSP_LCD_LayerDefaultInit(LCD_FOREGROUND_LAYER, LCD_FRAME_BUFFER);
	BSP_LCD_SelectLayer(LCD_FOREGROUND_LAYER);
	BSP_LCD_Clear(LCD_COLOR_BLACK);
	BSP_LCD_DisplayOn();
	uint8_t Button_Value;
	GPIO_InitTypeDef GPIO_InitStruct;
  GPIO_InitStruct.Pin |= GPIO_PIN_0;
  GPIO_InitStruct.Mode = 0x00;
  GPIO_InitStruct.Pull = 0x02;
  HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
	while (1)
		{
		
		for(uint16_t i = 0; i < SIZE; i+=2) {
			HAL_ADC_Start(&hadc1);
			HAL_ADC_PollForConversion(&hadc1,1000); 
			samples[i] = HAL_ADC_GetValue(&hadc1);
			samples[i+1] = 0;
			HAL_ADC_Stop(&hadc1);
		}
		
		Button_Value = HAL_GPIO_ReadPin(GPIOA, GPIO_PIN_0);
		if( Button_Value )
		{		
			fft();
			
		}
		else
		{
		
			display_samples(samples);

		}
	}
}
Esempio n. 2
0
File: main.c Progetto: yym36100/g1
int main(void)
{

  /* USER CODE BEGIN 1 */

  /* USER CODE END 1 */

  /* MCU Configuration----------------------------------------------------------*/

  /* Reset of all peripherals, Initializes the Flash interface and the Systick. */
  HAL_Init();

  /* Configure the system clock */
  SystemClock_Config();

  /* Initialize all configured peripherals */
  MX_GPIO_Init();
  MX_DMA_Init();
  MX_FMC_Init();
  MX_DMA2D_Init();
  MX_LTDC_Init();
  MX_SPI5_Init();

  /* USER CODE BEGIN 2 */

  /* USER CODE END 2 */

  /* Infinite loop */
  /* USER CODE BEGIN WHILE */
	HAL_GPIO_TogglePin(green_led_GPIO_Port,green_led_Pin);
  while (1)
  {
  /* USER CODE END WHILE */

  /* USER CODE BEGIN 3 */
		HAL_GPIO_TogglePin(red_led_GPIO_Port,red_led_Pin);
		HAL_GPIO_TogglePin(green_led_GPIO_Port,green_led_Pin);
		HAL_Delay(1000);
		
	
		p = (uint32_t*)sdram_start_address;
		//r(i=0;i<8*1024*1024;i+=4){
			//HAL_SDRAM_Write_32b(&hsdram1,(uint32_t*)(sdram_start_address+i),&pattern,1);			
			//(__IO uint32_t *)(p++) = pattern;
//}
		
		//L_DMA_XFER_CPLT_CB_ID
		pattern = rand();
		
		HAL_DMA_RegisterCallback(&hdma_memtomem_dma2_stream0,HAL_DMA_XFER_CPLT_CB_ID,myDMA_Callback);
		for(i=0;i<2;i++){
			HAL_DMA_Start_IT(&hdma_memtomem_dma2_stream0,
			(uint32_t)&pattern,
			(uint32_t)p,38400);
			p+=38400;
			while(!done);
			done = 0;
		}
		HAL_Delay(1000);
		start = HAL_GetTick();
	//todo add mandelbrot here
		{
			 float sx,ex,sy,ey;
			 float	zof = 0.00001;
		   float zfi = 0.00001;
			sx = -1.4481471; ex = -1.4472926; sy = -0.0012840417; ey = -0.00030747990;
			
			while(zof<0.00163999794){
				
				drawset2(sx, ex, sy, ey);
				
				zof+=zfi;
				sx -= zof;
				ex += zof;
				sy -= zof;
				ey += zof;
				
				HAL_Delay(16);
			}
			
			
		}
		//HAL_Delay(1000);
		//drawset2(-1.4494717,-1.4477627,-0.0017153568,0.00023776683);
		
		
		stop = HAL_GetTick();
		delta = stop- start;
		#if 0
		p = (uint32_t*)sdram_start_address;
		for(i=0;i<128*65532;i+=4){
			//HAL_SDRAM_Read_32b(&hsdram1,(uint32_t*)(sdram_start_address+i),&read_pattern,1);
			read_pattern = *(__IO uint32_t *)(p++);
			if(read_pattern!=0xaa55aa55)
			{
				while(1){
					HAL_GPIO_TogglePin(red_led_GPIO_Port,red_led_Pin);
					HAL_GPIO_TogglePin(green_led_GPIO_Port,green_led_Pin);
					HAL_Delay(50);
				}
			}
		}
		stop = HAL_GetTick();
		delta = stop- start;
		#endif

  }
  /* USER CODE END 3 */

}
Esempio n. 3
0
int main(void)
{

  /* USER CODE BEGIN 1 */

  /* USER CODE END 1 */

  /* MCU Configuration----------------------------------------------------------*/

  /* Reset of all peripherals, Initializes the Flash interface and the Systick. */
  HAL_Init();

  /* Configure the system clock */
  SystemClock_Config();

  /* Initialize all configured peripherals */
  MX_GPIO_Init();
  MX_FMC_Init();
  MX_I2C3_Init();
  MX_LTDC_Init();
  MX_SPI5_Init();
  MX_UART5_Init();
  MX_USART1_UART_Init();
  MX_USB_OTG_HS_PCD_Init();

  /* USER CODE BEGIN 2 */
  /* these calls are from arduino main */

	init();

	initVariant();
	
	HAL_Delay(7000); 	/* Wait 7 seconds to enable a serial coms channel */
	
	/* 
		Usart6 is linked to printf for diagnostic use It is also mapped to
		alternate function pins 12 and 14.  This code is adapted from
		the prinf demo in the STM32F401 Nucleo examples folder
	*/
	
	//printf("Serial backchannel enabled.\r\n");
  
  	/* Arduino optionally sets up USB callback stream here 
#if defined(USBCON)
	USBDevice.attach();
#endif
	*/
	
	setup();

  /* USER CODE END 2 */

  /* Infinite loop */
  /* USER CODE BEGIN WHILE */
  while (1)
  {
  /* USER CODE END WHILE */

  /* USER CODE BEGIN 3 */
	loop();
	/* Arduino callback	if (serialEventRun) serialEventRun(); */

  }
  /* USER CODE END 3 */

}