Вход
Наше всё
Теги
codebook
无线电组件
Поиск
Опросы
Закон
Четверг
28 ноября
О смысле всего сущего
0xFF
Средства и методы разработки
Мобильная и беспроводная связь
Блошиный рынок
Объявления
Микроконтроллеры
PLD, FPGA, DSP
AVR
PIC
ARM, RISC-V
Технологии
Кибернетика, автоматика, протоколы
Схемы, платы, компоненты
Микроконтроллеры
599641
Топик полностью
il-2
(22.05.2015 15:21, просмотров: 78)
ответил
PeterD
на
Что то я туплю есть переменная типа float в нее нужно через UART считать или записать значение с PC. Как это технически реализовать на Cи.
очень простой и очень правильный способ (Олдфаг по ссылке о нем написал):
http://caxapa.ru/599487.html
// Передатчик: void SendFloat(float f) { union { float f; uint32_t i; } u; u.f = f; SendByte( i ); SendByte( i >> 8 ); SendByte( i >> 16 ); SendByte( i >> 24 ); } // Приемник: float RecvFloat(void) { union { float f; uint32_t i; } u; u.i = RecvByte(); u.i |= (uint16_t)RecvByte() << 8; u.i |= (uint32_t)RecvByte() << 16; u.i |= (uint32_t)RecvByte() << 32; return u.f; }
Ответить