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

    

Darth Vader

Участник
  • Публикаций

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

  • Посещение

Репутация

0 Обычный

Информация о Darth Vader

  • Звание
    Частый гость

Посетители профиля

218 просмотров профиля
  1. 2018 Вопросы начинающих

    В 17.0.11 такое есть для контактных площадок в футпринтах компонентов и для переходных отверстий. Наверняка и для полигонов такое же есть - сейчас не помню точно. В правой нижней части окна свойств.
  2. Не нужно. В понятие тока потребления МК не входят токи через выводы портов. Их надо учитывать при расчёте тока потребления всего устройства.
  3. Самый примитивный способ: И так для всех интересующих цепей, подключенных к выводам портов микроконтроллера. Далее в тексте программы оперируете лишь этими макроименами. Мне этого вполне хватает.
  4. Первый ответ был самым правильным. На Э3 платы УГО модуля не будет вообще. Там будут соединители для его подключения. Они и попадут в ВОМ (ПЭ3) на плату. А уж на Э3 (или Э4) на весь прибор будет 2 прямоугольника с соединителями: ваша плата и модуль, которые подключены друг к другу. В ВОМ (ПЭ3/ПЭ4) этой схемы уже попадут и ваша плата и модуль. Это строго по ЕСКД.
  5. Keil MDK-ARM ошибка: L6236E

    Посмотрите книжки отсюда. В основном это методички по лабораторным работам для студентов технических ВУЗов. Там во многих из них присутствует глава о Кейле, его настройках и как создать и отладить в нем простой проект. Может быть пригодится для первоначального освоения среды.
  6. Keil MDK-ARM ошибка: L6236E

    Минималистичный проект для начинающего должен делаться без Куба и содержать всего пару файлов: стартап для выбранного камня и мэйн с вечным циклом while (1) {}. Только собрав такой проект самостоятельно вручную с нуля стоит переходить к миганию светодиодом. Вы же пропустили этот нулевой уровень познания и решили перейти сразу к первому. Да ещё и с Кубом. На время отложите его в сторону. Научитесь самостоятельно создавать простые проекты без него. В вашем случае он подобен инженерному калькулятору или ноутбуку в руках первоклассника, ещё не умеющего читать, писать и считать. На этом этапе нужны прописи, тетрадки и ручки с карандашами, а не ноутбуки/калькуляторы. С ними ни писать, ни читать, ни считать не научишься.
  7. Beaglebone black/green и тачскрин.

    А при перезагрузке ОС с экрана снимается питание или нет? Если да - то снятие/подача питания с последующей инициализацией должны помочь. Но для этого на плате должна быть аппаратная возможность управления питанием дисплея. Её же скорее всего нет. Тогда можно попробовать просто повторить его инициализацию, которая делается при загрузке ОС. Надо посмотреть послед-ть команд инициализации и повторить их. Может быть поможет.
  8. Hidden Pin

    Тема "Вопросы начинающих", страница 38 - там ответ на этот вопрос.
  9. Просмотр переменных в STMStudio

    Не хватает точки запятой в конце. Или пустого блока из фигурных скобок. И не понятно, почему компилятор на это не ругается.
  10. Итог: настоящие джентльмены так не делают, но если очень надо - то можно. На том вопрос о целесообразности размещения объектов в адресном пространстве по абсолютным адресам вручную предлагаю закрыть. А то получается дискуссия типа: - скажите, где можно купить вкусное пиво? - не покупай его и не пей, оно вредно для здоровья.
  11. 2018 Вопросы начинающих

    В 17 и более ранних версиях - двойной клик по УГО - откроется окно свойств компонента -> Edit Pins -> Edit.. - открывается окно свойств пина. Там для скрытых выводов уже установлена галка Hide, остается только заполнить поле Connect To - вводим туда имя цепи к которой он должен быть подключен. Можно также откорректировать Display Name в соответствии с именем цепи, чтобы оно отображалось в таблице Component Pin Editor в столбце Name. На скриншоте обычный вывод. Но если установить галку Hide и назначить имя цепи в Connect To, то он исчезнет с УГО компонента, не будет отображаться на схеме и станет скрытым. Но при этом будет подключен к цепи с заданным вами именем.
  12. Обычно нет. Но есть и в этом случае исключения. Одно из них лежит на поверхности. Им пользуются все. И вы тоже. Только забываете об этом, т.к. это сделано кем-то до вас, вы же просто пользуетесь этим не задумываясь, и всё работает. Имеется ввиду адреса регистров управления ядром и периферией контроллера. Они расположены в адресном пространстве по строго заданным адресам. И в *.h-файле описания контроллера они определяются через указатели, приведением целого числа, равного базовому адресу периферийного устройства, к типу указателя на структуру этого устройства. В итоге, если раскрыть все дефайны, получится конструкция типа: // Обнуляем счётный регистр таймера: // TIMER_TypeDef - псевдоним типа структуры таймера // 0x40078000 - базовый адрес таймера // CNT - счётный регистр таймера ((TIMER_TypeDef *) 0x40078000)->CNT=0;
  13. Тем, что адрес размещения этого массива в памяти назначит линкер, а не я. Не всегда и не везде. Это общее правило, из которого есть исключения-частности, где ручное назначение адресов размещения оправдано. Например, я хочу, чтобы код программы и параметры конфигурации прибора не лежали в пределах одной страницы флеш-памяти, а были разнесены по разным. Или я хочу, чтобы код программы и параметры находились в двух разных микросхемах памяти, подключенных к конроллеру по внешней шине. Или программа в контроллере, а настройки/символы знакогенератора во внешней памяти. Вобщем, есть много разных ситуаций, когда ручное размещение константных объектов в адресном пространстве оправданно и целесообразно.
  14. В итоге к этому и пришел. Без директив никак. Стандартными средствами языка такое не получить, чтобы создать и одновременно инициализировать константный объект в области флеш-памяти по указателю на него.
  15. 2018 Вопросы начинающих

    А как можно посмотреть классы, сгенерированные при компиляции PCB-проекта? Их генерацию или отсутствие можно задавать галочками в опциях проекта на вкладке Class Generation. Но вот какие именно классы в итоге сгенерировались, как они называются и что в них входит посмотреть не удаётся. Да, если перейти к PCB, то там можно посмотреть классы в меню Design -> Classes... Но не всегда это дает полную картину. Например: 1. PCB в проекте ещё нет. Не добавлена, не сделана. Пока что есть только схема. Хотелось бы знать, какие классы с какими членами сгенерировались при её компиляции. 2. PCB в проекте уже есть, но при переносе изменений из схемы в PCB или наоборот между классами цепей схемы и PCB есть различия. Для полноты картины хотелось бы видеть, что за классы сгенерировались при компиляции схемы и какие классы есть в PCB. Если с просмотром классов в PCB проблем нет, то вот как поглядеть классы, сгенерированные в результате компиляции схемы?