WSYW Flashcards

1
Q

Czym różnią się systemy wbudowane od zwykłych systemów
komputerowych?

A

Systemy wbudowane są zaprojektowane do spełniania konkretnej funkcji lub
może pełnić funkcje pomocnicze. Jest bardziej niezawodny od systemów
komputerów, a ich wyposażenie jest optymalizowane do ich przeznaczenia. Mają
ograniczone zasoby, tj. RAM, pamięć masowa i moc obliczeniową oraz
ograniczony interfejs użytkownika. Często są używane w urządzeniach z
ograniczonymi możliwościami zasilającymi, dlatego powinny mieć ograniczony
pobór mocy.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

. Typowe ograniczenia występujące dla systemów wbudowanych?

A

Interfejs użytkownika, pamięć RAM, pamięć masowa, moc obliczeniowa, pobór
mocy oraz odporność na warunki zewnętrzne.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Struktura systemu wbudowanego

A

Procesor, pamięć RAM, pamięć nieulotna, timery, generator sygnału zegarowego,
interfejsy komunikacyjne (np. I2C, UART, SPI), urządzenia pomiarowe/sterujące
(np. przetworniki, czujniki), blok zasilania. OPCJONALNE: interfejs użytkownika,
pamięć masowa.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Przykłady architektur używanych w systemach wbudowanych

A

8-bitowe: MCS-51, AVR, STM-8
16-bitowe: PIC-24F, DSPIC-33, MS-430
32-, 64- bitowe: ARM, RISCV, MIPS

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

. Podstawowe informacje o architekturze ARM i Cortex-M4

A

CORTEX-M4:
wydajniejsza wersja Cortexa-M3 oparta na architekturze ARMv7, dodatkowo
wyposażona w koprocesor arytmetyczny (FPU – floating point unit) oraz zestaw
instrukcji DSP (digital signal procesor), architektura 32-bitowa, 24-bitowy time
systick, TRNG (true random number generator), DMA (direct memory access),
zintegrowana pamięć i układy peryferyjne
ARCHITEKRUA ARM:
zaawansowane urządzenie RISCowe, 32-, 64-bitowe CPU, możliwość
zaimplementowania na procesorze ARM systemu operacyjnego, rodzina
architektur 32-, 64-bitowych, typu RISC

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

. Typowe mechanizmy komunikacji z systemem wbudowanym

A

CAN, SPI, QSPI, I2C, I2S, UART, USART, SDIO, USB-OTG-FS, 1-WIRE, IrDA, LIN

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Podstawowe właściwości architektury ARM

A

Zintegrowane bezpieczeństwo, wysoka wydajność obliczeniowa oraz
energetyczna, obszerny ekosystem ze wsparciem globalnym, rozpowszechniona
na całym rynku

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q
  1. W jaki sposób osiągnięto wydajne kodowanie instrukcji w architekturze
    ARM? Na czym polega łączenie instrukcji 32-bitowych i 16-bitowych?
A

T32(Thumb): Możliwość kodowania instrukcji jako słowa 32-, 16-bitowe, co
umożliwia mniejsze zużycie pamięci.
A32(ARM): Słowa tylko 32-bitowe, instrukcje są bardziej złożone oraz
wydajniejsze, ale kosztem pamięci.
Bits[15:11] determinują czy instrukcja jest 16-bitowa czy jest drugą cześcią 32-
bitowej instrukcji

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Znaczenie bibliotek CMSIS i HAL dla systemów wbudowanych
wykorzystujących mikroprocesory ARM.

A

Dzięki bibliotekom CMSIS (common microcontroller software interface standard)
umożliwiona jest przenośność systemów, jednak nie obsługują specjalizowanych
bloków I/O zależnych od producenta architektury.
Biblioteki HAL (hardware abstraction layer) są bardziej specjalizowane i
dostarczane przez środowisko, np. CubeIDE.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q
  1. Możliwości konfigurowania zegarów w procesorach ARM. Znaczenie tej
    funkcji dla kontroli poboru mocy.
A

Zmiana taktowania zegara: PLL (phase locked loop), PRESCALER. W
mikrokontrolerach ARM, można ustalić częstotliwość zegara procesora, magistral
(AHB, APB1, APB2). Dobranie możliwie niskiej częstotliwości zegara zmniejsza
pobór mocy. Bloki nieużywane mogą mieć całkowicie wyłączony sygnał zegarowy.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

GPIO - możliwości konfiguracji, użycie jako wejścia, wyjścia, rezystory
podciagajace, generacja przerwań przez GPIO.

A

Dostępne są dwie podstawowe konfiguracje - wyjście (w tym trybie wymuszamy na wyjściu stan wysoki lub stan niski) i wejście (w tym trybie odczytujemy stan logiczny odpowiadający napięciu na wyprowadzeniu). [Oprócz tego, wiele z tych wyprowadzeń posiada “funkcje alternatywne” – mogą być podłączone do wewnętrznych bloków mikrokontrolera realizujących bardziej złożone funkcje (np. interfejsów komunikacyjnych).]

