www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Fertige Schaltung: Pic24F durch dsPic ersetzen. Ist das ohne weiteres möglich?


Autor: Klaus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe nur schnell eine allgemeine Frage, bevor ich tiefer in die 
Marterie eintauche.
Ich habe eine fertige PIC24F Schaltung bekommen. Nun möchte ich diverse 
AD-Wandlerwerte nicht mehr nur ausgeben, sondern verarbeiten. Diverse 
Gleitkommamultiplikationen sind von Nöten und Arrays, die leider den 
Speicher des PICs sprengen.

Die schnelle Idee war, den Pic24f durch einen dsPic (für's Rechnen) zu 
ersetzen und mehr externen Speicher (für die Arrays) ranzuhängen.

Kann ich meinen bisherigen Code inkl. dazugehöriger Peripherie (externer 
wandler, zeug am SPI und I2C und bisschen klein kram grob 1zu1 auf einem 
dsPic verwenden? Oder anders gefragt. Ist der Pic24 baugleich zu einem 
dsPic, nur das der noch DSP macht?


Gruß
Klaus

Autor: sebihepp (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Uff, also I2C und SPI sind ja genormt. Und da auch die dsPIC33 das 
beherrschen müssten diese Bauteile auch funktionieren.

Der Code ist ja auch 16 Bit. Du müsstest auf jeden Fall neu compilieren 
und includes und Bezeichner anpassen. Vielleicht auch noch mehr, 
versprechen kann ich dir nichts.

Für Pinkompatibilität musst du im Datenblatt nachsehen. Vielleicht gibt 
es ja ein paar welche das zu den PIC24 sind.

Die größte Änderung wird wohl die 3,3V Versorgung sein. Die PIC24 
benutzen ja 5V, oder? Wenn nicht ist das auch kein Problem.^^

Und der Stromverbrauch. Ein dsPIC33FJ mit 80MHz => 40MIPS zieht etwa 
100mA alleine für sich. Peripherie kommt auch noch hinzu...

Autor: A. K. (prx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Klaus schrieb:

> Ist der Pic24 baugleich zu einem dsPic, nur das der noch DSP macht?

PIC24H ist praktisch identisch mit dsPIC33, nur ohne DSP.
PIC24F ist im Detail verschieden, auch Stromversorgung.

sebihepp schrieb:

> Die größte Änderung wird wohl die 3,3V Versorgung sein. Die PIC24
> benutzen ja 5V, oder?

Nur die dsPIC30 verheizen 5V, nicht die PIC24/dsPIC33.

Autor: Klaus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also den PIC24F betreibe ich mit 3,3V. Das würde quasi passen.

Autor: Klaus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Pinkompatibilität ist eigentlich egal. Wird eh ne neue Platine kommen. 
Mir geht's nur drum, dass ich möglichst wenig am Code ändern muss, da 
ich den auch übernommen habe und ihn nicht komplett neu schreiben will. 
Ganz so fitt bin ich leider nicht.

Autor: mh (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Einfache Antwort: Ja es geht, wenn es einen Pinkompatiblen dsPIC gibt 
;-). Damit wir dir helfen können, solltest du wenigstens sagen welchen 
PIC24FJ du hast.

Autor: mh (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ok in deinem ersten Post hat es sich so angehört, als möchtest du nur 
Bauteile austauschen, wenn du eh ne neue Platine machst ist das ersetzen 
kein Problem.

Autor: A. K. (prx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Klaus schrieb:

> Mir geht's nur drum, dass ich möglichst wenig am Code ändern muss,

Jo, aber da geht es ins Detail, sowas wie "alle sind gleich" darfst du 
nicht erwarten, eher schon "manche sind gleicher". Eng verwandt sind 
sich die aber natürlich schon.

Das letzte mal als ich in die Familie reinsah blieb der Eindruck, dass 
die PIC24F eher auf vielfältige Peripherie optimiert sind, die 
PIC24H/dsPIC33 eher auf Performance.

Autor: Klaus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Na das klingt doch schonmal gut. Den PIC24FJ128GA106 nutze ich zur Zeit. 
Peripherie hält sich in Grenzen. Wenn ich die Beschreibung von dem 
dsPIC33FJ256MC710A überfliege reicht das.

Wenn sie shconmal die selebn Peripherie-Headerfiles nutzen, ist das doch 
schon die halbe Miete.

Autor: Master Snowman (snowman)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich denke, du wirst da keine grossen probleme haben. den code wirst du 
nur gross bei den configs, der inizialisierung und ggf. be sehr nahen 
hardwarezugriffen ändern müssen wie z.b. Open_ADC() anstelle von 
Open_ADC1(), aber damit wird es sich dann schon haben - der compiler 
wird da schon motzen ;-)

Autor: Klaus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Super, vielen Dank für die Antworten!

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.