AVR Раздел по микроконтроллерам компании Atmel - AVR / ATtiny / ATmega / ATMega128 / ATxmega, вопросы по программированию в AVR studio и все, относящееся к AVR... |
02.04.2015, 21:09
|
|
Прохожий
Регистрация: 23.11.2006
Сообщений: 3
Сказал спасибо: 1
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: Преобразовать FLOAT/HEX
Спасибо Всем! И тем , кто помог конкретно , и тем кто давал "удочку" из "кактуса".
Есть добрые и бескорыстные люди!
|
|
|
|
03.04.2015, 02:24
|
|
Почётный гражданин KAZUS.RU
Регистрация: 08.06.2008
Сообщений: 1,394
Сказал спасибо: 4
Сказали Спасибо 183 раз(а) в 167 сообщении(ях)
|
Re: Преобразовать FLOAT/HEX
Сообщение от eddy
|
Вот — мой велосипед для вывода целых чисел в терминал.
|
Велосипед, как мне кажтся, еще детский для Ваших возможностей
Вот, напрмер,
PHP код:
|
void print_int(int32_t N, sendfun s){
uint8_t buf[10], L = 0;
if(N ‹ 0){
s('-');
N = -N;
}
if(N){
while(N){
buf[L++] = N % 10 + '0';
N /= 10;
}
while(L--) s(buf[L]);
}else s('0');
}
|
почему не сделать таким же загадочным как do { ... } while(0);
типа такого
PHP код:
|
void print_digit(uint32_t N,sendfun s)
{
if( N )
{
uint8_t symbol=( N % 10 ) + '0';
print_digit( N / 10 , s)
s( symbol );
}
}
void print_int(int32_t N, sendfun s)
{
if ( N == 0 ) s( '0' );
else
{
if(N ‹ 0)
{
s( '-' );
N = -N;
}
print_digit( N , s);
}
}
|
|
|
|
|
03.04.2015, 09:47
|
|
Почётный гражданин KAZUS.RU
Регистрация: 27.01.2005
Адрес: Россия, КЧР, Нижний Архыз
Сообщений: 3,627
Сказал спасибо: 115
Сказали Спасибо 813 раз(а) в 590 сообщении(ях)
|
Re: Преобразовать FLOAT/HEX
Boba_spb, я терпеть не могу рекурсию, потому как даже на компутере нет-нет, да stack overflow устроишь. А вы уверены, что стека STM32 хватит, чтобы 10 раз рекурсивно функцию вызвать?
__________________
Союз Советских Социалистических Округов Северной Америки
|
|
|
|
04.04.2015, 02:25
|
|
Почётный гражданин KAZUS.RU
Регистрация: 08.06.2008
Сообщений: 1,394
Сказал спасибо: 4
Сказали Спасибо 183 раз(а) в 167 сообщении(ях)
|
Re: Преобразовать FLOAT/HEX
Да пошутил я. ![Весело](images/smilies/icon_laugh.gif)
Хотя размер стека ручками задется.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 15:29.
|
|