Виртуальная машина для ардуино?

Тема в разделе "Флудилка", создана пользователем valeraba, 27 авг 2018.

  1. Mitrandir

    Mitrandir Гуру

    И как вы хотите во флеш писать?
    Если можете во флеш писать, чем вам с++ не угодил?
     
  2. valeraba

    valeraba Нерд

    Я устал плодить разные прошивки, на каждый чих. Поэтому и решил сделать маленький ПЛК.
     
  3. Mitrandir

    Mitrandir Гуру

    То есть развернул виртуальную машину на микроконтроллере вам не придётся писать байт код для этой машины?
     
  4. valeraba

    valeraba Нерд

    Не сразу вас понял. Во флеш тоже можно писать в рантайме.
     
  5. parovoZZ

    parovoZZ Гуру

    и чем это будет отличаться от обычного программирования?
    и как его оттуда исполнить?
     
  6. parovoZZ

    parovoZZ Гуру

    постранично и затирая существующую программу...
     
  7. valeraba

    valeraba Нерд

    Придётся, но подправить скрипт и обновить прошивку можно за считанные секунды.
    С бинарником такой фокус не пройдёт. Да и небезопасно это, можно сделать ошибку в программе и устройство уже никогда не выйдет на связь.
     
  8. parovoZZ

    parovoZZ Гуру

    реализацию в коде можешь прямо здесь написать? Ну пусть и с ошибками.
     
    Mitrandir нравится это.
  9. Mitrandir

    Mitrandir Гуру

    А зачем править бинарник? Нажал кнопку компилировать и avr-gcc новый бинарник породил
     
    parovoZZ нравится это.
  10. Mitrandir

    Mitrandir Гуру

    Читаем из еепрома байт код и интерпретируем. У нас же интерпретатор.
     
  11. parovoZZ

    parovoZZ Гуру

    А теперь все дружно идем сюда и читаем
    http://microsin.net/programming/avr/avr109-self-programming.html

    И понимаем, что самообновление не из секции загрузчика это уровень далеко не абдурино телепузиков.
    А если обновляться с помощью загрузчика, то не вижу смысла во всей этой затее.
     
    Mitrandir нравится это.
  12. valeraba

    valeraba Нерд

    Умм, публиковать пока не думал. Может, для вас лично, в онлайн устройство вывести? Это можно, могу завтра.
     
  13. На avr можно просто загружать код, без всяких интерпретаторов. Собственно, ардуино так и работает - принимает код по serial-интерфейсу, записывает в память и перезагружается.
     
    Mitrandir нравится это.
  14. valeraba

    valeraba Нерд

    Для создания ПЛК на основе ардуино я решил использовать графические блоки. Мне очень понравилась технология blockly. Blockly позволяет сгенерировать очень компактный байткод для очень простой виртуальной машины. Такая виртуальная машина много проще чем NanoVM.
     
  15. valeraba

    valeraba Нерд

    Ох уж эти священные войны вокруг ПЛК. Что круче ST,LD,FBD или С++ программа.
    Для меня всегда было круче ПЛК, хотя у меня большая практика писать на ассемблере.
     
  16. Mitrandir

    Mitrandir Гуру

    Что круче зависит от задачи. Данный спор аналогичен спору что круче молоток или отвёртка.
     
    parovoZZ нравится это.
  17. ZAZ-965

    ZAZ-965 Гуру

    Какой Blockly использует виртуальную машину? Те что я видел генерируют лапшеподобный Си код.
     
  18. Что? Не могу привязать это к моему сообщению никак. Если вам нужен функционал плк, то просто напишите транслятор из языка плк в язык мк. Половина плк так и работают.
     
    parovoZZ нравится это.
  19. valeraba

    valeraba Нерд

    Почему нет? Blockly это гибкая платформа для генерации графических блоков в разные языки, и в ассемблер тоже.
    Согласен с вами. Мне именно ПЛК и нужен был. Понимаю, что виртуальная машина и ПЛК понятия совершенно разные. Просто в моём случае, ПЛК содержит в себе виртуальную машину, которая проигрывает байткод, сформированный blockly.