реклама на сайте
подробности

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> EV-iMX287-Micro, С чего начать
Kolya87
сообщение Aug 19 2014, 10:18
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 32
Регистрация: 25-06-14
Пользователь №: 82 062



Я новичок во встраиваемых системах. Имею отладочный комплект EV-iMX287-Micro. На нем по умолчанию установлен Linux. Кто что посоветует, с чего начать. Для начала просто Hello world, помигать светодиодом. Соответственно как, с помощью каких средств настраивать аппаратную часть платы? Приложения предполагаю писать на Qt.
По поводу виртуальной машины. С сайта http://otladka.com.ua/wiki/doku.php образ виртуальной машины скачать не получается, выдает ошибку сети. Но как я понимаю, можно создать свою виртуальную машину, поставить на нее действующую версию Ubuntu или Debian, поставить необходимые средства разработки приложений и отлаживать уже на ней.
Go to the top of the page
 
+Quote Post
samike
сообщение Aug 20 2014, 07:04
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 66
Регистрация: 12-04-06
Из: Москва
Пользователь №: 16 039



Для начала все же нужно скачать образ виртуальной машины с http://otladka.com.ua - это на порядок ускорит процесс познания (у меня, например, все отлично скачивается). Скачать, развернуть, а дальше читать http://otladka.com.ua/wiki/doku.php?id=ev-imx287-micro и параллельно пробовать. В этом описании для сборки ядра, загрузчика и файловой системы используется система сборки LTIB, кажется Qt там входит в состав сборки. Если же нет, то ядро можно собирать LTIB'ом, а файловую систему - системой сборки Buildroot - там Qt точно входит в состав. Можно Qt собрать и отдельно, но это заметно сложнее.
У freescale неплохой форум

Сообщение отредактировал samike - Aug 20 2014, 07:08
Go to the top of the page
 
+Quote Post
Kolya87
сообщение Aug 21 2014, 05:15
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 32
Регистрация: 25-06-14
Пользователь №: 82 062



Сейчас читаю сайт starterkit-org раздел wiki. На данный момент застрял на сборке кросскомпилятора с помощью crosstool-ng. Дошел до ct-ng build. Выдает ошибки:

[INFO ] Performing some trivial sanity checks
[INFO ] Build started 20140821.000748
[INFO ] Building environment variables
[ERROR] Missing: 'x86_64-unknown-linux-gnu-gcj' or 'x86_64-unknown-linux-gnu-gcj' or 'gcj' : either needed!
[ERROR]
[ERROR] >>
[ERROR] >> Build failed in step '(top-level)'
[ERROR] >>
[ERROR] >> Error happened in: CT_Abort[scripts/functions@331]
[ERROR] >> called from: CT_TestAndAbort[scripts/functions@351]
[ERROR] >> called from: main[scripts/crosstool-NG.sh@452]
[ERROR] >>
[ERROR] >> For more info on this error, look at the file: 'build.log'
[ERROR] >> There is a list of known issues, some with workarounds, in:
[ERROR] >> '/usr/local/share/doc/crosstool-ng/ct-ng.1.19.0/B - Known issues.txt'
[ERROR]
[ERROR] (elapsed: 0:00.55)
[00:01] / make: *** [build] Error 1


Пока непонятно что делать.
Вообще возникает вопрос, нужно ли собирать свой кросскомпилятор, или LTIB и BUILDROOT вставляют какой-то стандартный?
Go to the top of the page
 
+Quote Post
samike
сообщение Aug 21 2014, 05:42
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 66
Регистрация: 12-04-06
Из: Москва
Пользователь №: 16 039



Цитата(Kolya87 @ Aug 21 2014, 09:15) *
Вообще возникает вопрос, нужно ли собирать свой кросскомпилятор, или LTIB и BUILDROOT вставляют какой-то стандартный?


В подавляющем большинстве случаев собирать свой кросскомпилятор не нужно, в LTIB и BUILDROOT уже имеются компиляторы.

Вот полная документация по Linux для imx28 от Freescale: i.MX28 Linux Documentation Bundle, вот еще ссылка.
Требуется регистрация на сайте freescale.
Что там есть:
MX28_EVK_Linux_Reference_Manual.pdf
MX28_EVK_Linux_Release_Notes.pdf
MX28_EVK_Linux_User_Guide.pdf
Setting_Up_LTIB_Host_on_Ubuntu_9_04.pdf
uboot_mx28.pdf
imx28-kernel-warnings.txt

Т.е. все, что нужно для разработки, рекомендую.
Go to the top of the page
 
