-
21. Data: 2019-08-13 20:34:36
Temat: Re: PIC24fj256da210 - dziwne zachowanie GPIO
Od: Atlantis <m...@w...pl>
On 13.08.2019 15:33, Marek wrote:
> Źle skonfigurowane bufory są wykrywane runtime i wtedy kod robi
> while(0); jeśli masz aktywnego wdg będą resety w kółko.
Watchdog wyłączony. Na tym etapie tylko zaciemniałby sytuację.
Wygląda na to, że chyba znalazłem przyczynę. Wczytałem się w
dokumentację i okazuje się, że ten konkretny model PIC24 ma sporą
pamięć, ale nie cała jest dostępne bezpośrednio. W standardowy sposób
dostępne jest tylko 30kB, pozostałe 66kB to pamięć rozszerzona (EDS).
Zmylił mnie fakt, że MPLABX w użytych zasobach uwzględnia całość. Z
punktu widzenia programu pamięci było mniej niż oczekiwałem i stos w
pewnym momencie zaczął pisać po stercie.
Przejrzałem kod i odzyskałem trochę zmiennych globalnych tam, gdzie to
tylko było możliwe. Wystarczyło, żeby ruszyły wszystkie rzeczy, które do
tej pory nie chciały działać.
Teraz tylko muszę opanować obsługę tej rozszerzonej pamięci z poziomu C.
Gotowych bibliotek nie chciałbym przerabiać, ale teraz zostało mi już
tylko (poza dopracowaniem paru szczegółów) napisanie warstwy własnej
aplikacji, która równie dobrze może korzystać z tej części RAM-u.
-
22. Data: 2019-08-14 09:15:30
Temat: Re: PIC24fj256da210 - dziwne zachowanie GPIO
Od: Marek <f...@f...com>
On Tue, 13 Aug 2019 20:34:36 +0200, Atlantis <m...@w...pl>
wrote:
> Teraz tylko muszę opanować obsługę tej rozszerzonej pamięci z
> poziomu C.
Takie pytanie zasadnicze - po co Ci ten wynalazek? :) Masz opanowany
pic32, o wiele więcej zasobów, z kontekstu wynika że probojesz
uruchamic podobny soft (stos tcpip) który z powodzeniem uruchamiales
na pic32 Po co się męczyć z niszowym układem? Jak mawiał klasyk
edukacja nie usprawiedliwia straconego czasu :).
--
Marek
-
23. Data: 2019-08-14 11:20:34
Temat: Re: PIC24fj256da210 - dziwne zachowanie GPIO
Od: Atlantis <m...@w...pl>
On 14.08.2019 09:15, Marek wrote:
> Takie pytanie zasadnicze - po co Ci ten wynalazek? :) Masz opanowany
> pic32, o wiele więcej zasobów, z kontekstu wynika że probojesz uruchamic
> podobny soft (stos tcpip) który z powodzeniem uruchamiales na pic32 Po
> co się męczyć z niszowym układem? Jak mawiał klasyk edukacja nie
> usprawiedliwia straconego czasu :).
1) Praktyczny cel jest taki, że PIC24 traktuję jako furtkę do dsPIC33,
którym też chciałbym się trochę bliżej przyjrzeć. Sporo krótkofalarskich
projektów opartych na DSP powstało właśnie na procesorach z tej rodziny.
2) Okazuje się, że nie ma aż tak wielkich różnic pomiędzy PIC24 i PIC32.
Największą jest fakt, że pisząc kod najlepiej posługiwać się rejestrami
- biblioteka plib (przynajmniej ta "legacy") zdaje się być mniej
dopracowana i chyba nie jest do końca kompatybilna z nowszymi układami.
Jednak układ rejestrów jest bardzo podobny i można się w tym bez trudu
połapać. Chciałem jednak wykonać jakiś projekt na tym MCU aby przekonać
się, czy nie ma jakichś poważniejszych "pułapek" i jak się okazuje, na
jedną trafiłem. Teraz powinno już pójść z górki. ;)
3) To trochę realizacja hobby. Uruchamiałem już soft na różnych
"dziwnych" rodzinach CPU i MCU. W tym także takich, które zaliczają się
do kategorii "retro". Jednym z projektów, które w tej chwili leżą u mnie
na półce jest przeniesienie pewnej istniejącej konstrukcji (w pierwszej
wersji zrealizowanej na AVR, w drugiej na PIC32) na system
mikroprocesorowy oparty na 6502. ;)