Nano Hash - криптовалюты, майнинг, программирование

Просто скомпилируйте или просто перенесите байт-код с помощью стандартной IDE Arduino.

Я работаю со стандартной ардуино IDE.

Я хочу сделать 3 вещи, и это, кажется, недоступно:

  • Прежде всего: я хотел бы использовать git внутри программного обеспечения Arduino. Есть ли плагин или что-то в этом роде, потому что я не хочу использовать командную строку вне IDE?

  • Я хочу скомпилировать байт-код, не подключая плату через USB. Я хочу получить шестнадцатеричный файл дампа (байт-код)

  • Я хочу передать этот байт-код, даже если у меня нет исходного кода (C/C++)

Вы знаете, возможно ли это с базовым программным обеспечением Arduino? Если нет, есть ли другое программное обеспечение, которое может выполнять эти 3 задачи?

Изменить: то, что я имею в виду под «байтовым кодом», является результатом компиляции C/C++. Это дамп того, что написано на ардуино

Спасибо

18.02.2017

  • Я бы посоветовал вам сбросить Arduino IDE и использовать Arduino Makefile для сборки, загрузки и тестирования вашего проекта. Вы можете настроить любую IDE с поддержкой git для использования Arduino Makefile для сборки вашего проекта. 18.02.2017

Ответы:


1

Мне нужен был ответ на эти 3 вопроса (или подобные); и я получил их с подробным режимом в arduino IDE. Если вы установите флажок для подробного описания при компиляции и загрузке, среда IDE напечатает используемую командную строку. Вы получаете оперативную информацию, которая соответствует странице BuildProcess arduino.

  • Во время «Проверки» файл .hex записывается в /tmp (на Mac и Linux). Подробный режим дает вам непосредственно имя шестнадцатеричного файла.
  • Эскизы загружены avrdude. Вам нужно много вариантов, они задаются подробным режимом.

Я использовал этот режим разработки с arduino, подключенным к малине. Если мне нужно изменить скетч Arduino, я не использую разработку Arduino на малине и не отключаю Arduino. Я изменяю эскиз на своем ноутбуке, я «проверяю», затем перемещаю шестнадцатеричный файл в малину, и единственная команда на Pi — это загрузка с помощью avrdude.

На ваш первый вопрос: я уверен, что в IDE arduino нет плагина для использования git внутри. Если бы он был, он был бы не очень надежным. Со стандартным деревом эскизов Arduino не очевидно, какую библиотеку вы хотите включить в свой репозиторий git.

@Patrick Trentin дал вам способ найти лучшую IDE.

У меня был неутешительный опыт работы с некоторыми файлами arduino-makefile. Я проверил некоторые make-файлы на arduino.cc, они слишком старые и не поддерживаются. Я попробовал такой, как Makefile.master (который предложил @Patrick). Эти до сих пор частично поддерживаются (одним разработчиком?); но они не знают всех плат (иногда переключаюсь между uno, due и teensy и даже red bear lab), и они не совместимы с версией arduino v1.5.0+. Дерево изменилось для avr/core и для библиотек.

Я нашел sudar/Arduino-Makefile и установил его на прошлой неделе вместе с Qt. Создатель. Он работает, выглядит законченным и имеет 50 участников.

  • Создатель Qt не может угадать значение makefile, грустно :(
  • Поэтому я пропускаю общую процедуру компиляции и говорю ей использовать make для компиляции и make upload для развертывания.
  • Qt Creator создает файлы конфигурации в каталоге проекта, потому что не может расшифровать makefile. Если бы я хотел использовать git внутри Qt Creator, я бы заполнил файл myProject.files вручную (не удобно!).
  • Чтобы получить завершение кода и навигацию по коду в Qt, мне нужно указать путь включения в файле myProject.includes. Мне приходится делать это вручную, но это всегда одни и те же каталоги (мы можем указать неиспользуемый каталог), более того, нам не нужно указывать имена файлов, Qt может сам найти файлы cpp.

Существует более простое решение для завершения кода и навигации (что не является вашим основным вопросом).

  • Я все еще скомпилировал с arduino IDE, который отлично обрабатывает все платы и поддерживается.
  • И я использую хорошую IDE (Qt...) только для редактирования кода. Среде IDE нужны только все включаемые пути, и я всегда могу использовать одни и те же проекты, поскольку могу указывать больше каталогов, чем используется на самом деле.
21.02.2017
Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..