Как передать float по usart в avr studio
Добавлено: Вс апр 09, 2017 14:30:43
Подскажите в том коде что я написал значение float передано правильно? Протеус выдает значение C3 F5 48 40, это и есть значение 3,14 в виде 4х байт? И как сделать чтобы терминал протеуса интерпретировал значение 4х байт, как число с плавующей точкой?
Еще пробовал так(этот пример нашел на сайте):
void tx_float(float a)
{
unsigned char *ad,i;
ad=(unsigned char*)&a;
for(i=0;i<4;i++)
{
delay_ms(1);
putchar(*(ad++));
}
}
Но в этом случае в терменале протеуса пусто. Вообще если пихаю в putchar байт, терминал протеуса его не выводит
Еще пробовал так(этот пример нашел на сайте):
void tx_float(float a)
{
unsigned char *ad,i;
ad=(unsigned char*)&a;
for(i=0;i<4;i++)
{
delay_ms(1);
putchar(*(ad++));
}
}
Но в этом случае в терменале протеуса пусто. Вообще если пихаю в putchar байт, терминал протеуса его не выводит