

Petka
Свой-
Posts
1,438 -
Joined
-
Last visited
-
Широковещание только LAN без WLAN
Petka replied to Rst7's topic in Wireless/Optic
мультикаст в данной задаче не поможет? а TTL=1 ? Хотя нет, TTL=1 не поможет. Проверил. Роутер TTL не уменьшает. -
Нет. Соберётся, но работать не будет. Те версии, что я собирал для кварца 7,3727 были "особенные". Для того, что бы программатор успевал на малой частоте выполнять нужную работу была выкинута часть расширенного функционала и проведена мелкая оптимизация. Если ОЧЕНЬ надо, то попробую найти те исходники. Но как говорится без гарантий =)
-
Versaloon
Petka replied to adnega's topic in GNU/OpenSource средства разработки
Можно перешить "дискавери" в "Versaloon". -
Проверьте номиналы резисторов в программаторе.
-
В крайней прошивке программатора сигнатура исправлена. Обновите прошивку.
-
Ага, и USB видеокарта тоже на 1.1 должна работать? =)
-
Согласен, конструкция не нужна при одном или нескольких нижеследующих случаях. 1) Если в работе используется только один компилятор. (IAR к примеру) 2) Если в работе используется только одна архитектура. (ARM к примеру) 3) Если в работе участвует только один человек. (С высокой культурой программирования) 4) Если в работе не требуется следовать стандартам индустрии. (MISRA C к примеру) 5) Если в работе не требуется использовать макросы-как-функции. (Для целей отладки, например) 6) Если в работе используется компилятор с полностью отключенной оптимизацией, или настолько древний, что константы в условиях не обрабатываются на стадии компиляции. 7) Если в работе принято не признавать своих заблуждений.
-
Не утруждайтесь. Это такой стиль. Или как принято говорить: двойные стандарты. Когда я в этой теме просил "гуру" дать ссылки на подтверждение своих голословных заявлений (http://electronix.ru/forum/index.php?s=&showtopic=130098&view=findpost&p=1361284) , то "гуру" не соизволил ничего ответить по существу дела. Вместо этого "гуру" зачем-то приплёл не относящийся к делу пустой "for(;;)" прекрасно понимая что это совсем не эквивалент do-while-zero конструкции. Забавно получилось, что "гуру" вместо признания своей ошибки начал загонять себя ещё глубже, ссылаясь на "творца Си" Денниса Ритчи. Однако, "гуру" забыл что в сеть попали исходники самых первых трансляторов. По исходникам становится очевидно, что конструкция for вообще отсутствовала в первом компиляторе а для циклов "творец" использовал while. P.S. Будьте добрее. Всем хороших выходных.
-
LPCXpresso
Petka replied to TsM's topic in GNU/OpenSource средства разработки
Как было сказано выше можно на регионы памяти назначать целиком единицы линковки. К примеру всё из startup.o размещать во внутренней памяти а всё остальное во внешней. -
LPCXpresso
Petka replied to TsM's topic in GNU/OpenSource средства разработки
Гуглить "скрипт линкера". -
Тут такое дело... Код от "Самого" Ритчи: https://github.com/mortdeus/legacy-cc/blob/...120c/c11.c#L219 И не надо фантазировать на пустом месте по поводу скобок. P.S. Так я от Вас и не получил подтверждения Ваших слов про: "...ибо while(константа) принципиально ошибочное выражение,..." Получил только очередные фантазии про цикл for(;;), которого ВООБЩЕ не было в первых компилаторах Си. А while был. И автор языка для циклов использовал именно while.
-
Очевидно, тут не вопрос веры. Сказали "А", говорите и "Б". Если "лишние" пробельные символы компилятор может удалять(игнорировать) без предупреждений, то и валидные конструкции "while(0)", "for(;;)", "#if 0", по той-же самой логике транслятор должен обрабатывать согласно стандарту "НЕ РАССУЖДАЯ". Что бы не уводить обсуждение в сторону прошу подкрепить или опровергнуть Ваше заявление Откуда вы это взяли? Есть какой-то стандарт где это описано? Отраслевые инструкции? Исследования? В книжке какой-то прочитали? Бложик? Твиттер? Сплетни? С удовольствием ознакомлюсь с источником такой информации.
-
Резюме: "вменяемый компилятор" по умолчанию не выдаёт предупреждение на вполне законную конструкцию. Плюсик к IAR Systems. В качестве литературной гиперболы: в конструкции: r = (a * b) + (c * d); тоже есть "лишние конструкции", которые транслятор "выкинет". Например, скобки вообще "лишние". Да и пробелы совсем не нужны. Может программист "все-же рассчитывал этими скобками на какой-то другой эффект"? Резюме: наличие широкого спектра предупреждений в трансляторах это хорошо. Но порою производители "инструментов" немного перегибают палку. P.S. Модераторам: из топика имеет смысл обсуждение конструкции do-while-zero вынести в отдельную тему.
-
1) С точки зрения стандарта Си конструкция do-while-zero не является "Implementation-Defined Behavior", "Undefined behavior" или пр. Так что поводов "давать по рукам" программисту никаких нет. 2) Уважаемый Вами инструмент от "IAR Systems" имеет возможность проверять в том числе и правила "MISRA C". Было бы забавно наблюдать что на единственно возможную конструкцию согласно правилам "MISRA C" транслятор при проверке будет выдавать предупреждение. :smile3046:
-
Что-то задело меня это безапелляционное утверждение. Для Си-программистов встраиваемых систем группа "энтузиастов" из индустрии разработала стандарт "MISRA C". Приведу небольшую выдержку из стандарта редакции 2004 года. Так что если заниматься программированием для встраиваемых систем, такая нотация макросов является не только "допустимой", но и обязательной (с точки зрения MISRA C).