программирование на Ассемблере

Тема в разделе "Микроконтроллеры AVR", создана пользователем Mitrandir, 6 май 2014.

  1. Mitrandir

    Mitrandir Гуру

    Решил поизучать ассемблер дря avr. Для этого ардуино ide подойдет?
    И поймет ли Иде ассемблерные вставки?
     
  2. Unixon

    Unixon Оракул Модератор

    0) Считайте, что IDE это просто редактор текста, не имеющий отношения к коду. Будет меньше неправильных вопросов. Текст обрабатывается не Arduino IDE, а компилятором avr-gcc.

    1) Подойдет ограниченно и не лучшим образом;
    2) Да, avr-gcc поймет вставки, но это именно вставки, а не программа на ассемблере.
     
    Mitrandir нравится это.
  3. Mitrandir

    Mitrandir Гуру

    Ide в моем понимании это текстовый редактор, способный скармливать код компилятору.
     
  4. Mitrandir

    Mitrandir Гуру

    Какое ПО тогда лучше использовать?
     
  5. Unixon

    Unixon Оракул Модератор

    А вы в какой ОС работаете?
     
  6. Mitrandir

    Mitrandir Гуру

    Винда восьмерка, есть две меги, одну как я понимаю можно будет использовать как программатор другой?
     
  7. Unixon

    Unixon Оракул Модератор

    Лично я бы предложил Code::Blocks в качестве кросс-платформенного решения с оглядкой на Eclipse, но под виндами может быть свой более удобный софт.
     
    Mitrandir нравится это.
  8. Витя

    Витя Гик

    Atmel (это компания которая делает микроконтроллеры) делают специальную среду же для них - Atmel Studio как раз под винду. Сам не видел но вот хочу тоже винду себе сейчас специально поставить чтобы попробывать.
     
    Unixon и Mitrandir нравится это.
  9. Airbus

    Airbus Радиохулиган Модератор

    AVR Studio "Студия" позволяет писать как на Асме так и на чистом Си.Да ещё и отлаживать.Лучшего софта я не видел.Можно извращаться использовать Текстовые редакторы+внешние компиляторы но зачем?Здесь хороший курс по Асму да и по Си тоже
     
    Mitrandir нравится это.
  10. NR55RU

    NR55RU Гик

    AVR Studio имеет один классный момент, это возможность эмуляции работы микроконтроллера с выдачей всей информации о его состоянии что позволяет отлаживать программу до заливки на МК.
    Вот тут я приводил ссылочку на обучающие видео (на русском) по "студии" и на решение одной проблемы связанной с клонами программатора STK500.
     
  11. Unixon

    Unixon Оракул Модератор

    На виндах - да, но что вы будете делать на маке или линухе? А если аудитория проекта включает несколько разнородных систем, желательно иметь еще и одинаковую систему сборки. Ну и т.д. А так то да, AVR Studio вполне годится. Мне у нее правда не нравится такой же, как у микрософтовских студий, запутанный интерфейс настроек проекта. К тому же она довольно большая, а иногда хочется чего-то маленького и шустрого.
     
  12. Mitrandir

    Mitrandir Гуру

    Вчера поставилAvr studio. Как понял это надстройка над микрософтовской студией. Чтобы залить Зевс в могу нужно внешний прогоамматор или можно через юбилей порт меди заливать?
     
  13. ИгорьК

    ИгорьК Гуру

    Если работать в чистой Авр студио, придется заливку делать через программатор. А вот если в нее добавить плагин, то студия начинает работать как IDE для Ардуино. В том числе и заливает программы через USB.
    А если все это интегрировать с CodeVisionAVR - то получится удобный коктейль. Эта штука позволяет писать на чистом С и грузить в Ардуинку по USB.
     
    flagman и acos нравится это.
  14. Mitrandir

    Mitrandir Гуру

    Спасибо, надо будет качнуть.
     
  15. Mitrandir

    Mitrandir Гуру

    А как амтел студию научить использовать библиотеки wiring? Скопировать из недр ардуино ИДЕ в проект?
     
  16. ИгорьК

    ИгорьК Гуру

    Меню "Project" -> "Add/Import Scetch Library" -> User или Core ... и все что выбрали включается в проект.
     
  17. Mitrandir

    Mitrandir Гуру

    у меня 6,1 версия... нет такого пункта.
    Создал новый проект - библиотеку, скормил в него все фаилы с ардуино IDE папки hardware\arduino\avr\core
    скомпилил библиотеку.

    создал новый исполняемый проект, подрубил полученную библиотеку. написал с 0 блинк
    Код (Text):

    #include <avr/io.h>
    #include <Arduino.h>
    int main(void)
    {
        pinMode(13,OUTPUT);
        while(1)
        {
            digitalWrite(13,HIGH);
            delay(5000);
            digitalWrite(13,LOW);
            delay(5000);
        }
    }
    Все скомпилилось. но в эмуляторе не делает абсолютно ничего.
    во всех портах абсолютно ничего не меняется.

    Поставил плагин VisualMicro. появился новый тип проекта. и новая панель для заливки, но заливать проекты других типов не хочет. Похоже придется покупать программатор.

    Можно ли одну из моих мег заставить прикинуться программатором?
     
  18. Mitrandir

    Mitrandir Гуру

  19. ИгорьК

    ИгорьК Гуру

    1. Пункт меню, о котором я говорил, появляется после установки плагина. И все это работает исключительно как IDE для Ардуино.
    2. Заливать в Ардуино чистый С можно интегрировав в студию CodeVisionAVR. Но это касается опять же Ардуино.
    3. Программировать МК можно через Ардуино, но по-моему это очень не удобно. Один раз можно, но если Вы серьёзно занимаетесь МК не повторяйте мантру "разориться на программатор жаба не позволяет", нпкопите 50 баксов и приобретите AVR Dragon. Это существенно упростит отладку и программирование.
     
  20. Mitrandir

    Mitrandir Гуру

    я уже задумываюсь о приобретении программатора, только вот он месяц идти будет с китая