**Отладочная плата EV-AM1707** \\
Плата на процессоре AM1707 (ARM9) или OMAP-L137 (ARM9+C674x)
Обновлено 24 мая 2012
----
* Принципиальная схема {{:evam1707.pdf|}} \\
* Утилита для программирования NAND Flash и SPI Flash (Windows) {{:flasher1707.zip|}} Обновлено 24/05/2012 - \\
* Конфигурационный файл для AISGen{{::conf_300_nand_noubl.zip|}} \\
* Собранное ядро и rootfs {{:ev-am1707-burn_from_usb.tar.bz2|}}Обновлено 24/05/2012\\
* u-boot (NAND Flash) {{:uboot_nand.zip|}}Обновлено 24/05/2012\\
* [[https://docs.google.com/open?id=0B_FS6J7Oi9HaRzlVcE13d2ZfUGc|Виртуальная машина VirtualBox c установленным buildroot (Обновлено 14.09.2012)]] \\
Разъемы и компоненты на плате \\
{{:front.png?300|}} {{:rear.png?300|}} {{:top.png?300|}} {{:bottom.png?300|}}\\
----
{{:connector.png?300|}} {{:usbuart.png?300|}}\\
----
Пример подключение FT232RL или MAX3232 для консоли или для программирования NAND Flash/SPI Flash памяти {{:uart.pdf|}} \\
Можно использовать [[http://otladka.com.ua/index.php?page=shop.product_details&category_id=27&flypage=vmj_naru.tpl&product_id=198&option=com_virtuemart&Itemid=71&lang=ru|готовый данный адаптер.]]
Разъем расширения X5, назначение контактов. \\
^ Номер контакта ^ Назначение сигнала ^ Номер контакта ^ Назначение сигнала ^
| 1 | UART2_RXD (Вход) | 2 | UART2_TXD (Выход) |
| 3 | UART1_RXD (Вход) | 4 | UART1_TXD (Выход) |
| 5 | I2C0_SDA/UART0_RXD | 6 | I2C0_SCL/UART0_TXD |
| 7 | GPIO4_8 | 8 | GPIO2_15 |
| 9 | GPIO2_0 | 10 | GPIO2_4 |
| 11 | GND | 12 | 3V3 |
В качестве консоли используется UART2. Сигналы TXD/RXD умеют уровни 3.3В. Для подключения к компьютеру требуется использовать преобразователь на микросхеме MAX3232 или переходник UART-USB. Проверялась работа с переходниками на микросхеме FT232 - результат положительный.
----
**Buildroot для сборки ядра, u-boot, rootfs** \\
На компьютере с ОС Линукс или в виртуальной машине с ОС Линукс (рекомендуется Ubuntu 10.04LTS) \\
Создайте папку, например ev-am1707 \\
Скопируйте туда файлы {{::buildroot-2012.02.tar.bz2|buildroot-2012.02.tar.bz2}} и {{::buildroot-2012.02-EV-AM1707.patch|buildroot-2012.02-ev-am1707.patch}} \\
Распакуйте архив buildroot-2012.02.tar.bz2 \\
tar xjvf buildroot-2012.02.tar.bz2
Наложите патч buildroot-2012.02-EV-AM1707.patch \\
patch -p0 -i buildroot-2012.02-EV-AM1707.patch
Зайдите в директорию buildroot-2012.02 и выполните \\
make ev-am1707_defconfig
Все необходимые пакеты будут загружены и установлены (в зависимости от скорости подключения к интернету, данная операция может занять значительное время) \\
Если подключение медленное, создайте в директории buildroot-2012.02 папку dl и скопируйте туда архив. Разархивируйте архив с пакетами. \\
Исходные файлы u-boot находятся в /EV-AM1707/buildroot-2012.02/output/build/uboot-v2009.11_DAVINCIPSP_03.20.00.14 \\
Исходные файлы ядра находятся в /EV-AM1707/buildroot-2012.02/output/build/linux-DAVINCIPSP_03.20.00.14# \\
Для старта сборки в директории buildroot-2012.02 запустите \\
make
После окончания сборки в директории /EV-AM1707/buildroot-2012.02/output/images/ будут находится файлы
uImage - собранное ядро \\
u-boot.bin - собранный u-boot \\
rootfs.tar - собранная файловая система \\
Файл u-boot в формате elf находится в /EV-AM1707/buildroot-2012.02/output/build/uboot-v2009.11_DAVINCIPSP_03.20.00.14#/ \\
Его надо переименовать в u-boot.out, в дальнейшем он будет использоваться в AISGen с AISGen. \\
----
На компьютере с ОС Windows устанавливаем утилиту {{::aisgend800k003.zip|aisgen.zip}}. \\
Запускаем AISgenD800K003. Устанавливаем Boot mode: NAND 8-bit. Или Загрузите конфигурационный файл с настройками (AISgenD800K003->File->Load Configuration From...) \\
Укажите файл u-boot.out в строке Application. \\
Укажите выходной файл в строке AIS File (например uboot_nand.bin) \\
Нажмите кнопку Generate AIS. \\
{{::aisgen_nand.png?300|}}
----
**Запись u-boot в NAND Flash** \\
Устанавливаем переключатели в положение загрузка по UART2 (0101) \\
Если запустить терминальную программу (115200, 8) то при подаче питания или нажатии кнопки Reset в терминале будет приглашение \\
BOOTME
Закрываем терминальную программу. \\
Скачиваем утилиту для программирования flasher1707.zip, распаковываем архив. Туда же копируем созданный AISgen файл uboot_nand.bin.В архиве есть подготовленные bat-файлы для стирания/программирования NAND и SPI Flash. Сейчас будет рассматриваться случай записи u-boot в NAND Flash. \\
Запускаем erase_nand.bat для стирания всей NAND Flash памяти. \\
Запускаем nand_noubl.bat для записи созданного файла uboot_nand.bin. \\
Строка запуска программирования NAND Flash (только обернутый AIS-ом U-boot). Исправьте номер COM порта на тот, что используется у вас!
sfh_OMAP-L137.exe -targetType AM1707 -flashType NAND -p COM16 -flash_noubl uboot_nand.bin
\\
{{:nand_noubl.png?300|}}
После записи выставляем переключатели на загрузку с NAND (1110). \\
Запись ядра и файловой системы в NAND Flash (Windows/Linux)
Форматируем флешку и распаковываем на нее архив EV-AM1707-burn_from_usb.tar.bz2 \\
В Линукс \\
tar xjvf EV-AM1707-burn_from_usb.tar.bz2 -C /кудасмонтированафлешка
В Windows - средствами проводника \\
В файле \EV-AM1707\uboot.env содержатся настройки переменных окружения \\
Вставляем флешку в нижний порт USB (USB 2.0 High Speed) \\
Запускаем терминальную программу \\
Подключаем питание к плате. u-boot автоматически считает и запишет в NAND Flash ядро (uImage) и файловую систему (rootfs.tar.gz) \\
{{:uboot_usb.png?300|}} \\
Если по каким-то причинам автозапуск не произошел, выполняем следующие команды \\
setenv bootargs 'console=ttyS2,115200 rw ip=off root=/dev/ram0 mem=64M'
setenv autoboot "usb start; fatload usb 0:1 0xc0700000 /EV-AM1707/boot/uImage; bootm 0xc0700000"
setenv burn "mtdparts default; nand erase uboot_env; nand erase kernel; nand erase ubi; run autoboot"
run burn
Осталось ввести логин-пароль (root/root) \\
EV-AM1707 login: root
Password: root
Теперь можно извлечь флешку и перегрузить плату \\
root/root #: reboot
----
Дополнительно. Переменные окружения - загрузка ядра по tftp, файловая система на nfs
setenv ipaddr 192.168.0.107 - Назначьте плате сетевой адрес
setenv serverip 192.168.0.103 - Укажите адрес сервера, на котором запущен TFTp сервис
setenv ethaddr 11:22:33:44:55:66 - Назначьте плате MAC адрес
setenv bootcmd "tftp 0xc0700000 uImage1707-nash; bootm 0xc0700000"
setenv bootargs "mem=64M rw console=ttyS2,115200 ip=192.168.0.107:192.168.0.103:255.255.255.0:am1707 root=/dev/nfs nfsroot=192.168.0.103:/tftpboot/rootfs"
saveenv
Подготовка файла u-boot в AISGen для программирования в SPI Flash. \\
В качестве исходного (u-boot.out) использовать elf файл!
{{::aisgen.png?200|}}
Строка запуска стирания SPI Flash.
Исправьте номер COM порта на тот, что используется у вас!
sfh_OMAP-L137.exe -targetType AM1707 -flashType SPI_MEM -p COM16 -erase
Строка запуска программирования SPI Flash (UBL+U-boot). Исправьте номер COM порта на тот, что используется у вас!
sfh_OMAP-L137.exe -targetType AM1707 -p COM16 -flash ubl_AM1707_SPI_MEM.bin u-boot.bin
\\
{{:spi_ubl.png?300|}} \\
Строка запуска программирования SPI Flash (только обернутый AIS-ом U-boot). Исправьте номер COM порта на тот, что используется у вас!
sfh_OMAP-L137.exe -targetType AM1707 -flashType SPI_MEM -p COM16 -flash_noubl u-boot.bin
\\
{{:spi_noubl.png?300|}} \\
Строка запуска программирования NAND Flash (UBL+U-boot). Исправьте номер COM порта на тот, что используется у вас!
sfh_OMAP-L137.exe -targetType AM1707 -flashType SPI_MEM -p COM16 -flash_noubl u-boot.binsfh_OMAP-L137.exe -v -p COM16 -targetType AM1707 -flash -flashType NAND ubl_AM1707_NAND.bin u-boot.bin
\\
{{:nand_ubl.png?300|}} \\