+Quote Post
Kolya87
сообщение Aug 21 2014, 06:44
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 32
Регистрация: 25-06-14
Пользователь №: 82 062



Спасибо за ссылки. Буду изучать.
Go to the top of the page
 
+Quote Post
alx2
сообщение Aug 26 2014, 04:19
Сообщение #6


Местный
***

Группа: Участник
Сообщений: 340
Регистрация: 25-10-05
Из: Пермь, Россия
Пользователь №: 10 091



Цитата(Kolya87 @ Aug 21 2014, 11:15) *
[ERROR] Missing: 'x86_64-unknown-linux-gnu-gcj' or 'x86_64-unknown-linux-gnu-gcj' or 'gcj' : either needed!

Пока непонятно что делать.

Очевидным решением мне кажется установить gcj... Или тут кроется какой-то подвох? sm.gif


--------------------
Всего наилучшего,
Alex Mogilnikov
Go to the top of the page
 
+Quote Post
Kolya87
сообщение Aug 27 2014, 08:51
Сообщение #7


Участник
*

Группа: Участник
Сообщений: 32
Регистрация: 25-06-14
Пользователь №: 82 062



Поставил LTIB, поставляемый в пакете BSP от Freescale, на Debian. Собрал Linux kernel, rootfs. Пробую загрузить в NAND flash через MFGTool. Не получается, выдает ошибку Updater Error 0xffffffea (-22) -
Go to the top of the page
 
+Quote Post
samike
сообщение Aug 27 2014, 11:30
Сообщение #8


Участник
*

Группа: Участник
Сообщений: 66
Регистрация: 12-04-06
Из: Москва
Пользователь №: 16 039



Цитата(Kolya87 @ Aug 27 2014, 12:51) *
Пробую загрузить в NAND flash через MFGTool. Не получается, выдает ошибку Updater Error 0xffffffea (-22) -


А на Вашей плате u-boot есть (или все стерто)?
Можно все записать в NAND из под u-boot.
Go to the top of the page
 
+Quote Post
Kolya87
сообщение Aug 28 2014, 02:44
Сообщение #9


Участник
*

Группа: Участник
Сообщений: 32
Регистрация: 25-06-14
Пользователь №: 82 062



Пока с платы ничего не стирал, т.е. в плате зашита изначально OS, которая еще была при покупке. По поводу зашитого u-boot ответить затрудняюсь. Сейчас буду пробовать др. способы записи образов.

Похоже никакого u-boot там не зашито.
Go to the top of the page
 
+Quote Post
samike
сообщение Aug 28 2014, 05:44
Сообщение #10


Участник
*

Группа: Участник
Сообщений: 66
Регистрация: 12-04-06
Из: Москва
Пользователь №: 16 039



Цитата(Kolya87 @ Aug 28 2014, 06:44) *
Похоже никакого u-boot там не зашито.


U-Boot - это первоначальный загрузчик, он инициализирует плату, загружает ядро и передает ему управление.
U-Boot должен быть.
Если не ошибаюсь, ваша плата имеет возможность загрузки с SD карты.
Попробуйте пока поиграться с SD карточкой. Почитайте wiki, раздел Создание загрузочной SD карты
Go to the top of the page
 
+Quote Post
Kolya87
сообщение Sep 2 2014, 10:27
Сообщение #11


Участник
*

Группа: Участник
Сообщений: 32
Регистрация: 25-06-14
Пользователь №: 82 062



Создал загрузочную SD карту. Записал на нее ядро и rootfs. Загрузка системы происходит успешно.

Пробовал загрузку по tftp. Загружаю u-boot 2013.04 с SD или по usb, и качаю ядро с tftp - сервера (файлы uImage и imx28-evk.dtb) с помощью программы Tftpd32. Затем командой bootm загружаю их. Как только начинает загружаться ядро ( Uncompressing Linux... done, booting the kernel), проц перезагружается.
К tftp-серверу запущенному на linux почему то не конектится. Запускал на готовой виртуальной машине, на которой сказано что tftp-сервер установлен. Пока не разбирался в данном вопросе.

Пробую опять загрузить в Nand flash через MfgTool. Указанную выше ошибку преодолел заменой файлов update.sb update_ivt.sb, собранных ltib (при запуске команды ./ltib --selectype и выборе в меню «mfg firmware profile» ). Процесс застрял на следующем во время загрузки ядра:

