Forum: Mikrocontroller und Digitale Elektronik Function declared implizit int Fehler bei sprintf unter XC8 mit PIC16F


von Andreas G. (beastyk)


Angehängte Dateien:

Lesenswert?

Moin,

hab da ein unschönes Problem mit sprintf, vielleicht hätte ich auch 
etwas einbinden müssen...

Ich häng mal ne Datei vom compilieren dran und dann hier ein paar Zeilen 
vom Code.
1
void main(void) {
2
    
3
    char version;
4
    char buff[5];
5
    
6
  setupIO();
7
    setupSPI1();
8
  setupUART();
9
    init_MFRC522();
10
    
11
    //delay after Setup
12
    __delay_ms(20);
13
    
14
  while(1)
15
  {
16
      //Get the amount of data waiting in USART queue
17
      uint8_t n= USARTDataAvailable();
18
19
      //If we have some data
20
      if(n!=0)
21
      {
22
          //Read it
23
          char data=USARTReadData();
24
          //Use a Switch-Case Structure
25
          switch (data) {
26
             
27
              case '3': USARTWriteLine("MFRC522 Versionsnr.:");
28
                        version = readMFRC522(VersionReg);
29
Zeile 465               sprintf(buff, "%02X", version); //Hex vom  
30
                                                          RC522:0x91
31
                        //USARTWriteLine(buff);                       
32
                      break;
33
                        ]

Hab ich hier schon etwas falsch gemacht?

Als include hab ich stdint.h und xc.h eingebunden.

Gruß
Beast

von Peter II (Gast)


Lesenswert?

Andreas G. schrieb:
> Als include hab ich stdint.h und xc.h eingebunden.

sprintf ist aber in

#include <stdio.h>

von Andreas G. (beastyk)


Angehängte Dateien:

Lesenswert?

Moin Peter und Konsorten,

also

Peter II schrieb:
> #include <stdio.h>

da hast du auffallend recht, mea culpa, mea maxima culpa!

Und mein Dank geht dann auch an dich, kaum hingeschrieben und schon hat 
er garnicht mehr gemeckert, ok, etwas schon, weil ich sprintf.c in der 
Source geparkt hatte.

ich hab mal ein Bildschirmfoto von meinem Lazarusprogramm drangehängt, 
siehe da, ich hab einen MFRC522-Clon, menno, nur 0x88h!

Weiß jemand ob der wie das Original funktioniert? UART mochte er das 
letzte Mal garnicht haben....!?!

Gruß
Beast

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.