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

ДЕЙЛ

Свой
  • Постов

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

  • Посещение

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

    5

Весь контент ДЕЙЛ


  1. если площадь верхней части обрезка синусоиды отличается от площади нижней части, то имеется постоянная составляющая.
  2. Я покопал бы в сторону возможности питать такой двигатель от постоянного напряжения. После нарезки синусоиды в питании появляется постоянная составляющая. Да и при экспериментах нужно соблюдать технику безопасности, когда движок пойдёт вразнос и будет кидаться своими частями в разные стороны.
  3. Полагаю, что у двигателя пылесоса имеется свой регулятор мощности, которому не нравится ломаная синусоида на входе.
  4. И после этого для подстраховки перед соединением земляного щупа к чему-либо сначала измерить напряжение AC и DC между щупом и местом его присоединения, чтобы не было сюрприза. Если нет разделительного трансформатора, то осцилл можно запитать от обычного бесперебойника для ПК, который нужно выключить из сети. Заряда на время измерений хватит.
  5. Так я не вникал в назначение тех переменных. Сказал о том, как никогда не делал в прерываниях и всё прекрасно работает по несколько лет без перезапуска. Автоматическое выделение в памяти и освобождение тоже кто-то должен делать, а это лишние команды и такты.
  6. Я не создавал. Здесь поднялся вопрос о нагромождении кода в обработчике прерывания. Считаю, что в любых прерываниях нужно находиться минимально возможное время. Забежал, флаг сбросил, пин выставил, байт прочитал и назад. Конкретно в коде автора сразу бросается в глаза объявление переменных в обработчике прерывания. Неразумно на мой взгляд. Я их объявил бы заранее и сделал бы статическими, чтобы к вопросу их создания больше не возвращаться.
  7. Оставаться сколь угодно можно - не спорю. Только кто будет заниматься кодом или переключением контекста операционки, если процессор будет свои лучшие годы проводить в более высокоприоритетном прерывании? Работать всё будет, но операционка будет тупить, если, например, таймер TIM1 будет генерировать прерывание 10000 раз в секунду или по I2C будем получать 50 кБ в секунду. Было бы интересно узнать какие-то новые принципиальные моменты, о которых не знаю.
  8. Не соглашусь. При работе FreeRTOS задействован системный таймер с минимальным приоритетом. Если в обработчик прерывания UART вставить дополнительно длительные алгоритмы всяких проверок буферов, расчётов контрольных сумм и прочих увлекательных действий, то операционка будет уже не реального времени. Все задачи будут сидеть курить и ждать, пока обработчик свои дела завершит или будет вызываться слишком часто.
  9. Возможно, частота тактирования CPU относительно низкая по сравнению с частотой тактирования таймера? У меня такая философия, что в обработчике прерывания должно быть минимум кода. Только самое необходимое и то, что нельзя вынести в главный бесконечный цикл или в задачу FreeRTOS. Это нормальная практика. Представь, что в обработчике прерывания телефонного звонка выполняется просмотр фильма, а в это время сработало прерывание пожарной сигнализации с меньшим приоритетом. Результат будет неприятный.
  10. Выбор другой конфигурации привёл к отображению соответствующей настройки. Вопрос закрыт. Пришлось левой ногой заднее ухо почесать. Т.е. сначала выбрал другую конфигурацию, затем поставил галку для создания файла прошивки, вернулся назад, выбрал опять конфигурацию, указал тип выходного файла и так итерационно пару раз.
  11. Опять есть вопрос по Eclipse. Какую настройку изменить, чтобы получить файл *.bin, а не *.hex? Полазил по всем настройкам, нашёл по смыслу самую близкую, но и она ни на что не повлияла. В другом проекте есть такая вкладка с настройками В моём её нет Как её отобразить?
  12. Подозреваю, что первое измерение числа тактов выполняется между моментами 1 и 2, а последующие интервалы между моментом установки бита прерывания и установкой вывода в единицу. В обоих случаях процессору нужно пробраться через огород инструкций перед тем, как переключить ножку в единицу. Для повышения точности по времени сразу при входе в прерывание нужно выполнить нужное действие, а потом уже все организационные вопросы решать и сбрасывать флаг. Да и слишком объёмный код в обработчике. Эти все проверки можно было бы оставить в программе, а в прерывании использовать только результат в виде одного флага.
  13. Спасибо! Вот теперь очевидно, когда знаешь!
  14. А если эта опция неактивна, то что делать?
  15. Ещё одна непонятная ситуация. Компилирую проект, эклипс говорит, что не знает функцию конфигурирования ЦАП. В проекте есть соответствующий файл *.h и *.c. Только вот файл *.c помечен как неактивный. Что это значит и как исправить?
  16. Перенёс проект из VC в Eclipse Прописал все пути, пытаюсь скомпилировать. Вижу такую картину Поиском пытаюсь найти нужную функцию, но её даже так не видно, хотя соответствующий файл в проекте лежит Для эксперимента удалил выделенные файлы и результат не изменился. Т.е. для Eclipse их наличие или отсутствие не имеет значения. Как это исправляется? Раньше не встречался с такой ситуацией.
  17. Тоже близко к этой теме вопрос. Поставил eclipse с нуля, а в нём нет списка девайсов. Раньше копировал папку с эклипсом и всё было на месте. Помню, несколько лет назад эти девайсы как-то просто добавлял, а сейчас всё облазил и второй день не могу разобраться. Куда нужно нажать, чтобы добавить девайсы?
  18. видео на эту тему
  19. Пробовал B и 8 - результат один.
  20. На заборе корпусе написано STM, J-Link Commander определяет тоже как STM32F103CB
  21. Нужно разлочить STM32F103CB

    Купил такую плату: Через ST-LINK V2 флешка читается и записывается. Подключаю J-Link, но не могу ничего сделать. Только стирание работает. Сбросил настройки до заводских Передёрнул питание Далее подключаюсь через JFlash, но ничего не изменилось. Флешка всё равно не читается. Как выйти из этой ситуации? J-Link исправен, работает с LPC1778 и STM32F401
  22. Почитаю. Хотелось бы увидеть реальные схемы защиты от всех этих нечистот по питанию.
  23. В автомобиле может быть не всегда чистым напряжение питания, ввиду наличия других потребителей и подзарядки аккумулятора от генератора.
×
×
  • Создать...