[KURS] Aplikacje DSP na przykładzie mikrokontrolerów C2000 firmy Texas Instruments inicjalizacja systemowa procesora serii Piccolo F2802x, część 3

27. Skonfiguruj wyprowadzenie GPIO18 jako sygnał wyjściowy XCLKOUT.

Za linią kodu

Wstaw nową linię kodu

28. Zmień wartość podzielnika dla sygnału wyjściowego XCLKOUT na podział przez jeden.

Wstaw kolejną nową linię kodu

29. Wykonaj samo budowanie projektu (bez ponownego startowanie sesji debugowej). Przełącz się na perspektywę CCS Edit. Kliknij na przycisk Build . Nie używaj przycisku Debug. 30. Na pytanie czy załadować plik wynikowy kodu przyciśnij przycisk Yes. Poczekaj na załadowanie programu. Przełącz się na perspektywę CCS Debug.

31. Dołącz sondę oscyloskopu do sygnału XCLKOUT.32. Kliknij na przycisk Reset CPU  na pasku narzędziowym okna Debug. 33. Przyciśnij przycisk RESET (S2) na płytce zestawu C2000 Piccolo LaunchPad. 34. Kliknij na przycisk Reset CPU  na pasku narzędziowym okna Debug .

W ten sposób została wykonana sprzętowa operacja RESET układu procesorowego F28027 Piccolo bez utraty programu wpisanego do pamięci RAM i bez wychodzenia ze środowiska CCSv5 (rysunek 22).

 

Rys. 22. Stan perspektywy CCS Debug po wykonaniu sprzętowej operacji RESET

Rys. 22. Stan perspektywy CCS Debug po wykonaniu sprzętowej operacji RESET

 

35. Wykonaj ponowne uruchomienie programu. Kliknij na przycisk Restart . Praca programu zostanie zatrzymana na pierwszej linii kodu funkcji main() (rysunek 23).

 

Rys. 23. Stan perspektywy CCS Debug po wykonaniu operacji Restart poprzedzonej sprzętową operacją RESET

Rys. 23. Stan perspektywy CCS Debug po wykonaniu operacji Restart poprzedzonej sprzętową operacją RESET

 

36. Wykonaj program do linii z wywołaniem funkcji CLK_setClkOutPreScaler. Zaznacz tą linię, kliknij na nią lewym klawiszem myszy.

37. Kliknij prawym klawiszem na zaznaczoną linię (poza tekstem kodu) i wybierz pozycję Run to Line.

Program zostanie uruchomiony i zatrzymany na zaznaczonej linii kodu.

38. Zobacz na oscyloskopie przebieg sygnału XCLKOUT.

Układ generacji zegara systemowego i moduł PLL pracuje z ustawieniami domyślnymi (x12, /4). Podzielnik sygnału wyjściowego XCLKOUT ma domyślne ustawienie podziału przez cztery (/4) Dlatego sygnał wyjściowy ma częstotliwość XCLKOUT=10MHz/4/4= 625kHz (rysunek 24).

 

Rys. 24. Sygnał XCLKOUT układu procesorowego Piccolo F28027 po uruchomieniu programu poprzedzonego sprzętową operacją RESET – praca z ustawieniami domyślnymi rejestrów serujących modułu PLL oraz podzielnika sygnału XCLKOUT. XCLKOUT = SYSCLKOUT/4

Rys. 24. Sygnał XCLKOUT układu procesorowego Piccolo F28027 po uruchomieniu programu poprzedzonego sprzętową operacją RESET – praca z ustawieniami domyślnymi rejestrów serujących modułu PLL oraz podzielnika sygnału XCLKOUT. XCLKOUT = SYSCLKOUT/4

 

39. Wykonaj zaznaczoną linię kodu. Kliknij na przycisk pracy krokowej Step Over  na pasku narzędziowym okna Debug. Zobacz na oscyloskopie przebieg sygnału XCLKOUT (rysunek 25).

Zmiana podzielnika sygnału wyjściowego na jeden daje sygnał XCLKOUT=10MHz/4= 10MHz

 

Rys. 25. Sygnał XCLKOUT układu procesorowego Piccolo F28027 po uruchomieniu z ustawieniami domyślnymi rejestrów serujących modułu PLL oraz ze zmienionym podzielnikiem sygnału wyjściowego XCLKOUT na jeden. XCLKOUT = SYSCLKOUT

Rys. 25. Sygnał XCLKOUT układu procesorowego Piccolo F28027 po uruchomieniu z ustawieniami domyślnymi rejestrów serujących modułu PLL oraz ze zmienionym podzielnikiem sygnału wyjściowego XCLKOUT na jeden. XCLKOUT = SYSCLKOUT

 

40. Wykonaj dwie następne linie kodu (razem z wywołaniem funkcji PLL_setup ). Kliknij dwa razy na przycisk pracy krokowej Step Over  na pasku narzędziowym okna Debug. 41. Zobacz w oknie Registers zmianę ustawienia rejestru sterującego PLLSTS modułu PLL (rysunek 26).

 

Rys. 26. Stan perspektywy CCS Debug po skonfigurowaniu modułu PLL na pracę z maksymalną częstotliwością systemowego sygnału zegarowego. XCLKOUT = SYSCLKOUT

Rys. 26. Stan perspektywy CCS Debug po skonfigurowaniu modułu PLL na pracę z maksymalną częstotliwością systemowego sygnału zegarowego. XCLKOUT = SYSCLKOUT

 

O autorze