Jump to content

    

esaulenka

Свой
  • Content Count

    1360
  • Joined

  • Last visited

Community Reputation

0 Обычный

About esaulenka

  • Rank
    Профессионал
  • Birthday 01/25/1983

Контакты

  • ICQ
    Array

Информация

  • Город
    Array

Recent Profile Visitors

7608 profile views
  1. Да, вы правы, фигня получается. Должен заработать только статический полиморфизм (см. мою ссылку выше) с явным приведением типа очереди в читателе и в писателе. Но за такое явное приведение в приличном обществе будут бить...
  2. Это называется полиморфизм. Виртуальная функция Free, которая переопределяется в двух наследниках буфера - один наследник читатель, второй - писатель. Но помимо запутанного кода (три класса вместо одного) будет оверхед виртуальных функций. Кажется, можно этого избежать (гуглить CRTP) но я б такое не делал - серьезное усложнение исходников на ровном месте.
  3. Одинаково, да. Только под разные архитектуры его собирают разные команды, и в какие-то не самые популярные ветки новые "фишки" попадают ооочень нескоро. Впрочем, в версии 7.1, которую использует @Harvester, вся нужная магия уже есть (см. выше ссылку на godbolt, там можно мгновенно сравнить разные компиляторы). Осталось только поменять расширение файла с исходником с ".c" на ".cpp". Ваш IAR, кстати, тоже более-менее должен уметь современный С++ (пример, который я показывал, это C++14).
  4. Потому что вам надо пользоваться компилятором, который знает, что такое compile-time optimization. В свежих C++ всё работает, там люди приложили кучу сил, чтобы множество действий, которые должны быть выполнены в процессе старта программы, выполнялись компилятором, и в программу попадало уже готовое значение. https://godbolt.org/z/MbMGnxxGr
  5. То, что Ваш подход - влезать в незнакомую тему с банальными советами, Вам уже не раз говорили. Прочитайте даташит, сделайте библиотечку, проверьте всё на живом железе, расскажите подробности - Вам спасибо скажут. Но вот что-то подсказывает, что ни дисплей этот, ни документацию на него Вы в глаза не видели. Вместо этого пятая страница переливаний из пустого в порожнее.
  6. Блин, ну вбейте уже в гугл "ILI9341 init" и насладитесь десятком вариаций кода, который скармливает этому дисплею портянки каких-то байтиков (без комментариев, что именно эти байтики значат. очень удобно). Там подобных writedata ещё несколько штук должно быть. Очередная тема ни о чём. "Хочу оптимайзить код мач беттер зен компайлер, но не хочу и не буду ридить мануал". Прям вот классика, уже не первая тема тут такая.
  7. Евгений, предлагаю отделить мух от котлет: схемотехника отдельно, софт - отдельно. Например, задачу "сделать нанопотребляющий вход для подсчёта импульсов" я не осилю (текущее решение с включением-отключением подтяжки, если честно, выглядит костылём), а софт под какой-нибудь STM32L010 (выбрано в терре по принципу "самый дешёвый из L-серии) сделать вполне смогу. Ежели что, мой телеграм совпадает с здешним ником.
  8. Кстати, у этой команды синтаксис memcpy. Т.е. cmd dst, src, size, а не cmd ram, flash, size. Возможно, она даже корректно скопирует флеш в рам :-)
  9. Для упрощения диагностики предлагаю проверять содержимое памяти после каждого шага отладчиком. Ну и лог. анализатор на линиях rx-tx тоже может помочь. На первый взгляд, должно работать. Но я занимался чем-то похожим (свой загрузчик, совместимый по командам с FlashMagic) очень давно... Что странно. Документ обещает "COMPARE_ERROR | (Followed by the offset of first mismatch)", т.е. нолик куда-то потерялся... Ну и про то, что адреса должны быть в десятичной системе, вы же в курсе?
  10. А какое у Вас понимание? В данном случае, const - это метод, который не меняет экземпляр класса (т.е. только читает его переменные), static - метод, который вообще не требует наличия экземпляра (т.е. в принципе не может ничего поменять). Следовательно, static метод по определению const.
  11. Мне кажется, тут третий вариант - команда есть, документации нет. Во всяком случае, гугель говорит, что на AT&V SIM800C значением этой +FSEXT отвечает.
  12. Я б, кстати, тоже с удовольствием послушал знающего человека, как тамошние наркоманские банки памяти по-человечески в IDA разбирать.
  13. http://www.keil.com/support/man/docs/uv4/uv4_db_dbg_serialwin.htm Производитель нам сообщает, что эта функция предназначена исключительно для симулятора - отладки без использования реального железа. Т.е. достаточно бесполезная штука, и к вашему случаю мало относящаяся.
  14. Вы до конца-то дочитали? Окончательный вариант выглядит достаточно здраво, на мой дилетантский вкус.
  15. Насколько понимаю, это перепродавцы китайских товаров. Инженерам за подобные "характеристики" было б стыдно... официальный сайт (?) страничка из каталога (?) зато недорого, этого не отнять :-)