Код
1 - Panel A Start processing Singlechip NAND <LIST/>.
1 - Panel A Start <CMD/> type="boot" body="Recovery" file="updater.sb" timeout="60" onError="" text="Booting update firmware.".
1 - Panel A Finished <CMD/> type="boot" body="Recovery" file="updater.sb" timeout="60" onError="" text="Booting update firmware." SUCCESS code=0.
1 - Panel A Start <CMD/> type="boot" body="Recovery" file="updater_ivt.sb" timeout="60" onError="" text="Booting update firmware.".
1 - Panel A Finished <CMD/> type="boot" body="Recovery" file="updater_ivt.sb" timeout="60" onError="" text="Booting update firmware." SUCCESS code=0.
1 - Panel A Start <CMD/> type="find" body="Updater" file="" timeout="180" onError="" text="".
1 - Panel A Finished <CMD/> type="find" body="Updater" file="" timeout="180" onError="" text="" SUCCESS code=0.
1 - Panel A Start <CMD/> type="push" body="mknod class/mtd,mtd0,/dev/mtd0" file="" timeout="10" onError="" text="".
Panel A: Operation stopped by user.



ucl.xml файл пока не менял.

Go to the top of the page
 
+Quote Post
samike
сообщение Sep 2 2014, 11:09
Сообщение #12


Участник
*

Группа: Участник
Сообщений: 66
Регистрация: 12-04-06
Из: Москва
Пользователь №: 16 039



Вот хорошая статья про tftp-сервер на linux: Setting Up a TFTP Server

Если я правильно понял, задача в том, чтобы залить загрузчик в SPI Flash, а ядро и rootfs в NAND и вы пытаетесь сделать это с помощью MfgTool? При этом, ядро записанное на SD-карту, грузится нормально, а то же самое ядро, загружаемое ручками из консоли, перезагружает проц?
Попробуйте залить в SPI Flash с помощью MfgTool загрузчик (в wiki это пункт 4: SPI-Write uboot - запишет в микросхему SPI Flash только загрузчик imx28_ivt_uboot.sb (том /dev/mtd2)). А уже потом, из под загрузчика, с помощью команд tftpboot, nand erase и nand write, запишите в NAND ядро и rootfs.
Go to the top of the page
 
+Quote Post
Kolya87
сообщение Sep 5 2014, 03:14
Сообщение #13


Участник
*

Группа: Участник
Сообщений: 32
Регистрация: 25-06-14
Пользователь №: 82 062



Наконецто удалось зашить образы в NAND. Сделал следующим образом: загрузил ядро Linux с SD, примонтировал flash-ку с необходимыми образами ядра и rootfs, и дальше выполнил последовательность действий, указанных вот по этой ссылке https://community.freescale.com/thread/276571.

Т.к. под linux ни разу не прогал, то сейчас стоит вопрос, как писать программы? Какую IDE использовать. В Windows часто приходилось пользоваться Eclipse и Qt. Под linux тоже они есть, либо же лучше использовать обычный текстовый редактор и потом просто компилить проект.
Go to the top of the page
 
+Quote Post
samike
сообщение Sep 5 2014, 05:27
Сообщение #14


Участник
*

Группа: Участник
Сообщений: 66
Регистрация: 12-04-06
Из: Москва
Пользователь №: 16 039



Я использую Geany - простое, но очень функциональное мини-IDE.
Но я не применяю в своих приложениях графику. Вы же вроде планировали использовать Qt, тогда Qt Creator и т.п....

Путь примерно такой:
- собираете Qt под свою железку (информации в сети - море, рекомендую тот же community.freescale.com),
- заливаете собранные библиотеки на железку, запускаете демки
- настраиваете Qt Creator для сборки приложений под железку (это не делал, опыта нет).

На мой взгляд, Qt проще всего собрать, используя Buildroot, собирал так qt 4.8.5, но в последних релизах Buildroot есть Qt 5.x.x (погуглите Buildroot + Qt5).

Go to the top of the page
 
+Quote Post
Kolya87
сообщение Sep 9 2014, 10:14
Сообщение #15


Участник
*

Группа: Участник
Сообщений: 32
Регистрация: 25-06-14
Пользователь №: 82 062



Возникла проблема. Во время сборки rootfs с помощью LTIB указываю toolchain gcc-4.4.4-.... Но после записи образа на плату и при попытки компиляции какого нибудь исходного файла выдает ошибку

gcc: not found

Пробовал задать во время сборки rootfs др. toolchain, от freescale (arm-fsl-linux-gnueabi-gcc). Но его тоже почему то нету в rootfs.
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th June 2025 - 07:43
Рейтинг@Mail.ru


Страница сгенерированна за 0.01473 секунд с 7
ELECTRONIX ©2004-2016