Hi!
Es gibt eine token split Funktion. Mit der sollte es funktionieren:
Code:
#include <16F877a.h>
#use delay (clock=4000000)
#use RS232(baud=9600,xmit=PIN_C6,rcv=PIN_C7)
#fuses XT, NOWDT, NOPROTECT, NOLVP
#include <stdlib.h>
void main (void)
{
char empfangen, duty[2], split, *Text;
while(TRUE)
{
do
{
if(kbhit()) empfangen=getc();
} while(empfangen==0);
strcpy(duty,empfangen);
strcpy(split,":");
Text = strtok(duty, split);
while(Text!=0)
{
puts(Text);
Text = strtok(0, split);
}
delay_ms(500);
printf("duty1= %u, duty2= %u", duty[0], duty[1]);
}
}
Ich hab mal das geschrieben.
Laut Compiler keine Fehler, aber dafür garantier ich nicht /!\ (Ist ja schon spät). Theoretisch läufts. Schaus dir mal durch, und gibt bescheid, ob es das war. Im aktuellen Manual stehen alle Befehle drinnen und in dieser neuesten Ausgabe sogar übersichtlich.
Lesezeichen