Я заинтересован в использовании Raspberry Pi в качестве чистого встроенного процессора для разработки встроенных приложений. Так как Raspberry Pi имеет мощный процессор с небольшим объемом памяти, он является отличной встроенной платой.
Можно ли использовать Raspberry Pi без ОС Linux? Как я могу это сделать?
operating-systems
electronics
FarhadA
источник
источник
Ответы:
Я изучал программирование голого металла на Raspberry Pi, и это звучит как то, что вы хотите сделать. Есть несколько хороших тем на форуме о программировании на голом металле с некоторыми людьми, которые приложили немало усилий, чтобы заставить свой код работать. Проверьте это для начала:
Руководство по началу голого металла на Raspi
Программирование RPi на голом металле
Программирование в Basic на Bare Metal Учебник 1
или вообще вы можете пойти на Bare Metal Forum Raspberry Pi и просто просмотреть.
Насколько я понимаю, вам придется загружаться с SD-карты из-за последовательности загрузки, встроенной в чип Broadcom. Я пытаюсь найти ссылку для последовательности загрузки, но мой Google Fu не работает, я отредактирую позже, если найду его.
источник
он загружается только с SD-карты в формате fat32, переходит от poweron к загрузке прошивки gpu, которая выполняет любой двоичный файл arm с именем kernel.img, так что если вы хотите создать собственное ядро, которое делает то, что вы хотите, его на данном этапе
источник
Я создал эмулятор IBM S / 390 в C #, который теоретически будет работать под Mono / Linux, так как он компилируется в код CIL и не использует никакие неподдерживаемые ресурсы .NET. Это позволит встроенным решениям использовать независимые от платформы управляющие таблицы с пользовательским интерпретатором конечного автомата. Тем не менее, в фоновом режиме все равно будет существенная операционная система Linux.
источник
Полностью автоматизированный пример с минимальным блинкером
Протестировано на хосте Ubuntu 16.04, Raspberry Pi 2. Использование:
Вставьте SD-карту на хост
Сделайте изображение:
Где:
/dev/mmblck0
это устройство SD-картыp1
это первый раздел устройства (/dev/mmblck0p1
)Вставьте SD-карту на PI
Выключить и снова включить
GitHub upstream: https://github.com/cirosantilli/raspberry-pi-bare-metal-blinker/tree/d20f0337189641824b3ad5e4a688aa91e13fd764
start.S
main.c
ldscript
make.sh
источник