mantech 53 31 марта, 2018 Опубликовано 31 марта, 2018 · Жалоба Видимо, производители планшетов на A13 взяли образ из одного источника (что и не удивляет), а его сборщик почему-то решил "буковки" выключить. Я просто к тому, что может и тс поэтому их не видит тоже :rolleyes: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Jury093 2 31 марта, 2018 Опубликовано 31 марта, 2018 · Жалоба Кстати, интересное дело как-то было, попалось 2 планшета на А13 и 1 на А10, понятно, что андроид на них, но бут-то все равно похожий на линуксовый, так вот, у А13 буковок не было ни на одном уарте, у а10 все по правилам и загрузка бут0 и бут1... Интерерсно, почему так? как справедливо сказали выше, черпают с одной бочки и тюнингуют под свои вкусы или корпоративные стандарты. просто заглушили выхлоп либо выключив порт, или переопределили под тот, на каком отлаживались и не факт, что это uart0/1 такая фишка полезна от всяких кулхацкеров, которые потом ломают прошивки у меня валяется подаренный под разборку сетевой медиаплейер (вроде на броадкоме), припаял консоль и буковки вижу, но остановить не могу - запрещено опцией в юбуте. а т.к. проц защищен цифровой подписью, то ломать бессмысленно По поводу сериального адаптера.. Ну если ТС не проделал все это - ему минус, ибо проверить TX с RX - дело само собой разумеющееся :laughing: кому очевидно, кому не очень. у меня нет полной информации о том, что у ТС, вот и приходится тыкать в критичные места.. Не буду спорить, но дело такое было, поэтому и написал... К тому же, при отладке незнакомой платформы и непонятному поведению проги вообще, всегда отключаю оптимизацию, после того, как все заработало, можно и включать, ибо уже понятно, что если снова не заработает, то сам накосячил... ага, я тоже пару раз наступал Я просто к тому, что может и тс поэтому их не видит тоже :rolleyes: врядли - это отладочные прошивки, а не коммерческие Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
repstosw 18 1 апреля, 2018 Опубликовано 1 апреля, 2018 (изменено) · Жалоба Спасибо всем кто хотел помочь и помог! :1111493779: Удалось запустить плату с A13 ! :rolleyes: Было 2 ошибки. Ошибка номер 1. Начал с проверки COM-порта. Замкнул вывод 2 с выводом 3 на системном блоке компа, убедился как тут писали, что связь есть: получаю то же, что и отправляю. Значит порт исправен и WinXP дает доступ к нему. Дальше: подсоединил адаптер, запитал его от 3,3V от платы A13-Olinuxino. Выводы TX и RX адаптера соединил вместе. Вот тут и зарылась собака - в ответ летит не то, что отправляю! Запитал адаптер отдельно от 5V, протестил: обмен исправен. Понизил питание до 3V - снова пошла лажа на скорости 115200 бит/c!. Понизил скорость до 2400 бит/c - обмен при питании 3V нормальный. Сделал вывод, что тот MAX3232, что стоит в адаптере не позволяет при питании 3,3V давать обмен на 115200 бит/c. Порылся в закромах, нашёл в резерве одну MAX3232, выпаял ту что была на адаптере и впаял новую. Проверил снова обмен при 5V и при 3.3V на скорости 115200 бит/c - работает исправно! Делаю вывод о бракованной партии микросхем MAX3232, которая попала мне в адаптере. Фотка фуфела MAX3232, не работающего на 115200 бит/с при 3,3V: Фотка нормальной микросхемы: Ошибка номер 2. Программа дискового редактора, которую я использовал: HxD Hex-редактор от Maёl Horz, неверно делала запись на 16-й сектор карты! Позже, скачав win32-disk-imager-0-7-en-win.zip (эта не свежая версия, но идёт под WinXP, что для меня важно!) и записав образ sunxi-spl.bin из папки a13_olinuxino_hwpack, я получил наконец-то запуск программы на A13: Действительно, для отладки используется порт UART1. Образ sunxi-spl.bin для A13 прилагаю: sunxi_spl.zip ну и далее попробовал запустить Debian, тот самый, что якобы на карту с 4 ГБ влезает (на самом деле нет, олимексовцы по-мойму забыли, что 4 ГБ это не 4*1024^3 байт, а 4*1000^3 :) ) всё пошло: Качал вот этот архив: A13_debian_34_90_mainline_u-boot_release_11_3.7z, с торрента - файл прикладываю: A13_debian_34_90_mainline_u_boot_release_11_3.zip Естественно, перед заливкой образа, архив распаковать. Образ писал программой, что описана выше: win32-disk-imager-0-7-en-win.zip Потом всё-же решил посмотреть, где же глючит HxD и почему она пишет 16-й сектор не туда, куда надо и не видит там ничего после записи win32-disk-imager-0-7-en-win.zip. Для этого прочёл образ с карты (1% достаточно) и увидел, что сигнатура eGON.BT0 была на 145-м секторе! Делайте выводы, господа! Вот так софтина может подставить программиста! --- Шаг 3. После как разобрался в ошибках, попробовал закатать образ своей программы с мигающим светодиодом. Так как HxD - оказался на поверку говном, а win32-disk-imager не может писать образы не с начала, пришлось 0x2000 байт с самого начала SD-карты скопировать в отдельный файл. Затем бинарно клеить эти 0x2000 байт со своей программой (у которой уже есть хедер и посчитана контрольная сумма). Тоесть алгоритм такой: 1) компилируем и линкуем свою программу (при этом моделируя набросок заголовка: прыжок на main(), заполняя оставшееся место нулями) 2) вычисляем контрольную сумму в получившемся бинарнике (я использую checksumm.exe собственноручно скомпилированную из сорцов Гитхаба) 3) склеиваем 2 файла: первые 0x2000 байт со своим бинарником (я использую свой конкатенатор concat.exe) 4) полученный файл *.img катаем на SD-карту win32-disk-imager-ом. 5) вставляем карту в A13-olinuxino, включаем питание и радуемся результату! :) Загрузка мгновенна, никаких кнопок Power и Home/U-boot жать не надо! Прикрепляю рабочий проект целиком - оптимизация по скорости, максимальная. Проект перелопатил из олимексовского говнокода. (+ утилита для контрольной суммы): A13_led.zip Использую такие тулчейны: gcc-arm-none-eabi-6-2017-q2-update-win32.exe gcc-arm-none-eabi-4_8-2014q3-20140805-win32.exe Без разницы какой, после инсталляции важно прописать переменные окружения в операционной системе , иначе не будет работать как надо. Сорцы пишу в Блокноте (с синтаксической подсветкой типа "Bred"), для сборки батники или make-файлы. По-мойму это лучше, чем искать проприетарное тяжеловесное дерьмо, за которое мудаки требуют деньги (в контексте последних ARM-ов). И к тому же которое под WinXP идёт либо криво или вообще не пускается. Ну и вспомогательные вещи: утилита склейки concat.exe и файл первых 0x2000 байт, которые должны быть до программы. Утилита склеивает 2 файла : "0x2000.bin" и "spl.bin" в один "image.img" - его катать на карту win32-disk-imager-ом! concat_util.zip Если достать нормальный дисковый редактор, то можно сразу spl.bin катать на 16-й сектор. Без всяких склеек с 0x2000.bin. Но пока такой программы не нашёл, все клянчат деньги и не дают работать на запись... --- В целом я рад - началу освоения Alwinner положено!!! :yeah: Надеюсь, что то что написал, поможет начинающим разобраться и не спотыкаться на те грабли, что мне пришлось испытать. :smile3046: to mantech: регистры, порты ввода-вывода, переменные, менющиеся в обработчиках прерываний - должны быть объявлены как volatile, иначе компилятор оставляет за собой право выкинуть часть кода или закешировать эти переменные в регистры (особенно с максимальной оптимизацией, где не учитывается специфика работы с аппаратурой: допускается многократное присваивание в один и тот же регистр) :) Изменено 1 апреля, 2018 пользователем repstosw Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Jury093 2 1 апреля, 2018 Опубликовано 1 апреля, 2018 · Жалоба Спасибо всем кто хотел помочь и помог! :1111493779: Удалось запустить плату с A13 ! :rolleyes: спасибо, что поделились результатами, кто-нить следующий придет, прочитает и обойдет подобные грабли.. по max3232 - у вас либо перемаркированная max232 или фейк от китайцев ближайший пост: https://www.eevblog.com/forum/reviews/fake-...tional-details/ (на самом деле нет, олимексовцы по-мойму забыли, что 4 ГБ это не 4*1024^3 байт, а 4*1000^3 sm.gif ) там помимо олимексовцев, д.б. разозленные клиенты, которые заплатили деньги за плату, а "образ на карточку не лезет" напишите им фидбек - "какого хрена 'ссылка' не лезет на 4ГБ", если это их косяк, то исправят Если достать нормальный дисковый редактор, то можно сразу spl.bin катать на 16-й сектор. Без всяких склеек с 0x2000.bin. поищите winhex или какой-нить discedit, у того же олимекса были ссылки на дисковые редакторы формально, можно загрузиться с uSD в дефолтный дебьян и пилить вторую карточку через usb ридер прямо на плате, но это уж как кому удобнее.. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Obam 38 1 апреля, 2018 Опубликовано 1 апреля, 2018 · Жалоба В маркировке MAX-а смущает "+": вот не помню, это способность большого ESD (1.5кВ)? А если перемаркированная 232, то можно было бы увеличить ёмкости конденсаторов накопительных. В прочем, на фиг (; С успехом вас (: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 1 апреля, 2018 Опубликовано 1 апреля, 2018 · Жалоба там помимо олимексовцев, д.б. разозленные клиенты, которые заплатили деньги за плату, а "образ на карточку не лезет" напишите им фидбек - "какого хрена 'ссылка' не лезет на 4ГБ", если это их косяк, то исправят Просто разные 4GB карты несколько отличаются по размеру. По-хорошему, надо было файловую систему урезать до минимума и расширять при первом включении, как делает Armbian. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 53 1 апреля, 2018 Опубликовано 1 апреля, 2018 (изменено) · Жалоба поищите winhex или какой-нить discedit, у того же олимекса были ссылки на дисковые редакторы формально, можно загрузиться с uSD в дефолтный дебьян и пилить вторую карточку через usb ридер прямо на плате, но это уж как кому удобнее.. Я предлагал ТСу программу cfimager от фриски. Пишет с на сд карту свой бинарь с первого сектора и ничего изобретать не нужно... Причем, что удобно, в ней нет гуя, работает с командной строки без установки драйверов или еще чего-либо. В маркировке MAX-а смущает "+": вот не помню, это способность большого ESD (1.5кВ)? А если перемаркированная 232, то можно было бы увеличить ёмкости конденсаторов накопительных. В прочем, на фиг (; С успехом вас (: Неа, тут это не поможет, проверял. Сорцы пишу в Блокноте (с синтаксической подсветкой типа "Bred"), для сборки батники или make-файлы. По-мойму это лучше, чем искать проприетарное тяжеловесное дерьмо, за которое мудаки требуют деньги (в контексте последних ARM-ов). И к тому же которое под WinXP идёт либо криво или вообще не пускается. Т.е. ИДЕ не используете. А если ошибка в программе, как она отображается? В ИДЕ можно сразу на строчку с ошибкой кликнуть, ИМХО удобнее будет... Изменено 1 апреля, 2018 пользователем mantech Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 1 апреля, 2018 Опубликовано 1 апреля, 2018 · Жалоба Т.е. ИДЕ не используете. А если ошибка в программе, как она отображается? В ИДЕ можно сразу на строчку с ошибкой кликнуть, ИМХО удобнее будет... В консоли, естественно. Перейти на нужную строку в нужном файле можно и без ИДЕ - обычно все и так перед глазами. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 53 1 апреля, 2018 Опубликовано 1 апреля, 2018 · Жалоба В консоли, естественно. Перейти на нужную строку в нужном файле можно и без ИДЕ - обычно все и так перед глазами. Не говорю, что нельзя, просто в иде удобнее, особенно, когда файлов больше сотни, а у ТСа, если он реально будет камень осваивать, будет и больше... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Jury093 2 1 апреля, 2018 Опубликовано 1 апреля, 2018 · Жалоба Просто разные 4GB карты несколько отличаются по размеру. карточки разного размера могут быть в двух случаях - производитель-параноик откусил часть флеша под сейв-блоки и второй - производитель-халтурщик поставил в карточку флеш с большим кол-вом бед-блоков. других вариантов как-то в голову не приходит.. для ленивых олимекс продает готовые карточки с нарезанной осью: https://www.olimex.com/Products/OLinuXino/A...source-hardware По-хорошему, надо было файловую систему урезать до минимума не каждый сможет из комплекта бинарников сплодить рабочую систему, там обычно масса тонкостей и олимекс правильно делает, что выкладывает образы (не он первый такое практикует и это правильно), тем самым отсекает отрицательный фидбек по продукту.. опять же всегда можно взять 8ГБ карточку и на нее накатить предоставленный образ а если "по-хорошему", то рутовая генерится стандартными средствами, хошь debian armel/hf, хошь ubuntu, чистые дистрибутивы 60-100МБ, впрочем это уже не для ветки "Микроконтроллеры (MCs)".. ок, пожелаю ТС успехов в пилёжке.. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 1 апреля, 2018 Опубликовано 1 апреля, 2018 · Жалоба карточки разного размера могут быть в двух случаях - производитель-параноик откусил часть флеша под сейв-блоки и второй - производитель-халтурщик поставил в карточку флеш с большим кол-вом бед-блоков. других вариантов как-то в голову не приходит.. Да мало ли причин. В любом случае нельзя считать, что на карту с надписью "4GB" уместится 4 * 10^9 байт. не каждый сможет из комплекта бинарников сплодить рабочую систему, там обычно масса тонкостей и олимекс правильно делает, что выкладывает образы (не он первый такое практикует и это правильно), тем самым отсекает отрицательный фидбек по продукту.. опять же всегда можно взять 8ГБ карточку и на нее накатить предоставленный образ Под "урезать" имелось в виду убрать свободное место, а не лить тупо содержимое карты через dd. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
repstosw 18 1 апреля, 2018 Опубликовано 1 апреля, 2018 (изменено) · Жалоба Всем спасибо за помощь! :a14: Я предлагал ТСу программу cfimager от фриски. Пишет с на сд карту свой бинарь с первого сектора и ничего изобретать не нужно... Причем, что удобно, в ней нет гуя, работает с командной строки без установки драйверов или еще чего-либо. Я вначале подумал, что она заточена только под I.MX. Теперь вижу, что она универсальна! Нашёл её здесь: ftp://125.7.130.110/imx/5/Mfgtools-Rel-1....Utils/cfimager/ Теперь действительно стало проще лить образ без всяких дополнительных файлов и склеиваний - в батник её прописал после билда и чек-суммы, получилась сборка в 1 клик: cfimager.exe -raw -offset 0x2000 -f spl.bin -d F где F - буква диска SD-карты Т.е. ИДЕ не используете. А если ошибка в программе, как она отображается? В ИДЕ можно сразу на строчку с ошибкой кликнуть, ИМХО удобнее будет... Когда писал под STM32, то открывал Keil исключительно для сборки проекта. Код писал в блокноте. В GCC ошибки выдаются в консоли: номер строки + тип ошибки = достаточно чтобы найти и исправить, не забыть в конце батника pause добавить, а то закроется. Или можно из под MSYS работать (или как там его - желтого цвета в винде mingw32 ...) Если сорцов много, то мейк-файл. Да мало ли причин. В любом случае нельзя считать, что на карту с надписью "4GB" уместится 4 * 10^9 байт. Под "урезать" имелось в виду убрать свободное место, а не лить тупо содержимое карты через dd. Я ради этого купил карту 16 ГБ UHS-I , пригодится в хозяйстве. Хотя и на старой карте 2 ГБ без класса скорости работают мои программы --- 2 вопроса: 1) Какими командами с помощью U-Boot загрузить по UART1 программу и дать ей управление? И по какому адресу должен быть слинкован код для A13 ? С AT91RM9200 было так: был DFU Downloader, 2 команды: Load и Go 2) spl-sunxi.bin - инитит всё железо(тактовую частоту, SDRAM, MMU) или нет? Или это уже U-boot делает? Просто если spl-sunxi.bin всё инитит, что с ним проще, особенно, если он может что-то загрузить Изменено 1 апреля, 2018 пользователем repstosw Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 1 апреля, 2018 Опубликовано 1 апреля, 2018 · Жалоба Какими командами с помощью U-Boot загрузить по UART1 программу и дать ей управление? И по какому адресу должен быть слинкован код для A13 ? Например, loady и go Линковать с любого адреса SDRAM, не занятого самим u-boot. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 1 апреля, 2018 Опубликовано 1 апреля, 2018 · Жалоба 2) spl-sunxi.bin - инитит всё железо(тактовую частоту, SDRAM, MMU) или нет? Или это уже U-boot делает? Да, SPL проводит минимальную инициализацию. Насчет MMU не помню, скорее всего, кэш данных и MMU остаются отключены. Для полной автоматизации загрузки рекомендую посмотреть USBBoot Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 53 23 июля, 2018 Опубликовано 23 июля, 2018 · Жалоба Качал вот этот архив: A13_debian_34_90_mainline_u-boot_release_11_3.7z, с торрента - файл прикладываю: Прикрепленный файл A13_debian_34_90_mainline_u_boot_release_11_3.zip ( 25.23 килобайт ) Кол-во скачиваний: 10 Если не сложно, можете сюда выложить первый мегабайт этого файла, с их торрентов не скачивается, а у них (олимекса) на форуме даже не скачать файлы для их плат, дурдом какой-то, все ссылаются на торренты, на которых нет раздачи... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться