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

Arduino Nano v3 и IAR AVR 7.30

Приветствую! Очень извиняюсь, если тема не нова, я пытался найти ответ - не нашёл.

До недавнего времени я кое-как разобрался с MSP430 и даже написал программу, которая позволит мне не просто любоваться на LaunchPad, а пристроить его к делу.

И вот оказалось, что этого дела - два. И я приобрёл упомянутый в заголовке МК. В ожидании доставки заготовил возможность использования кода на обоих процессорах (для ATmega328P компилировал без заливки), но, когда МК пришёл, IAR наотрез отказался заливать в него программу. И не могу понять, что именно нужно настроить, чтобы запрограммировать (если это вообще возможно).

Поиграл с частотой мигания LEDа в Arduino IDE - работает, как надо, но очень не хочется править работающий на MSP и не выдающий ошибок компиляции код для атмеги.

В Arduino IDE, замечу, тоже не сразу заработал, т.к. по умолчанию в настройках процессор был ATmega328P, и только после переключения на ATmega328P (Old bootloader) заработало. Если это важно, остальные настройки - Board: Arduino Nano, Programmer: AVRISP mkII, порт - в соответствии с тем, что присвоил драйвер при установке.

В IAR AVR нашёл только один дебаггер, где вообще можно выбрать порт COM - JTAGICE mkII. Но и тогда при попытке залить программу выдаёт Faild to communicate.

Так вот, вопрос: есть ли простой способ настроить или добавить возможность заливки программы (хрен бы даже с дебаггингом) в IAR AVR? Если способ мудрёный или вообще нет, так я, видимо, всё-таки буду править код, чтобы годился под Arduino IDE, усложнять себе жизнь вознёй с хитрыми костылями не охота.

Изменено пользователем ILSF15

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Программировать эту плату нужно через этот разъём (см. скриншот). Для этого нужен программатор (давно работал с AVR, но гуглите "пять проводков" или STK200 или STK500). Если не хочется паять программатор самостоятельно (а я вот в свою "молодость" паял и для AVR и для PIC с его 12 Вольтами), то на али точно должны быть готовые в районе 100 - 400 рублей за штуку.

image.png.3daf0c1d1451addb812b118f747b853b.png

Просто через USB подключенная плата не позволить запрограммировать микроконтроллер. Т.к. там стоит преобразователь USB-USART TTL. И предназначено всё это для питания платки от USB, и организации консольки.

7 hours ago, ILSF15 said:

процессор был ATmega328P

Не процессор, а микроконтроллер) Ну или по-русски: микроЭВМ. С одним процессором точно далеко не уедите.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Просто через USB подключённая плата прекрасно "позволить" запрограммировать микроконтроллер, о чём было написано в исходном посте. Так что ничего уедать не надо - надо ответ по заданному вопросу, а не общие соображения, не связанные с реальностью.

Изменено пользователем ILSF15

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

12 minutes ago, ILSF15 said:

а не общие соображения, не связанные с реальностью.

Друже, я работал с AVR'ками в течение 8 лет. И я тебе не общие соображения излагаю, а дело. Твоя плата программируется через USB только потому, что в микроконтроллере зашит бутлоадер (загрузчик). IAR ничего про него не знает. И никогда не узнает, это 100%. Если хочешь программировать через IAR, то купи программатор, и программируй через IAR, и заодно отлаживай там же. Через последовательный порт (usb) ничего не получится.

14 minutes ago, ILSF15 said:

о чём было написано в исходном посте

Так научитесь чётко излагать мысли, а не дёргать общие фразы из описания на платку.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

О! Вот это ответ по делу! Если нет возможности научить IAR работать с bootloader-ом в принципе - значит, буду править код, чтобы программировать через Arduino IDE. Хотя жаль, IAR куда мощнее... Хорошо хоть в Arduino IDE можно код на C с относительно небольшими правками вставлять, а не пользоваться "ардуинскими" операторами, раздувающими результат компиляции раз в 5 и не позволяющими редактировать регистры за одну итерацию...

Изменено пользователем ILSF15

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ищите описание загрузчика ардуины. Если память мне не изменяет - загрузчик в ардуине прикидывается программатором STK500, а оболочка ардуины вызывает программу avrdude, которая заливает остальную память контроллера, используя этот "программатор". Вы можете вызывать эту программу сами, заливая созданый ИАРом код.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 minute ago, Сергей Борщ said:

Ищите описание загрузчика ардуины. Если память мне не изменяет - загрузчик в ардуине прикидывается программатором STK500, а оболочка ардуины вызывает программу avrdude, которая заливает остальную память контроллера, используя этот "программатор". Вы можете вызывать эту программу сами, заливая созданый ИАРом код.

Что-то такое я видел, но чем курить такие мануалы - видит бог, мне проще убрать из программы весь код для MSP, подправить вектора прерываний и залить через Arduino IDE. Кроссплатформенности, конечно, жалко... но чем учить медведя кататься на велосипеде, проще проехаться на нём самому.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ваше дело. Я указал вам направление. Идти туда или нет - решать только вам. Могу погуглить за вас, но, боюсь, мой тариф на чтение докуметнации из интернета вслух в 100 евро/час вас не устроит.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Just now, Сергей Борщ said:

Ваше дело. Я указал вам направление. Идти туда или нет - решать только вам. Могу погуглить за вас, но, боюсь, мой тариф на чтение докуметнации из интернета вслух в 100 евро/час вас не устроит.

Не в коем случае не прошу такого :) Я просто хочу сказать, что ради одного случая (а больше не предвидится) разбираться в хитрых решениях или паять/покупать программатор не вижу смысла. Реально намного проще чуток подправить программу и залить готовым работающим способом. Просто на IAR-е я уже "набил руку" и заготовил маленькие программки для "освоения" ресурсов этой платы, а теперь это всё придётся делать почти с нуля, жаль.

Я просто надеялся, что есть настройки IAR или, скажем, плагин какой-нибудь для него, который позволил бы напрямую оттуда записывать в МК...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Этот "плагин" называется "файл с расширением .bat, в который один раз написана команда вызова программы avrdude с нужными ключами  и с указанием пути к созданному ИАРом файлу .hex". Вызов этого файла вроде бы можно подвесить на какое-то действие в ИАРе (много лет назад работал, не помню). А можно прямо эту команду вызова avrdude вписать в то самое место в ИАРе. Но где это место в новых ИАРах я вам не подскажу, ибо не знаю.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

10 minutes ago, Сергей Борщ said:

Этот "плагин" называется "файл с расширением .bat, в который один раз написана команда вызова программы avrdude с нужными ключами  и с указанием пути к созданному ИАРом файлу .hex". Вызов этого файла вроде бы можно подвесить на какое-то действие в ИАРе (много лет назад работал, не помню). А можно прямо эту команду вызова avrdude вписать в то самое место в ИАРе. Но где это место в новых ИАРах я вам не подскажу, ибо не знаю.

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А кстати, чтобы знать: есть такие платки от Arduino, которые поддерживают полноценный контакт с IAR, такой же, как LaunchPad, через USB? Или непременно нужен программатор?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...