www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Problem mit XC167 bei printf und fließpunktzahl


Autor: Tong Luo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

hier habe ich mit einem komischen Problem getroffen. Ich möchte im 
Programm Fließpunktzahlen benutzen. Aber es sieht das, dass es komflikt 
mit Funktion "printf" gibt.
Das Programm ist wie folgend geschrieben.
Wenn ich die Funktion "printf" benutzte und paraller eine Fließpunktzahl 
definierte dann kommt Problem bei Programm herunterladen, aber es kommt 
kein Problem bei der Complierung..

#include <XC167.h>
#include <stdio.h>

#define WillProblem 0

void main (void)  {

#if WillProblem == 1
  double Problem = 1.0;
#endif

#ifndef Monitor
  P3  |= 0x0400;
  DP3 |= 0x0400;
  DP3 &= 0xF7FF;
  ASC0_TIC = 0x80;
  ASC0_RIC = 0x00;
  ASC0_BG  = 0x81;
  ASC0_CON = 0x8011;
#endif
  ALTSEL0P3 |= 0x0C03;

  putchar(' ');

  printf ("\xAHello World\n");

  while (1);
}

Autor: Timmo H. (masterfx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich weiß ja nicht wieviel Flashspeicher dein µC hat, aber die 
Floatingpoint Lib braucht ziemlich viel Platz und da kann es natürlich 
sein, dass es einfach nicht mehr rauf passt (zumal printf und das was 
dazu gehört) auch nicht gerade klein ist.
Wie sieht denn dein Map-File aus?

Autor: Tong Luo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für die Antwort. Aber ich denke das Problem ist nicht auf die 
Programmgröße oder Speicher. Weil wenn ich nur Fließpunktzahl benutze, 
ist es auch kein Problem. Problem kommt nur wenn "double" und "printf()" 
gleichzeitig im Programm sind..

Ich habe kein Map-File benutzt, die Map ist wie:
ROM: Start 0x0000 0000     Größe:0x0010 0000
RAM: Start 0x0020 0000     Größe:0x0008 0000
intere Spercher ist geblockt.

Kann das sein, das auf dem Board ist der Flash AM29F800BB, aber im Keil 
habe ich AM29F800BT gewahlt(es gibt nur -BT im Keil)?

Autor: Tong Luo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Habe ich gelöscht...das ist das Problem mit dem Flash..

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.