Как настроить Atmel-ICE для программирования ATmega328 на PlatformIO с VSCode на Windows 10 - PullRequest
1 голос
/ 09 января 2020

Я пытаюсь использовать свой Atmel ICE с платформойIO и VS Code вместо Atmel Studio, так как это программное обеспечение очень неудобно, когда я хочу использовать Arduino.h с библиотеками.

Однако я не могу загрузить с моим программист. Я попытался с 32-контактным ATmega328.

Я впервые использовал документацию PIO о том, как использовать Atmel-ICE с ним на этой странице: https://docs.platformio.org/en/latest/plus/debug-tools/atmel-ice.html

If you would like to use this tool for firmware uploading, please change upload 

protocol:
[env:myenv]
platform = ...
board = ...
debug_tool = atmel-ice
upload_protocol = atmel-ice

Вот что я написал в своем файле:

    [env:ATmega328P]
platform = atmelavr
board = ATmega328P
framework = arduino
upload_protocol = atmel-ice

И я получаю это сообщение, когда запускаю команду загрузки в PIO:

DATA:    [          ]   0.4% (used 9 bytes from 2048 bytes)
PROGRAM: [          ]   1.4% (used 444 bytes from 32256 bytes)
Configuring upload protocol...
AVAILABLE: atmel-ice
CURRENT: upload_protocol = atmel-ice
Looking for upload port...
Error: Please specify `upload_port` for environment or use global `--upload-port` option.
For some development platforms it can be a USB flash drive (i.e. /media/<user>/<device name>)
*** [upload] Explicit exit, status 1

В этот момент я не уверен, что пытаться. Я попробовал пару вещей, описанных ниже, но я не уверен, что иду по правильному пути. Программист atmel ICE, по сравнению, например, с Arduino, не имеет номера USB PORT, связанного с ним, поэтому я не знаю, как мне указать мой аргумент upload_port в моем файле .ini.

Некоторые параметры описаны в документации к платформеIO https://docs.platformio.org/en/latest/projectconf/section_env_upload.html, но я полностью растерялся. Я чувствую, что получаю сообщение: для некоторых платформ разработки это может быть USB флэшка sh (т.е. / media //) может быть хорошим ключом к разгадке. Любая идея, что я должен изменить в моем файле .ini, чтобы мой Atmel ICE работал? спасибо!


Другие вещи, которые я пробовал: я прочитал в посте (извините, я больше не могу найти ссылку), что добавление

upload_port = usb

может решить проблему. При добавлении этой строки в мой platformio.ini я получаю другое сообщение об ошибке:

avrdude: Can't find programmer id "atmel-ice"

Valid programmers are:
  2232HIO          = FT2232H based generic programmer
  4232h            = FT4232H based generic programmer
  arduino          = Arduino

И этот список продолжается ..

Я искал и нашел этот пост, который имеет тот же сообщение об ошибке !: https://community.platformio.org/t/atmega-328-internal-8mhz-oscillator-atmel-ice-upload-troubles/10416

Решением здесь было добавить

upload_flags = -e 

Но это ничего не изменило для меня.

Он также упомянул, что внес изменения в файл 328p8m. json, который в моем случае будет ATmega328P. json. Я даже не знаю, где его найти. Это будет актуально?

...