SimulAVR
| программное обеспечение | |
| SimulAVR | |
|---|---|
| Тип | |
| Написана на | |
| Операционная система | |
| Последняя версия |
1.0 (12.02.2012) |
| Состояние |
активно |
| Лицензия | |
| Сайт | |
SimulAVR — симулятор семейства микроконтроллеров Atmel AVR (ATtiny и ATmega). Входит в стандартно рекомендуемый набор инструментов разработки в среде Linux[1], может применяться при проектировании в составе различных сред разработки[2], в первую очередь на платформах, где не работает фирменный симулятор от Atmel. Может использоваться автономно либо как сервер интерфейса к отладчику GDB[3].
История[править]
Проект SimulAVR был основан Theodore Roth в 2001 году на чистом языке программирования C. В 2004 году Klaus Rudolph сделал ответвление основного проекта, с тем, чтобы симулирующие аппаратуру участки кода были написаны на языке C++. Эта версия имела название simulavrxx, и развивалась, пока не стала полностью совместима по возможностям с SimulAVR, после чего заместила собой исходный проект на языке C. Тем не менее, на момент выхода версии 1.0 на сайте разработчиков предлагаются для скачивания последние стабильные версии исходного simulavr и simulavrxx.
Возможности[править]
- Запуск в режиме gdbserver для использования стандартного отладчика gdb, к которому есть интерфейсы у многих сред программирования и отладки
- Запуск для симулирования нескольких устройств AVR с различной частотой и с пошаговой их синхронизацией
- Возможность симулирования подсоединения к выводам контроллера внешних устройств, таких, как ЖКИ и светодиоды
- Возможность написания скриптов отладки на языках Tcl/Tk и Python
- Ведение статистики прерываний с анализом задержек, наибольшего и наименьшего времени исполнения и так далее
- Есть возможность расширения набора моделей внешних устройств на языке verilog
Примеры использования[править]
Входным файлом для симуляции служит программа микроконтроллера, скомпилированная в формате ELF. Это стандартный выходной формат компилятора avr-gcc.