Dla mikrokontrolerów 32-bitowych nie ma dedykowanych bibliotek w których znajdziemy funkcję opóźniające czyli delay-e. W przypadku 8-bitowców i 16-bitowców takie biblioteki znajdziemy bez trudu. Ktoś wyszedł z zalożenia , że takiego sprintera 32-bitowego nie wypada łapać za portki aby go spowolinić, tym bardziej , że życie wewnętrzne w rdzeniach 32-bitowych jest na tyle bogate, że przy delayach o standardowej konstrukcji coś tam może się odbić czkawką. Na potrzebę użycia delay-i natknąłem się bardzo szybko przy okazji pisaniu softu dla wyświetlacza DOGM162. Więc chcąc nie chcąc musiałem je mieć.
Artykuł będzie krótki jak świński ogon. Bohaterem jest biblioteka naszykowana przeze mnie i sprawdzona analizatorem stanów logicznych. Więc daję gwarancję , że działa poprawnie i nie wysypie rdzenia :)
Dużą pomocą było forum Microchipa. Powiem tylko przy tej okazji, że forum to jest stawiane jako wzór dla innych. Jest to duży plus dla Microchipa, że posiada takie forum , które skupia wokół siebie wartościowych ludzi o dużej kulturze technicznej i osobistej.
Poniżej w linkach biblioteczka powieszona w repozytorium GITHuba. Dołączamy do projektu z PIC32MM i używamy. W pliku nagłówkowym delay.h musimy tylko podać wartość ustawionego zegara systemowego, innych wartości nie zmieniamy.
Pamiętajmy jednak , że delay-i staramy się używać jak najmniej, a jak najwięcej korzystać z Timerów.
Pozdrawiam
picmajster.blog@gmail.com
picmajster.blog@gmail.com
Linki :
Brak komentarzy:
Prześlij komentarz