Уважаемые форумчани! Помогите пожалуйста настроить отладку для AVR с использованием программного симулятора SimulAVR в eclipse. Скачал последнюю версию simulavr v1.0.0 с официального сайта. Пользовался данной инструкцией:
Настраивал Starting the gdbserver следующим образом: Спойлер 1)Скопировал скаченые файлы simulavr v1.0.0 в отдельную папку, в Starting the gdbserver в строке Location: указал новый путь к этой папке. 2)В отличие от основной инструкции, в поле Arguments ввёл следующие: -g -p 4242 -d atmega128 -F 11059200—cpufrequency т.к. синтаксис команды поменялся в новой версии simulavr v1.0.0 СпойлерC:\simulavr>simulavr -h AVR-Simulator Version 1.0.0 -u run with user interface for external pin handling at port 7777 -f --file <name> load elf-file <name> for simulation in simulated target -d --device <name> simulate device <name> -g --gdbserver listen for GDB connection on TCP port defined by -p -G --gdb-debug listen for GDB connection and write debug info --gdb-stdin for use with GDB as 'target remote | ./simulavr' -m <nanoseconds> maximum run time of <nanoseconds> -M disable messages for bad I/O and memory references -p <port> use <port> for gdb server -t --trace <file> enable trace outputs to <file> -n --nogdbwait do not wait for gdb connection -F --cpufrequency set the cpu frequency to <Hz> -s --irqstatistic prints statistic informations about irq usage after simula tion is stopped -W --writetopipe <offset>,<file> add a special pipe register to device at IO-Offset and opens <file> for writing -R --readfrompipe <offset>,<file> add a special pipe register to device at IO-offset and opens <file> for reading -a --writetoabort <offset> add a special register at IO-offset which aborts simulator run -e --writetoexit <offset> add a special register at IO-offset which exits simulator run -V --verbose output some hints to console -T --terminate <label> or <address> stops simulation if PC runs on <label> or <address> -B --breakpoint <label> or <address> same as -T for backward compatibility -c <tracing-option> Enables a tracer with a set of options. The format for <tracing-option> is: <tracer>[:further-options ...] -o <trace-value-file> Specifies a file into which all available trace value name s will be written. -v --version print out version and exit immediately -h --help print this help
В Debug Configurations нет строчки меню C/C++ Local Application Спойлер Поэтому решил настроить отладчик через GDB Hardware Debugging следующим образом: Спойлер Запускаю отладку следующим образом: сначала simulavr а потом debuger – режим отладки запущен. Появляется интерфейс отладки но не чего не работает Спойлер Консоль: СпойлерСообщение в консоли (avr-gdb): No symbol "new" in current context. target remote localhost:4242 warning: Can not parse XML target description; XML support was disabled at compile time 0x00000000 in __vectors ()
tbreak main Breakpoint 1 at 0xbe: file ../main.c, line 11. continue
Program received signal SIGHUP, Hangup. 0x00000000 in __vectors ()
Сообщение в консоли №2 (*.elf): No program to simulate. Use 'load' to upload it.
Что я делаю не так?
Использую следующий софт: 1) Eclipse IDE for C/C++ Developers Version: Indigo Service Release 2 Build id: 20120216-1857 Спойлер2) WinAVR-20100110 3) simulavr v1.0.0
Кто-нибудь подключал к Eclipse плагины для работы с UML? Если есть таковые, ответьте, пожалуйста, на пару вопросов.
Насколько полно плагины соответствуют спецификации UML 2.x? Насколько корректно реализованы диаграммы состояний (особенно в части внутренних переходов и иерархии состояний)?
_________________ Любой дурак может писать код. Настоящий профессионал - это тот, кто способен постоянно создавать продукт высокого качества, укладываясь при этом в бюджет. J. Ganssle
Качественное и безопасное устройство, работающее от аккумулятора, должно учитывать его физические и химические свойства, профили заряда и разряда, их изменение во времени и под влиянием различных условий, таких как температура и ток нагрузки. Мы расскажем о литий-ионных аккумуляторных батареях EVE и нескольких решениях от различных китайских компаний, рекомендуемых для разработок приложений с использованием этих АКБ. Представленные в статье китайские аналоги помогут заменить продукцию западных брендов с оптимизацией цены без потери качества.
Помогите пожалуйста настроить отладку для AVR с использованием программного симулятора SimulAVR в eclipse. Скачал последнюю версию simulavr v1.0.0 с официального сайта. Пользовался данной инструкцией:
Всё разобрался! Надо было настроить отладчик GDB Hardware Debugging следующем образом Спойлер
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
Все здраствуйте. Возникла парочку проблем при работе с eclipse + mac os + ATmega8 + stk500. И так задача самая простая: скомпилировать и залить проект на контроллер. Выглядит это чудо вот так: питание от usb идет 5v. Код выглядит так: Спойлер#include <avr/io.h> int main(void){ while(1); return 0; }
Все плагины на eclipse установленны, компиляторы то же.
А теперь проблемы: 1) При создании проекта нет возможности настроить MCU type Что приводит к созданию проекта на ATmega16 Спойлерmake all Building file: ../main.c Invoking: AVR Compiler avr-gcc -Wall -Os -fpack-struct -fshort-enums -std=gnu99 -funsigned-char -funsigned-bitfields -mmcu=atmega16 -DF_CPU=1000000UL -MMD -MP -MF"main.d" -MT"main.d" -c -o "main.o" "../main.c" Finished building: ../main.c
Building target: ATmega8_test.elf Invoking: AVR C Linker avr-gcc -Wl,-Map,ATmega8_test.map -mmcu=atmega16 -o "ATmega8_test.elf" ./main.o Finished building target: ATmega8_test.elf
Точнее не gdb-сервер, а сервер для gdb. Чем прошиваете? st-link'ом? Тогда должна быть запущена утилита st-util, которая и создаёт сервер. Потом запускаем arm-none-eabi-gdb В командном интерфейсе пробуем подключиться к серверу: target extended-remote localhost:4242 Если всё нормально, в консоли st-util увидите что-то наподобие:
Код:
GDB connected. recv: qSupported:multiprocess+;qRelocInsn+ query: Supported;multiprocess+;qRelocInsn+ send: PacketSize=3fff;qXfer:memory-map:read+ recv: ! send: OK recv: Hg0 и т.д.
Если связка работает, проверяйте, как это запускается из eclipse. Вообще хрен знает, как это под виндой работает. Но должно быть так же. Под линуксом проблем нет.
Не нашёл не одной рабочий инструкции как настроить отладку в Eclipse. Решил составить свою.
Спасибо большое за инструкцию Android4300. У ARV есть хорошая инструкция по настройке Eclipse и simulavr. Но если честно я от simulavr ждал большего. А точнее, я понятия не имею, как в нем настраивать события по входам, ЖКИ и т.д. Очень мало информации, а русскоязычной почти нет. Да и тямы мне не хватает в этом вопросе. PS: лично моё мнение, что данную тему давно пора объединить с темой по WinAVR касательно AVR, так как Programmers Notepad и Eclipse используют общие toolchains от WinAVR. И исходный код будет одинаково компилироваться в обоих IDE. Лично я давно перешел на Eclipse, так как данная IDE намного удобней и функционал шире, чем у Programmers Notepad.
_________________ Кот должен прожить жизнь без сожаления.
А точнее, я понятия не имею, как в нем настраивать события по входам, ЖКИ
Подозреваю, что вообще никак. Смысл отлаживать программу в eclipse есть только в том случае, если код, который вы пишете – имеет сложную логику. Для другого лучше использовать proteus.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 19
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения