PIC24FJ256DA210 Development Board Mapping

Gast #2309009
Lesenswert?
• ▲
▼
Hallo,

ich versuche gerade ein komplett eigenes Projekt aufzuziehen, ohne Demo 
und ohne GDD. Damit ich auch wirklich komplett weiß welche Dateien 
eingebunden sind.

Leider finde ich das Mapping in keiner Header Datei. Wo finde ich also 
das Mapping darunter verstehe ich die Zuweisung der Adressen zu einem 
Namen den ich später im Compiler verwenden kann wie z.B.:

TRISBbits.TRISB5 =0;    //D3 auf Output gesetzt


Zweite Frage: Wie weise ich einer Adresse direkt einen Wert zu?

Ist es überhaupt möglich so von Null anzufangen? Oder muss ich neben 
meiner Main auch noch eine Menge anderer Dinge vorbereiten bevor ich 
überhaupt starten kann?

Beste Grüße
Gast #2309302
Lesenswert?
• ▲
▼
Hallo

Wenn du den C30 Compiler (Compiler for PIC24) verwendest dann ist die 
Struktur von deinem Code (TRISBbits.TRISB5) in der Headerdatei 
p24FJ256DA210.h definiert.

Zu finden unter "C:\Program Files\Microchip\MPLAB C30\support\PIC24F\h"

Gruss Manuel
#2310201
Lesenswert?
• ▲
▼
Danke!!!

Hat mich schon enorm weiter gebracht! Im allgemeinen bin ich ein Neuling 
in der Mikrocontrollerwelt.

Ich verwende wie gesagt das PIC24FJ256DA210 Development Board und 
folgende Software:

mplabc30-v3.30b-windows-installer.exe
MPLAB_IDE_8_73a.zip
microchip-application-libraries-v2011-07-14-windows-installer.exe
Graphics Display Designer v2.1.0.zip

Ich bin noch dabei "http://pic-projekte.de/pic_tutorial.html"; zu lesen. 
Habt ihr noch weitere großartige Links? Bisher lese ich immer nur die 
englischen Tutorials von Microchip. Leider bauen die immer auf 
bestehenden Demos/GDD auf. Ich möchte aber die ganze Materie wirklich 
verstehen.

Auch den Inhalt der Datei: "p24FJ256DA210.h" möchte ich soweit möglich 
verstehen. Was genau passiert bei diesem Code Auschnitt?

extern volatile unsigned int  LATB __attribute__((_sfr_));
typedef struct tagLATBBITS {
  unsigned LATB0:1;
  unsigned LATB1:1;
  unsigned LATB2:1;
  unsigned LATB3:1;
  unsigned LATB4:1;
  unsigned LATB5:1;
  unsigned LATB6:1;
  unsigned LATB7:1;
  unsigned LATB8:1;
  unsigned LATB9:1;
  unsigned LATB10:1;
  unsigned LATB11:1;
  unsigned LATB12:1;
  unsigned LATB13:1;
  unsigned LATB14:1;
  unsigned LATB15:1;
} LATBBITS;
extern volatile LATBBITS LATBbits __attribute__((_sfr_));

Soweit verstehe ich das ganze bisher:
Es wird ein neuer Variablentyp definiert durch typedef. Dieser Typ hat 
den Namen "tagLATBBITS"
durch das LATBBITS vor dem Semikolon am Ende der Struktur wird dann 
direkt eine Variable vom Typ tagLATBBITS mit dem Namen LATBBITS 
deklariert.

Die erste und die letzte Zeile sind mir jedoch recht unklar.

Vielen Dank schonmal!

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.