Gast
#1845921
Hallo zusammen,
wieder mal ein thread zu diesem Thema. Hoff, dass der eine oder andere
noch keine grauen Haare von kriegt :)
Möchte meine Daten, die ich auf dem Hyperterminal ausgegben kriege ,als
Zahlen darstellen. Habe auch schon versucht das ganze ins dez. zu
konvertieren.
hier ein kurzer Code ausschnitt:
.
.
.
.
_exact_delay(0x40000);
txbuf[tx_cnt++]=byte_number;
if (byte_number>=254)
byte_number=0;
if(byte_number>=100 && byte_number<1000) // if byte_number is larger
than 100, f.e. number 253
{
hunderter_1=byte_number;
do
{
hunderter_1=-100;
//how many hundreds are in this number available
hunderter_2++; // number of hundreds
}while(hunderter_1>=100);
uart_putc(hunderter_2+48); //2
zehner_1=hunderter_1; //if 100>byte_number>10
if(zehner_1>0)
{
do
{
zehner_1=-10;
zehner_2++;
}while(zehner_1>=10);
}
else// if(zehner_1=0)
{
uart_putc('0');
}
uart_putc(zehner_2+48); //5
einser_1=zehner_1;
if(einser_1>0)
{
einser_1=(48+einser_1);
}
else// if(einser_1=0)
{
einser_1=48;
}
uart_putc(einser_1); //3
}
else if(byte_number>=10 && byte_number<100)
//if number larger 10 and smaller 100
{
zehner_1=byte_number; //zehner_1 get value of
byte_number
do //while number is larger than 10, decreace
{
zehner_1=-10;
zehner_2++; // INT(zehner_1/10)=zehner_2
}while(zehner_1>=10);
uart_putc(zehner_2+48);//show zehner_2 as number
einser_1=zehner_1; //rest, smaller than 10
if(einser_1>0)
{
einser_1=(48+einser_1);
}
else// if(einser_1=0)
{
einser_1=48;
}
uart_putc(einser_1);
}
else if(byte_number<10) //if byte_number smaller 10
{
einser_1=(48+byte_number); //show number
uart_putc(einser_1);
}
else
{
uart_putc(byte_number);
}
uart_putc(' ');
byte_number++;
.
.
.
.
Vllt. findet ja jemand einen oder mehrere Fehler in dem Code.
Danke schon mal.