den1s 0 1 апреля, 2016 Опубликовано 1 апреля, 2016 · Жалоба Вменяемые? Мне тут на днях отладку на Nuvoton предлагали, который 300МГц и 64МБ внутри и LQFP и на плате куча разъёмов и дип-переключателей - судя по всему удобная плата. И всего 10$ за отладку. Нувотон трудно по цене перебить и камушки у них интересные встречаются часто. Но работать с ними в России тяжелова-то. Требуются большие объемы заявлять - по мелочи они не размениваются, документация под NDA. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 241 2 апреля, 2016 Опубликовано 2 апреля, 2016 · Жалоба Документация вроде нормально к ним находится в инете. Глубоко правда не разбирался, но NUC970 Family Programming Guide (типа юзермануал) найти в инете можно. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
den1s 0 2 апреля, 2016 Опубликовано 2 апреля, 2016 · Жалоба Документация вроде нормально к ним находится в инете. Глубоко правда не разбирался, но NUC970 Family Programming Guide (типа юзермануал) найти в инете можно. Возможно, такая ситуация не со всеми семействами. Но, например, для NUC976 даташит распространяется под NDA. Ну и некоторые документы, возможно, можно найти благодаря "добрым людям", которые их выкладывают после получения. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 241 2 апреля, 2016 Опубликовано 2 апреля, 2016 · Жалоба Возможно, такая ситуация не со всеми семействами. Но, например, для NUC976 даташит распространяется под NDA. Ну и некоторые документы, возможно, можно найти благодаря "добрым людям", которые их выкладывают после получения. Вы читаете невнимательно. Я же пишу, что NUC970 Family Programming Guide находится за минуту. Это юзермануал с описанием периферии на всё семейство NUC97x. Описание периферии правда (на поверхностный взгляд) не фонтан - у всяких NXP, STM и т.п. более объёмное описание. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
maxntf 0 4 апреля, 2016 Опубликовано 4 апреля, 2016 (изменено) · Жалоба Продолжаем разбираться. Получил железо, просмотрел несколько уроков, помигал светодиодами, передал в UART. Все вроде не особо сложно, так как сотни примеров есть. Начал разбираться с чего же все начинается. Тут уже инфы меньше и полез смотреть в мануал. Просьба поправить меня если я что то не так понял: - Все начинается с адреса 0000 0000 (собственно это регистр syscfg_memrmp), который принимает значения состояния штырьков boot; - У него только младшие 2 байта, которые указывают с какого места продолжить загрузку; - Есть 3 варианта flash, SRAM и System memory. Во Flash наша основная программа, в System memory заводской бутлоадер, а в SRAM может быть любая временная программа (возможно даже свой бутлоадер, пока еще толком не понял). - Из Flash мы запускаемся когда мы выполняем основной алгоритм работы. - Из System memory если хотим обновить прошивку (не совсем понятно зачем это нужно, на сколько я понял у него нет шифрования данных, то есть прошивка должна иметься открытая). Ну возможно для каких то целей отладочных и пригодится. - Из SRAM мы не можем загрузиться с первого раза, так как в нем будет бяка после подачи питания. Нужно первый раз загрузится нормально, записать в SRAM код программы которую нужно выполнить из SRAM, программно установить syscfg_memrmp для загрузки из SRAM и выполнить программный reset. Изменено 4 апреля, 2016 пользователем maxntf Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RadiatoR 2 4 апреля, 2016 Опубликовано 4 апреля, 2016 · Жалоба Адрес 0x00 не принимает никакого значения boot. Туда записывается указатель стека. Зачем вы лезете в дебри, которые вам не нужны? Отработали переферию - делайте логику. а вот уже на 2 слове идет адрес старта кода (и скорее всего это не main, а код инициализации тактирования. Создается что в кокосе, что в кейле) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
maxntf 0 4 апреля, 2016 Опубликовано 4 апреля, 2016 · Жалоба Адрес 0x00 не принимает никакого значения boot. Туда записывается указатель стека. Точно, спасибо. Не правильно перевел мануал, регистр SYSCFG как и положено находится в структуре регистров. а вот уже на 2 слове идет адрес старта кода (и скорее всего это не main, а код инициализации тактирования. Создается что в кокосе, что в кейле) Этот адрес устанавливается по состоянию регистра SYSCFG (состояние ножки boot)? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
esaulenka 7 4 апреля, 2016 Опубликовано 4 апреля, 2016 · Жалоба Нет. Значение SYSCFG определяет, на какую область памяти будет отображаться адрес 0. Т.е., выставляем в одно значение - и содержимое памяти по адресам 0x00000000 и 0x08000000 будет одинаковое (и так же одинаковым будут следующие N килобайт, цифирку за ненадобностью не помню). Выставляем другое значение - будут одинаковыми 0x00000000 и 0x20000000 и т.д. Но вот правда - бросайте Вы эти глупости. Мне кажется, этим ремапом никто толком и не пользуется. Разве что штатный загрузчик, да отладчики в режиме "загружать код в RAM" (этакий быстрый режим отладки для маленьких программ, чтобы флеш каждый раз не стирать). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
x893 60 4 апреля, 2016 Опубликовано 4 апреля, 2016 · Жалоба Ремапом приходится пользоваться в STM32F0 серии так как нет VTOR Все загрузчики используют Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AVI-crak 0 5 апреля, 2016 Опубликовано 5 апреля, 2016 · Жалоба Но вот правда - бросайте Вы эти глупости. Мне кажется, этим ремапом никто толком и не пользуется. Ремамп - единственный корректный способ залить код в внешнюю sdram из внешней 25qxx, и запустить ну очень жирную прошивку в нативном режиме - с поддержкой отладки. А на новых чипах от st этот режим уже часть периферии - исполняется самостоятельно, без ручных бутов. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 241 5 апреля, 2016 Опубликовано 5 апреля, 2016 · Жалоба Нет. Значение SYSCFG определяет, на какую область памяти будет отображаться адрес 0. Т.е., выставляем в одно значение - и содержимое памяти по адресам 0x00000000 и 0x08000000 будет одинаковое (и так же одинаковым будут следующие N килобайт, цифирку за ненадобностью не помню). Выставляем другое значение - будут одинаковыми 0x00000000 и 0x20000000 и т.д. Интересно - и как это тут все определили о каком именно МК автор ведёт речь? Что он имеет в виду под "Получил железо ..."? И уже прямо кучу советов понадавали. И тоже непонятно - по какому именно МК советы. Прям экстрасенсы одни вокруг...... :laughing: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
maxntf 0 5 апреля, 2016 Опубликовано 5 апреля, 2016 · Жалоба STM32F407VG. Как в программе выполнить reset? В PIC можно было функцией RESET(); Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
scifi 1 5 апреля, 2016 Опубликовано 5 апреля, 2016 · Жалоба STM32F407VG. Как в программе выполнить reset? В PIC можно было функцией RESET(); NVIC_SystemReset(); Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 241 5 апреля, 2016 Опубликовано 5 апреля, 2016 · Жалоба STM32F407VG. Как в программе выполнить reset? В PIC можно было функцией RESET(); Универсально (для любого МК) - через встроенный WDT. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
scifi 1 5 апреля, 2016 Опубликовано 5 апреля, 2016 · Жалоба Универсально (для любого МК) - через встроенный WDT. А ещё можно соединить GPIO и RESET и дёргать этот сигнал :yeah: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться