Учусь ассемблеру - "микроконтроллеры avr" от белова а.в.

Тема в разделе "Флудилка", создана пользователем OldKryptos, 11 ноя 2021.

  1. parovoZZ

    parovoZZ Гуру

    Ну да. Бери любой AVR и изучай. А чтобы лучше понять, как оно внутри работает, погоняй симулятор. Со временем придёт понимание, как устроена эта кухня, а также понимание того, что круг задач, которые ты можешь решить, значительно расширится. Ограничением уже будут не знания, а возможности микроконтроллера и его периферии.
     
    OldKryptos нравится это.
  2. parovoZZ

    parovoZZ Гуру

    Во ВТУЗ-ах развивают мышление. А станешь ты специалистом или все же инженером высшей квалификации зависит исключительно от тебя.
     
    KindMan нравится это.
  3. parovoZZ

    parovoZZ Гуру

    Вот если бы ты изучал ассемблер по-настоящему, а не через размышления про него, то для изучения ESP32 потребовался бы лишь только даташит и апноуты с сайта производителя. Тем паче, что секция WI-FI там спрятана за API. API абсолютно не сложный, периферия у тенсилики очень скудная (это ж пооцессор!). Там по железу и изучать нечего.
     
    Рокки1945 нравится это.
  4. b707

    b707 Гуру

    можно и не авр. например СТМ. Ассемблеры не сильно отличаются.
    И вообще, какакя разница. что за асм. если писать ты на ем не планируешь :)
     
  5. b707

    b707 Гуру

    я давно подозревал, что ЕСП - де..мо :)
     
  6. parovoZZ

    parovoZZ Гуру

    На асме сможешь написать ногодрыг с произвольной частотой тактирования?
     
  7. b707

    b707 Гуру

    с совсем произвольной ни на чем не смогу.
    А что можно написать на Си - можно и на асме, почему нет
     
  8. issaom

    issaom Гуру

    А мне оно зачем, музыку он и так у меня играет, фотки с камеры присылает, свет включает и выключает или предлагаешь какой-нибудь WEB сервер с нуля на ASM для него пилить? Это же чисто DIY штука, потребовалось решить задачу - посидел вечерок и все работает без протирания штанов в вузе и апноутов.
     
  9. parovoZZ

    parovoZZ Гуру

    А зачем тогда советуешь? В стм32 на изучение только одной системы тактирования уйдёт неделя. А для неподготовленного человека так и вообще вечность.
    В MSP430FR у меня ушло два вечера на изучение его DCO осциллятора с ФАПЧ. Ну и система тактирования у него также весьма развита. AVR такое и не снилось.
    А вот ассемблер очень прост: всего 16 основных команд.
     
  10. b707

    b707 Гуру

    вопрос серьезный - почему именно он?
     
  11. parovoZZ

    parovoZZ Гуру

    1. Мне очень интересна тема батарейного питания. Эти МК просто созданы для того, чтобы питаться от батарейки. Очень сильна развита внутренняя машина состояний - она включает именно те осцилляторы, которые необходимы именно в данный момент.
    2. Это память FRAM. Сохранять в неё значение переменной очень просто.
    3. Очень интересное соотношение память FRAM/память ОЗУ. Может достигать 2-х. У авр не превышает 4-х.
    4. Очень интересные таймеры
    5. АЦП умеет работать со знаковыми переменными. У авр такое возможно только с дифф. АЦП. Здесь же я подаю половину напряжения опоры и снимаю с АЦП нулевое значение. У младших авр такого просто нет.
    6. Компараторы таймеров умеют работать в паре. В младших авр такого тоже нет.
     
  12. Рокки1945

    Рокки1945 Гуру

    Приветствую - есть хорошие уроки.
     
    OldKryptos нравится это.
  13. Рокки1945

    Рокки1945 Гуру

    Неа - если бы не было йогов - не было бы так просто
     
    DetSimen нравится это.
  14. Рокки1945

    Рокки1945 Гуру

    Да и буд - тоже бы не было
     
  15. OldKryptos

    OldKryptos Гик

    Честно говоря не ожидал такой активности по теме. Ну уж коль такая пьянка пошла, внеплановый второй постик по итогам чтения книжки, которую назову:
    Пасхалка ~
    Как я уже говорил, в книге основы asm описываются на примере Attiny2313. Да-да я в курсе, что - старьё, нафталин и т.п., но летчики-истребители летать начинают тоже, с чего попроще. Итак 2313, а у меня в наличии 2313A, который вроде как отличался только более высокой тактовой частотой. Спаял я стендик, сделал несколько вводных уроков, все хорошо. Кнопарик нажимается, светодиоды моргают. Дошел, наконец, до интересного. Работа с таймером и прерываниями, и тут - ошибка.
    asm01.JPG

    Поначалу растерялся конечно, код старательно переписан, как в уроке. Куда ломиться? Но взял себя в руки, вспомнил девиз автостопа по Галактике - "Не паникуй", вчитался в красное сообщение и пошел сравнивать даташиты этих контроллеров. И что вы думаете? Для Attiny2313A есть, таки, зарезервированное слово "prtim1". Так назван бит в регистре управления пониженного питания. В 2313 его просто нет, как и регистра.
    Переназвал подпрограмму "prtim1" в "prеtim1" и жизнь наладилась. Но с того урока не покидает меня сомнение. Случайно ли автор использовал это слово, или прикололся?

    asm02.JPG
    Мегастенд
    asm03.jpg
     
    Un_ka и issaom нравится это.
  16. parovoZZ

    parovoZZ Гуру

    есть и отличия по функциональности выводов. В А они шире, разумеется.

    этот регистр управляет тактированием периферии. По умолчанию всё включено. Но если что-то не нужно, то тактирование этого блока выключается битами данного регистра. По названиям битов понятно, кто что отключает.

    автор не сознается, стопудофф))
     
    issaom и OldKryptos нравится это.
  17. Наверное, он просто любитель транслита...
     
  18. a1000

    a1000 Гуру

    OldKryptos, не слушайте всех, кто вас отговаривает от изучения ASM. Это полезно и интересно. Начнёте по другому смотреть на функции СИ и ардуино. Порекомендую вам ещё одну книгу. То, как автор решает в ней задачи вызывает у меня белую зависть.
    http://paulfertser.info/AVR_DI_HALT.pdf
     
    Un_ka и Рокки1945 нравится это.
  19. ИгорьК

    ИгорьК Гуру

    Ну и где же ваши проекты, дорогие любители ассемблера? И каков их конечный уровень сложности?
    Я понимаю мамонтов от МК восьмидесятых годов, что эмбеддили на уровне "если-то" на тиньках, которые уже проржавели от времени. Они убили годы, чтобы научиться это делать и теперь и не могут принять другие языки и просто понять их логику.
    Поэтому и втирают о пользе языкового дауншифтинга.
    В DIY дешевле купить МК подороже с языком высокого уровня, чем тратить дорогое время на изучение набивание головы формальными данными.
    Просто время тинек давно ушло. Как и тех, кто обожал их тридцать лет назад.

    Защитники ассемблера - рассказывайте о своих ассемблерных проектах, а не перечне названий регистров, зачем-то сложенных в голове. Иное - выпас сферических коней.
     
    KindMan, DetSimen, issaom и ещё 1-му нравится это.
  20. Рокки1945

    Рокки1945 Гуру

    это горькая правда - увы
    но всё же - если есть желание узнать микроконтроллеры поближе лучше асм
     
    Последнее редактирование: 12 ноя 2021
    a1000 и Airbus нравится это.