Поиск
Показаны результаты для тегов 'cortex-m4f'.
-
Компания Geehy представила серию микроконтроллеров на ядре Arm-Cortex-M4F по 55 нм техпроцессу – APM32F411. Подробнее
-
- микроконтроллеры
- geehy
-
(и ещё 3 )
C тегом:
-
Есть проблема с исполнением кода на сделанном на отечественном предприятии процессоре ARM Corteх-M4F. Кристалл флэш-памяти не имеет, прошивка загружается извне во встроенное ОЗУ объемом 128 кБ, которое используется как память программ. Есть ОЗУ объемом 68 кБ, которое используется как память данных. Запустили успешно, но на объемах прошивки, превышающих 32 кБ, процессор зависал. Путем последовательных упрощений нашли причину: процессор виснет при вызове функций, расположенных в разных 32 кБ сегментах (см.рисунок). Т.е. если программа вызывает функцию f2(), расположенную в том же 32-кБ участке, что и остальная программа - все ОК. Причем все нормально работает независимо от того, в каком именно 32-кБ сегменте размещена программа. Стоит вызвать функцию (типа printf), размещенную в соседнем 32-кБ сегменте памяти - сваливаемся в HardFault. Память тестировали - записывали данные, считывали - все ОК, память работоспособна, но при переходе границы 32-кБ блоков происходит HardFault: PC = 0x0800016A, LR = 0xFFFFFFE9, XPSR = 0x21000003 Дебаггер показал, что падаем в районе вызова команды LDR 0800_01DC: 7047 BX LR 0800_BE46: 4E21 MOV R1, #78 //где-то здесь падаем 0800_BE48: 6D48 LDR R0, [PC, #+0x1B4] //где-то здесь падаем 0800_BE4A: F4F7B6F9 BL #-0xBC94 0800_01BA: 0246 MOV R2, R0 Есть идеи?
- 31 ответ
-
- arm cortex-m4f
- arm
-
(и ещё 1 )
C тегом:
-
MAX32660 и его компания
makc опубликовал тема в TI, Allwinner, GigaDevice, Nordic, Espressif и другие
Добрый день, уважаемые участники, Кто-нибудь имел опыт общения с MAX32660 или его родственниками из той же серии? В первую очередь интересуют ответы на два вопроса: Как обеспечить защиту прошивки от чтения после программирования? В документации про это сказано не слишком много, причем datasheet противоречит users guide в части описания разрешения на работу SWD. В одном документе написано, что по-умолчанию он запрещен, а в другом что разрешен. Интересует вариант без прошитого на производстве загрузчика. С точки зрения общей практики должна быть возможность запретить SWD после программирования своей прошивки или загрузчика, но в документации эта возможность в явном виде не описана. Хотя судя по исходникам загрузчика от Maxim там есть недокументированная возможность однократной записи в некие регистры, после которой SWD будет аппаратно заблокирован. Но работает ли это в действительности - непонятно. На сколько хорошо реализована поддержка этих МК в OpenOCD? Или есть другие открытые средства программирования и отладки? Попутно интересует качество SDK (исходя из личного опыта), но это уже вторично. Периферии там не так чтобы много и написать свою реализацию базовых функций для работы с ней проблемы не составит, хотя и отнимет некоторое дополнительное время.- 17 ответов
-
- max32660
- cortex-m4f
-
(и ещё 2 )
C тегом: