Перейти к содержанию
    

dimka76

Свой
  • Постов

    3 000
  • Зарегистрирован

  • Посещение

  • Победитель дней

    11

Весь контент dimka76


  1. Нет не сам. И ваша программа будет состоять явно не из этой одной строки, а тут речь шла о потерях в быстродействии всей программы, относительно программы на Си. Если вам все равно, что ради текстовой компактности можно пожертвовать такими потерями в скорости - ваше дело, но не мой выбор... Вы похоже каждый о своем. @mantech пишет про Python, а @dxp про C++
  2. Тут тоже палка о двух концах. Запустили вы DMA и пошли выполнять другую работу. Передача еще не завершилась, а тут еще кто-то захотел отправить. Появляется необходимость блокировок, флагов, ожиданий. В одном месте добавляете изящества, в другом теряете это изящество.
  3. Одной из парадигм С++ является процедурное программирование. Но действительно, зачем С++, если достаточно Си ? Вот, что мне лично в С++ не нравится, так это приведение типов. Сейчас начнется Надо как-то вовремя остановиться.
  4. case ...: и есть метка. А по стандарту за метками могут следовать только операторы, а объявления не считаются операторами в Cи.
  5. Еще раз прошу заметить, что GCC в Си так говорит. В режиме СРР отмалчивается. Я просто скобочки использую везде и в любом режиме.
  6. I2C_BAUDRATE dspic30F FCY DS1307

    у dsPIC33 есть серии с 5 вольт питанием. Серия EV например.
  7. А зачем ее объявлять без инициализации ? Все равно рано или поздно эта переменная должна быть инициализирована. И вы в своем примере следующей же строкой ее инициализируете. Ну, разве только чтобы передать указатель на нее в функцию, где ей присвоится значение. Ну, ладно. Вот такой пример case SETIDLETIMEOUT_CMD: //{ t_StdAnswer* p_StdAnswer; p_StdAnswer = (t_StdAnswer*)answ_buf; SetIdleTimeoutCmdHandler((t_SetIdleTimeoutCmd*)p_hdr, p_StdAnswer); uint32_t axis_cnt; axis_cnt = gsettings.get_common().AxisCount; send((uint8_t*)p_StdAnswer, (axis_cnt * sizeof(t_SetIdleTimeoutCmd)), addr, port); //} break; В MSVC и GCC в режиме СРР проходит без ошибок. А GCC в режиме Си выдает ошибку следующего содержания
  8. Да, были писарями. Целую книгу написали. И что вы эту портянку второй раз приводите ? К тому же без должного оформления.
  9. Значит MSVC и GCC что-то делают не так. А может быть вы не поняли о чем я ? switch(...) { case ... : { intt32_t a = 0; ..... } } Вот без фигурных скобок в case будет ошибка следующего содержания (для GCC)
  10. Это не странная конструкция, а вполне нормальная. Например, для ограничения области видимости переменной. Или в случае объявления переменной внутри case, без этих скобочек вообще не обойтись.
  11. I2C_BAUDRATE dspic30F FCY DS1307

    Берете базовый документ Device Family Data Sheet. В начале каждого раздела этого документа есть отсылка к документу, детально описывающему этот модуль. Номер документа и его название. Этот текст даже в рамочку обводится.
  12. У меня тоже один раз было такое. Когда в теме появились ответы, я стал ее видеть.
  13. Это местоположение экспоненты в битовом пространстве числа в формате с плавающей точкой.
  14. Вкладку результатов поиска закрыть.
  15. А в чем вопрос тогда, если все работает ? Вся проблема в том, что нет желания изучать документацию на микроконтроллер и документацию на HAL. Да и посмотреть, что происходит в функции (или макросе) __HAL_AFIO_REMAP_SWJ_NOJTAG(); при наличии отладчика, да и просто по коду, не должно составить труда.
  16. Может вам на Cortex-M4F перейти ? Они и дешевле гораздо и доступнее (по крайней мере в России).
  17. ELITAN.RU

    Параметрический поиск алюминиевые конденсаторы. Браузер Google Chrome
  18. Это который в Москве или который в Челябинской области ?
  19. Скорее всего оптимизатор что-то соптимизировал. Не может такое преобразование мгновенно выполняться.
  20. А диапазон, передаваемых значений умноженный на 10, уложится в int ? А при умножении передаваемого значения на 10 переполнения не возникнет ?
×
×
  • Создать...