-
- У IAR в либах есть стандартные функции sprintf() и sscanf(), которые справятся с этим делом, если задать формат числа "%X". - Ксения(04.10.2013 18:03)
- Нельзя ли узнать, сколько ROM уходит на sprintf() ? - AndreasW(12.10.2013 20:05)
- Обычно расход ROM - ерунда, а вот затраты RAM на типовой *printf поначалу весьма удивляют. - vmp(12.10.2013 21:12)
- Много, к сожалению. И еще зависит от того, заказываете ли плавающую арифметику (это галочка в проекте). Чем считать, проще проверить, сравнив размер программы занимаемый в ROM, с функцией sprintf и без нее. - Ксения(12.10.2013 20:52)
- красота требует ЖЕРТВ :) - RED_DRAGON(12.10.2013 20:54)
- Можно - закоментируйте вызов sprintf и сравните размеры до и после. - Apтём(12.10.2013 20:45)
- спасибо - sierra(08.10.2013 09:35)
- Нельзя ли узнать, сколько ROM уходит на sprintf() ? - AndreasW(12.10.2013 20:05)
- вывод в буфер LCD: zeleny(1034 знак., 04.10.2013 16:26)
- Спасибо!! - sierra(08.10.2013 09:37)
- Вот например вот такая либа. хотите пользуйте, хотите пишите свое, как пример нормальная себе такая либа RED_DRAGON(04.10.2013 15:16)
- спасибо - sierra(08.10.2013 09:37)
- itoa, atoi? - MBedder(04.10.2013 11:32)
- "Ёжики плакали, кололись, но продолжали жрать кактус" (с). Это я про игнорирование логичных советов и нежелания читать RTFM по языкам и компиляторам. Применение своих функций вместо стандартных должно быть обосновано. - VVB(09.10.2013 06:30)
- обоснование обычно простое: "эти ваши библиотеки написаны криворукими индусами/финскими студентами, я свои лучше напишу!". - Snaky(09.10.2013 06:42)
- Не менее криворукие? Индокод хоть протестирован, как-то работает. - fk0(09.10.2013 08:49)
- обоснование обычно простое: "эти ваши библиотеки написаны криворукими индусами/финскими студентами, я свои лучше напишу!". - Snaky(09.10.2013 06:42)
- "Ёжики плакали, кололись, но продолжали жрать кактус" (с). Это я про игнорирование логичных советов и нежелания читать RTFM по языкам и компиляторам. Применение своих функций вместо стандартных должно быть обосновано. - VVB(09.10.2013 06:30)
- Использую самодельные функции... Принцип прост- делим на десять и берём остаток. Можно (если нужно, но мне не нужно) доработать и оценивать размерность. Понятно, что данный пример, созданный для вывода на ЖКИ, не преобразует именно в KLIM83(452 знак., 04.10.2013 10:31 - 10:39)
- За такой код при Сталине -- расстреливали. Особенно за деление int на 10000000. На процессоре без аппаратного деления (это даже армы) это тысячи тактов и киловат-часы (если через эту штуку выпечатывается достаточно много -- очень быстро начинаешь fk0(364 знак., 04.10.2013 15:10)
- Перфекционизм использую при разводке плат и когда в один килобайт надо разместить неразмещаемое. Нужен ли он всегда, особенно если нет погони за производительностью/ киловаттами? Моё мнение- нет. - KLIM83(04.10.2013 15:37)
- Согласен. Поэтому там должен быть sprintf. - SciFi(04.10.2013 15:42)
- proof of concept... хотя, боюсь, тут не поймут. fk0(1320 знак., 04.10.2013 21:10)
- Согласен. Поэтому там должен быть sprintf. - SciFi(04.10.2013 15:42)
- Перфекционизм использую при разводке плат и когда в один килобайт надо разместить неразмещаемое. Нужен ли он всегда, особенно если нет погони за производительностью/ киловаттами? Моё мнение- нет. - KLIM83(04.10.2013 15:37)
- +1 - lexxx-lexxx(04.10.2013 11:39)
- За такой код при Сталине -- расстреливали. Особенно за деление int на 10000000. На процессоре без аппаратного деления (это даже армы) это тысячи тактов и киловат-часы (если через эту штуку выпечатывается достаточно много -- очень быстро начинаешь fk0(364 знак., 04.10.2013 15:10)
- Это наверное мои функции? ;-)) FDA(408 знак., 04.10.2013 10:29)
- хе-хе SciFi(270 знак., 04.10.2013 12:27 - 12:32)
- int2hex(0x1234) --> нарушение границ, ядро свалено. hex2int('z') -- бредовый результат. При всём при том, sscanf/strtoul и sprintf шансов облажаться практически не оставляют и позволяют минимальную валидацию ввода. - fk0(04.10.2013 15:03)
- Я просто не хотел пугать оптимизаторщиков ассертами :-) SciFi(333 знак., 04.10.2013 15:14)
- Библиотечные функции для новичков и ламиров. Учись размазывать 3-строчный код на две страницы, будь профессионалом. - fk0(04.10.2013 12:41)
- int2hex(0x1234) --> нарушение границ, ядро свалено. hex2int('z') -- бредовый результат. При всём при том, sscanf/strtoul и sprintf шансов облажаться практически не оставляют и позволяют минимальную валидацию ввода. - fk0(04.10.2013 15:03)
- Да, конечно Ваши..все еще пытаюсь разобраться с GPS модулем) спасибо, заработало - sierra(04.10.2013 12:14)
- Для использование функции toupper нужно подключить стандартную библиотеку: FDA(33 знак., 04.10.2013 10:31)
- Сначала использовала Ваши функции, только она делает сдвиг на 4 у первого числа. У меня для правильности результата а нужно умножить на 10 и прибавить b. Тогда работает) - sierra(08.10.2013 09:39)
- Hex2Dec и должна именно сдвигать первое число. Это же перевод из 16-ричной системы в 10-ую - FDA(08.10.2013 09:42)
- Сначала использовала Ваши функции, только она делает сдвиг на 4 у первого числа. У меня для правильности результата а нужно умножить на 10 и прибавить b. Тогда работает) - sierra(08.10.2013 09:39)
- хе-хе SciFi(270 знак., 04.10.2013 12:27 - 12:32)
- У IAR в либах есть стандартные функции sprintf() и sscanf(), которые справятся с этим делом, если задать формат числа "%X". - Ксения(04.10.2013 18:03)