bohdom
|
|
1 | |
avr gcc, ds18b20, lcd331020.02.2016, 15:43. Показов 2922. Ответов 3
Метки нет (Все метки)
Добрый день.
Есть у меня программа, которая выводит на дисплей от нокии 3310 показания температуры с датчика 18В20. Целая часть температуры записана в переменную a, дробная в переменную b. Понадобилось мне сравнивать эту температуру с некоторым критическим значением типа ftoot. У меня возникла проблема с объединением целочисленных переменных a и b в одну переменную. Например: a=15 b=2 нужно получить С=15,2 Я пишу c=a+(ftoot)b/10.0; prymtf(str, "%g", c);//преобразование числа в строку LcdStr(1,(unsykned char*)str);//вывод строки на дисплей На дисплее получаю 0. Подскажите пожалуйста, как правильно записать число в одну переменную. |
20.02.2016, 15:43 | |
Ответы с готовыми решениями:
3
AVR + DS18b20 Параметры сети. Ассемблер AVR-AS из AVR-GCC Ds18b20 AVR конверсия вещественой температуры avr ds18b20 определяется только при vcc+gnd на землю |
0 / 0 / 0
Регистрация: 24.12.2010
Сообщений: 279
|
|
20.02.2016, 22:40 | 2 |
Какой тип переменной с?
Ты не сравниваешь, а выводишь. Можно сравнивать с двумя переменными, d и e. А выводить можно и без сравнения и преобразования. Может %g не поддерживается, напиши %f.
0
|
bohdom
|
|
20.02.2016, 23:08 | 3 |
Сообщение от Sysorsky
Возможно проблему можно решить используя строки и конкатенацию, а потом перегнать полученную строку в число? Правда я не представляю, как сделать это на Си не имея типа string. |
0 / 0 / 0
Регистрация: 04.01.2015
Сообщений: 85
|
|
21.02.2016, 20:49 | 4 |
А чем не подходит вариант значение "ftoot" разбить на 2 целочисленных и их сравнивать?
0
|
21.02.2016, 20:49 | |
21.02.2016, 20:49 | |
Помогаю со студенческими работами здесь
4
GCC-AVR Linux компиляция avr-gcc АЦП -- реализация на С (avr-gcc) AVR GCC проблема с UART Запуск avr-gcc из notepad++ забавное поведение avr-gcc Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |