LinkedIn YouTube Facebook
Szukaj

Newsletter

Proszę czekać.

Dziękujemy za zgłoszenie!

Wstecz
Artykuły

[PROJEKT] KA-NUCLEO-F411CE i Waveshare Accessory Shield – obsługa diody RGB i sterownika P9813

Test działania kodu obsługi sterownika

W celu przetestowania działania napisanych funkcji należy w pętli głównej programu zapisać sekwencję wyświetlania animacji kolorystycznej. Sterownik wymaga ciągłego transmitowania danych o wyświetlanym kolorze. Po jednokrotnym wysłaniu danych o kolorze, kolor ten zostanie wyświetlony, a zaraz po nim dioda zgaśnie. Sterownik wymaga ciągłej transmisji na zasadzie odświeżania.

Do testów została przygotowana sekwencja wyświetlająca każdy kolor z osobna, biel i płynne przejście między kolorami.

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

  /* USER CODE BEGIN 3 */
	  int i=0;

	  for(i=0;i<500;i++)
	  {
		  P9813_SetColor(255, 0, 0);
		  HAL_Delay(5000);
	  }
	  for(i=0;i<500;i++)
	  {
		  P9813_SetColor(0, 255, 0);
	  	  HAL_Delay(5000);
	  }
	  for(i=0;i<500;i++)
	  {
		  P9813_SetColor(0, 0, 255);
		  HAL_Delay(5000);
	  }
	  for(i=0;i<500;i++)
	  {
		  P9813_SetColor(255, 255, 255);
		  HAL_Delay(5000);
	  }
	  for(i=0;i<256;i++)
	  {
		  P9813_SetColor(255, i, 0);
		  HAL_Delay(50);
	  }
	  for(i=255;i>0;i--)
	  {
		  P9813_SetColor(i, 255, 0);
		  HAL_Delay(50);
	  }
	  for(i=0;i<256;i++)
	  {
		  P9813_SetColor(0, 255, i);
		  HAL_Delay(50);
	  }
	  for(i=255;i>0;i--)
	  {
		  P9813_SetColor(0, i, 255);
		  HAL_Delay(50);
	  }
	  for(i=0;i<256;i++)
	  {
		  P9813_SetColor(i, 0, 255);
		  HAL_Delay(50);
	  }
	  for(i=255;i>0;i--)
	  {
		  P9813_SetColor(255, 0, i);
		  HAL_Delay(50);
	  }
  }
  /* USER CODE END 3 */

Wgrywanie kodu do mikrokontrolera z poziomu środowiska AC6

Ostatnim etapem pracy nad projektem jest wgranie skompilowanego kodu do mikrokontrolera. Przeprowadzamy budowę projektu (Ctrl+B), a następnie wgrywamy program do mikrokontrolera naciskając przycisk Run (Ctrl+F11). Jeżeli program wgrywamy pierwszy raz od zaimportowania projektu do środowiska AC6, należy zdefiniować ustawienia debugera. W tym celu w menu kontekstowym projektu (prawy przycisk myszy na projekcie w zakładce Project Explorer) wybieramy opcję Debug As -> 1 Ac6 STM32 C/C++ Application.

 

Rys. 15. Menu kontekstowe projektu w środowisku AC6

 

Następnie w nowym oknie wybieramy przycisk „Create a new custom board”

 

Rys. 16. Wprowadzanie konfiguracji dla Debuggera

 

W kolejnym oknie zatwierdzamy zaproponowane ustawienia przyciskiem OK.

 

Rys. 17. Ustawienia płytki KA-NUCLEO dla Debuggera

 

Oraz w poprzednim oknie zatwierdzamy ustawienia przyciskiem OK. Od teraz możemy z powodzeniem wgrywać programy bezpośrednio z poziomu środowiska programistycznego AC6 dla STM32.

Autor: Jakub Kuryło