Rezystory podciągające (do stanu wysokiego – pull-up, albo do niskiego – pull-down). Wymuszają odpowiedni stan na wejściu przy braku innego wymuszenia zewnętrznego.

Generacja przerwań przez GPIO:

Konfiguracja pinu GPIO

Konfiguracja przerwań GPIO

Ustawienia kontrolera przerwań (NVIC)

Programowanie obsługi przerwań ISR

Programowanie logiki obsługi przerwań w głównej pętli programu

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Przerwania - jakie jest znaczenie priorytetów przerwań. Jakie jest znaczenie
sekcji krytycznych w kodzie. Jakie zagrożenia wiążą się z korzystaniem z
przerwań. Zastosowanie atrybutu volatile w odniesieniu do zmiennych
modyfikowanych w procedurze obsługi przerwania.

A

Sekcja krytyczna to fragment kodu, do którego odwołuje się również funkcja
obsługi danego przerwania i jeśli przerwanie nastąpi akurat w trakcie
wykonywania tej sekcji, możliwe jest wystąpienie błędu w programie.
Dla zmiennych, które modyfikuje się w wątku głównym i w przerwaniu
wykorzystuje się

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

. UART - zasada działania, podstawowe parametry transmisji.

A

bandwidth, długość słowa, parzystość, ilość stop bitów, oversampling
(próbkowanie jednego bitu dla bezpieczeństwa), pierwszy bit 0 START, ostatni bit 1 STOP długość łącznie 10 bit

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Funkcja SysTick - przeznaczenie, sposób realizacji, wykorzystanie, funkcja
HAL_Delay.

A

32-bitowa wartość, która jest zwiększana co 1ms. Można odczytać za pomocą
HAL_GetTick(). HAL_Delay() zatrzymuje wątek główny. Może się przepełnić i zacząć
liczyć od nowa, przez co pom

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Bufor cykliczny jako struktura danych umożliwiająca przesyłanie informacji między procedurą obsługi przerwania a wątkiem głównym.

A

Bufor cykliczny to struktura danych, która umożliwia przesyłanie informacji między procedurą obsługi przerwania (ISR) a wątkiem głównym w sposób efektywny i bezpieczny pod względem równoczesnego dostępu. Jest jednym z efektywnych sposobów komunikacji między asynchronicznymi i synchronicznymi częściami programu w systemach wbudowanych.?

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q
  1. Timery - funkcje liczenia w górę, w dół, naprzemiennego, generowanie przerwań.
A

Są to układy sprzętowo zliczające okresy doprowadzonego do nich zegara. Zakres zliczania jest określany przez liczbę bitów licznika timera, ale może być skrócony.
Timer liczy w dół, od programowanej początkowej wartości. Po osiągnięciu zera, licznik jest ładowany maksymalną wartością, jest generowane przerwanie i timer wraca do wartości początkowej.

Przy liczeniu w górę, po osiągnięciu maksymalnej wartości, licznik jest zerowany i generowane jest przerwanie lub zdarzenie sprzętowe.

Przy liczeniu na przemian, po osiągnięciu maksymalnej wartości, licznik zaczyna liczyć w dół i generowane jest przerwanie lub zdarzenie sprzętowe. Po osiągnięciu zera, licznik zaczyna liczyć w górę i generowane jest przerwanie sprzętowe.

17
Q

. PWM - zasada działania funkcji, możliwości realizacji przebiegów o określonych zależnościach fazowych. Przykłady zastosowań PWM. Sterowanie obciążeń o dużej mocy, konieczność uwzględnienia czasu martwego.

A

Zasada:

Początkowa wartość sygnału ´ wyjściowego “0”

Sygnał ustawiany na “1” przy osiągnięciu wartości CCR przez licznik

Sygnał wraca do “0” przy zerowaniu licznika

Zastosowania:

Możemy określić początkową wartość sygnału po przeładowaniu licznika.

Możemy określić akcję wykonywaną po osiągnięciu wartości zapisanej w rejestrze (CCR), ustawienie sygnału w stan aktywny, ustawienie sygnału w stan nieaktywny lub zmiana stanu sygnału (polaryzacja sygnału może być określana niezależnie).

Dodatkowo, po osiągnięciu wartości zapisanej w rejestrze może być generowane przerwanie lub zdarzenie sprzętowe.

Regulacja jasności świecenia diod LED.

Proste przetwarzanie analogowo/cyfrowe.

Sterowanie silnikami.

PWM dobrze nadaje się przy generacji sygnałów dużej mocy.

Realizacja przebiegów o określonych zależnościach fazowych:

Programowo

Sprzętowo

18
Q
A