В чем я нуждаюсь для разработки для процессора ARM? [закрытый]

21
задан claws 23 April 2013 в 16:25
поделиться

3 ответа

Параметры для сред

  • Установите Linux в системный эмулятор QEMU . Он может эмулировать различные наборы микросхем на базе ARM.
  • Получите эмулятор для определенного набора микросхем ARM, например для игрового наладонника. Gameboy Advance - это весело играть. NoCash GBA и VisualBoy Advance - два отличных эмулятора GBA.

Цепочки инструментов

Вам понадобится цепочка инструментов. Цепочка инструментов - это набор инструментов низкого уровня, таких как ассемблер, компоновщик, компилятор, архиватор и множество других полезных вещей. Более того, вам нужна кросс-инструментальная цепочка, что означает, что инструментальная цепочка работает в одной системе, но создает исполняемые файлы для другой архитектуры. Таким образом вы можете создавать приложения, которые работают на ARM-устройствах, но на вашем компьютере на базе x86. Так быстрее и удобнее.

Если вы используете Windows, DevkitPro - довольно хороший выбор. Для вариантов Unix / Linux / BSD у вас есть бесплатные наборы инструментов CodeSourcery и набор инструментов GCC с сайта gnuarm.com . Есть несколько других, но вам не нужно больше вариантов.

Документация

Получите спецификацию для выбранного процессора ARM на infocenter.arm.com . Справочное руководство по архитектуре ARM (часто сокращенно ARMARM) - это справочная информация, которая вам понадобится независимо от ЦП. Я размещаю старую версию, которая охватывает архитектуру ARM и версию набора команд до ARMv4T, здесь , но текущую и более поздние версии вы найдете на infocenter.arm.com также.Если вы выберете GBA, обратите внимание, что это процессор ARM7TDMI с версией набора команд ARMv4T.

ARMARM содержит советы и примеры для обычного подробного системного кодирования, советы о том, как действовать при определенных проблемах проектирования, а также справочник как по набору инструкций ARM, так и по набору инструкций Thumb и сопроцессорам, таким как блоки MMU и MPU. , DSP и FPU.

Если вы придерживаетесь QEMU, это почти все, что вам нужно, поскольку ядро ​​Linux обрабатывает все. QEMU также имеет эмуляцию пользовательского режима (с заглушкой библиотеки C). Если вы выберете один из эмуляторов GBA, вот хороший справочник по аппаратным и аппаратным регистрам GBA: CowBiteSpec . Также не забудьте посетить http://www.gbadev.org/ .

Nintendo DS, вероятно, тоже вариант, но я пока не знаю ни одного достойного эмулятора для этого КПК. Удачи вам: -)

РЕДАКТИРОВАТЬ: Вот тривиальный пример некоторого кода GBA, который я написал много лет назад: Пример 16-битной заливки цвета GBA 240x160

23
ответ дан 29 November 2019 в 21:12
поделиться

Вы можете купить себе что-нибудь вроде BeagleBoard , чтобы поиграть - они стоят всего около 200 долларов. Вы можете установить на него Ubuntu и набор инструментов ARM.

4
ответ дан 29 November 2019 в 21:12
поделиться

Несколько комментариев, не претендующих на полный ответ на вопрос плаката.

Биглборд классный, 150 долларов, но нужно еще 150 долларов в виде USB-накопителя, чтобы сделать его полезным. Доска для биглборда Embest в целом дешевле из-за отсутствия вещей, которые вам нужно покупать, чтобы пойти с ней. Но теперь есть hawkboard, также плата на основе omap, стоит менее 100 долларов и пока что выглядит очень хорошо. Сейчас мне это нравится больше, чем биглборд, гораздо менее болезненно.

Открытая доска предлагает гораздо больше, чем биглборд для этого ценового диапазона, это то, на что стоит обратить внимание, если / когда у вас есть игрушечный бюджет. и открытая плата, и прилагаемая еще за 100 долларов имеют полный разъем sata, поэтому вы можете поставить на него диск ноутбука и не использовать мучительно медленные флэш-устройства или USB.

У автора нет ресурсов, чтобы купить эти игрушки. Я бы сказал, что если вы продолжите следовать этому и научитесь встраивать ARM, у вас будет воля и вы найдете путь. Вот почему я упоминаю, что у Sparkfun и других есть платы за 30-50 долларов, которые работают «из коробки». Задайте вопрос в stackoverflow перед покупкой, спросив, что лучше. У меня их много, и есть некоторые из них, которые я считаю непригодными для использования или слишком болезненными, чтобы возиться с ними, я бы не хотел, чтобы вы тратили весь свой игрушечный бюджет на то, что не стоит иметь.

У меня есть пример кода интегратора руки qemu, позвольте мне упаковать его и предоставить рабочий пример. У меня есть много другого кода arm и gba, может быть, я его тоже опубликую.

Архитектура ARM зародилась, и в прошлый раз я работал с их людьми / инструментами, используя эмулятор под названием armulator (google / wikipedia it). Так что эмуляция руки, в частности, не редкость.

Написание собственного эмулятора могло бы оказаться забавным проектом или взятие уже существующего и добавление собственных периферийных устройств. qemu и mame слишком громоздки, чтобы играть с ними как есть, вы можете без особых проблем извлечь руку из mame.

7
ответ дан 29 November 2019 в 21:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: