Biblioteka DSP dla mikrokontrolerów LPC1700 i LPC1300 firmy NXP
Wydajność kontroli PID przedstawiono w tabeli 11.
Tab. 11. Kontrola PID
| Mnożnik zegara pamięci 1 | Mnożnik zegara pamięci 2 | Mnożnik zegara pamięci 3 | ||||
| (20 MHz maks.) | (40 MHz maks.) | (60 MHz maks.) | ||||
| Cykle | Czas (μs) | Cykle | Czas (μs) | Cykle | Czas (μs) | |
| PID | 47 | 2,350 | 49 | 1,225 | 52 | 0,867 |
| Mnożnik zegara pamięci 4 | Mnożnik zegara pamięci 5 | Mnożnik zegara pamięci 6 | ||||
| (80 MHz maks.) | (100 MHz maks.) | (120 MHz maks.) | ||||
| Cykle | Czas (μs) | Cykle | Czas (μs) | Cykle | Czas (μs) | |
| PID | 56 | 0,700 | 60 | 0,600 | 60 | 0,500 |
Generator liczb losowych
W bibliotece zaimplementowano asemblerową wersję generatora ciągu losowego „ Linear Congruential ”. Jeśli potrzebny jest wynik krótszy, niż 32-bitowy, lepiej wybrać starsze bity zwróconego słowa, ponieważ są one „bardziej losowe” od bitów młodszych.
Wzór opisujący liczbę losową:
Gdzie:
Yn jest nową liczbą w generowanym ciągu
Xn jest wartością ziarna
c jest odpowiednio dobraną stałą
a jest odpowiednio dobranym stałym mnożnikiem
m jest odpowiednio dobranym dzielnikiem modulo
W naszej implementacji m = 2^32, zatem wykorzystaliśmy tylko podstawowa arytmetykę
c = 32767
a = 16644525
Prototyp funkcji generatora liczb losowych:
int iF_RandomNumber(int i_Seed);
Wskazówka: aby utworzyć ciąg liczb losowych, należy wykorzystać poprzedni wynik jako ziarno dla następnego wywołania.
Wydajność generatora liczb losowych przedstawiono w tabeli 12.
Tab. 12. Generator liczb losowych
| Mnożnik zegara pamięci 1 | Mnożnik zegara pamięci 2 | Mnożnik zegara pamięci 3 | ||||
| Generator | (20 MHz maks.) | (40 MHz maks.) | (60 MHz maks.) | |||
| liczb losowych | Cykle | Czas (μs) | Cykle | Czas (μs) | Cykle | Czas (μs) |
| 23 | 1,150 | 26 | 0,650 | 30 | 0,500 | |
| Mnożnik zegara pamięci 4 | Mnożnik zegara pamięci 5 | Mnożnik zegara pamięci 6 | ||||
| Generator | (80 MHz maks.) | (100 MHz maks.) | (120 MHz maks.) | |||
| liczb losowych | Cykle | Czas (μs) | Cykle | Czas (μs) | Cykle | Czas (μs) |
| 34 | 0,425 | 38 | 0,380 | 38 | 0,317 | |
Opracowanie wykonane na podstawie noty aplikacyjnej NXP AN1091:3 DSP library for LPC1700 and LPC1300 ; Rev. 3 — czerwiec 2010.
Bibliografia
[1]Knuth, The Art of Computer Programming Vol. 2, Semi-numerical Algorithms, Chapter 3 – Random Numbers[2]Rabiner and Gold, Theory & Application of Digital Signal Processing
[3]Proakis and Manolakis, Digital Signal Processing, Principles, Algorithms, and Applications


Od wzmacniacza nieodwracającego do integratora i wzmacniacza ładunkowego, czyli historia z zaskakującą pointą jak w dobrym kryminale
Green czy smart? Jak decyzje ESG zaczynają optymalizować procesy produkcyjne
Firma Semicon ma w ofercie narzędzia do obróbki przewodów 

![https://www.youtube.com/watch?v=BgxJVTwYJ-s Zapraszamy do obejrzenia filmu i wysłuchania krótkich wypowiedzi prelegentów Hardware Forum 2026 i organizatorów majowej konferencji dla inżynierów z branży elektronicznej: Konrad Bruliński z Lemontech, prof. Krzysztof Kulpa z Politechniki Warszawskiej, Zbigniew Huber z FLC, Ewa Załupska z firmy KROK, Jerzy Kozieł z MPTECH, Grzegorz Potyralski z VIGO Photonics, dr Krzysztof Czuba z Politechniki Warszawskiej, Anna Beata Kalisz Hedegaard z Quantum Security Defence, Adrian Cichosz z Elhurt Dystrybucja Anna Kamińska z Creotech Quantum, oraz Łukasz Jaeszke i Adam Jaeszke z TEK.day [materiał redakcyjny]](https://mikrokontroler.pl/wp-content/uploads/2026/05/tytulowe-film-1.png)



