AzardCry
Участник-
Постов
32 -
Зарегистрирован
-
Посещение
Репутация
0 ОбычныйИнформация о AzardCry
-
Звание
Участник
Посетители профиля
Блок последних пользователей отключён и не показывается другим пользователям.
-
Ошибка с STR была причиной HardFault изначально, не то записал. Был уверен, что Keil выполняет пошагово, но, почему-то в моём конкретном случае он не желал заходить в __main до того момента, пока я не добавил в область данных DCD ProgStart и не сделал свой код внутренностями процедуры. 1.__main 2. ProgStart PROC . .. ENDP, после этого стал заходить в main.s, работает. PS: И научитесь вставлять в сообщения текст исходных кодов, а не картинки. Кнопка для этого есть здесь в редакторе. Также научитесь корректно цитировать. -> Это я не уметь. Я так редко заходить. Обычно я говорить с ИИ и читать книжки, уже существующие ответы на форумах... Но я стараться!
-
Хотя бы прочитать в описании системы команд - что именно делают написанные вами команды CPU? Нет? -> Собственно, всем этим и другим занимаюсь (когда есть время). Вот оформленная в виде функции в коде на Си ассемблерная вставка работает..., а простая программа чисто в ассемблерном формате - нет. Пытаюсь выяснить, как же так... Вы смешиваете понятия "программа не компилируется или компилируется с ошибками" (п.1) с понятием "программа выполняется неверно" (п.2) -> Вроде нет - я говорю, что у меня есть событие А, и есть событие Б, я не говорю, что они связаны, но я не знаю, есть ли связь между ними или нет, поэтому указываю сразу и то, и другое. Первый раз смотрю в sct файл. Это писать бессмысленно, так как у Cortex-M нету других режимов кроме Thumb2. -> А как же THUMB (урезанные, 16 бит?). Но, честно говоря, на данном этапе мне всё равно, главное, что функционал свой выполняют. Что именно делаете и как выполняете - тоже ничего не понятно. Пошагово? Если да - то как? -> Делал с заходом, делал без него. Вылет на BX R0 после LDR R0, __main. Пошаговое с заходом, есть. Но BX R0 выполняется ПОШАГОВО, без пропуска моей __main, и я уже попадаю в HF. То есть, с моей точки зрения, я даже на MOVS R0, #10 не попадаю. Кто надумал писать в переменную, объявленную в const-памяти? (запись в CellAddr объявленную как const). -> Это вижу Ещё раз: смотрите ваш же первый скриншот. На нём видно куда идёт переход. -> 0x0800013A, на себя же саму? нет? Но это и не важно (пока), так как до этого дело не доходит.
-
Отключил, отладка протекает так же. CFSR - 0x04 - неточная ошибка доступа к данным. Касательно 0x08000288 от jcxz - значение лежит в R1 когда LDR R0, =SystemInit вы об этом писали? Но все команды, даже используемые в __main это значение для записи не используют... Если "Очевидно в последней строчке происходит переход за пределы "программы" и соответственно - улёт в HF", то я всё еще не могу определить, где именно (не вижу/не понимаю)
-
SystemInit отрабатывает нормально (базовая настройка частоты и т.д, включается в код на Си тоже), переход к HardFault_Handler происходит именно в строке BX R0 после LDR R0, =__main Я, честно говоря, не понимаю, что вы мне пишете. Как-то очень в общем написано.... Что подразумевается под "Вы понимаете что вам пишет компилятор?". -> Ошибки и предупреждения? Ну и другую информацию, наверное И понимаете где находится "попытка перейти к __main"? -> В моём представлении в строках 137, 138 Startup файла (нижний рисунок). Не глубокий знаток ассемблера, может и неправ? Зачем вы в начале main пытаетесь записывать 10 по адресу 0x08000288? Ведь это область флешь и писать туда нельзя. -> Это где? Я не вижу, а если это так, то это не я или я не специально. И что такое "B ." - > это аналог 1. Tmp 2. B Tmp, может, я ошибаюсь? (Т.е цикл бесконечный без действий) Очевидно в последней строчке происходит переход за пределы "программы" и соответственно - улёт в HF. -> В последней строчке программы в main.s?
-
Доброго времени суток! Не могу добиться работы простой программы на ассемблере для контроллера STM32F103C8T6 (Китай, не оригинальный). 1. Выдаёт предупреждение .sct(8): warning: L6314W: No section matches pattern *(InRoot$$Sections). 2. При отладке программы, при попытке перейти к метке __main попадает в HardFault_Handler Замечу, что с проектами на Си, разумеется, все работает как надо, без предупреждений и HardFault_Handler. Может, кто-то сталкивался с подобным? Ниже привожу содержимое файлов (scatter + main + startup). Также изображения от режима отладки ( 1 - команда BX, режим команд THUMB, искомый адрес в R0, 2 - адрес первой команды моего кода - совпадает с тем, куда должен осуществится переход ) 1. scatter
-
Добрый день! Не помогло отключение/удаление iso. Судя по всему проблема в тех репозиториях, у которых количество пакетов 0 (рисунок 1, 2), на них также идут ошибки в терминале. Все уже пробовал - отдельно качать программы по ссылкам в том числе - все время вылетает то, что на рисунке. Установка любого пакета/программы через yum заканчивается этим. Пробовал все, что смог найти - пользовался yum/yum-config-manager для отключения/удаления, вручную в yum.repos.d менял/удалял файлы с репозиториями, чистил кэш (то, что пишут на других форумах/на Red Hat). Yum создает/включает заново эти репозитории в любом случае. Кроме того не пойму, как так вышло, что после подключения Red Hat сетевых репозиториев в yum.repos.d теперь их огромный список (хотя и подавляющая часть отключена).
- 4 ответа
-
- red hat
- red hat enterprice 7
-
(и ещё 2 )
C тегом:
-
Нет, не смонтирована. Но заранее отмечу, что ISO образ в качестве репозитория работает - там нет всех необходимых пакетов. Не работают именно сетевые репозитории
- 4 ответа
-
- red hat
- red hat enterprice 7
-
(и ещё 2 )
C тегом:
-
Доброго времени суток! Не могу скачивать и устанавливать данные с помощью Yum в Red Hat Enterprise Linux 7. Выдаёт ошибку о том, что нет зеркал. Прошу подсказать, как справится с этой проблемой (не особо уверенный пользователь Linux - делаю всю по инструкциям, в данном вопросе пока успеха нет :). Изображение терминала прилагаю. В тех строчках, которые вышли за нижнюю границу прилагаемого рисунка, тоже ошибки. В итоге yum просто отпускает терминал с указанием того, что скачать он ничего не может. Также, при возможности, прошу объяснить, как установить репозиторий, например, archives.fedoraproject.org, чтобы можно было работать и с ним. Непонятно, что откуда брать (где найти файл repo с описанием репозитория и т.д.) Заранее благодарен!
- 4 ответа
-
- red hat
- red hat enterprice 7
-
(и ещё 2 )
C тегом:
-
2. Трудность разрешилась - для того, чтобы main.cpp не вызывал ошибок, упомянутых в вопросе, нужно указать ключ -cpp в закладке C/C++
-
Трудность разрешилась - Genus в отличие от Aldec/Xilinx не видит иерархию проекта. Поэтому модули NAME и Name в разных его частях вызывают ошибку. Все модули должны быть с уникальными именами.
-
Genus VHDL Synth
AzardCry опубликовал тема в Разработка цифровых, аналоговых, аналого-цифровых ИС
Доброго времени! Имеют место две проблемы при синтезе поведенческих моделей, что заключается в следующем: 1. В проекте с небольшой иерархией отказывается собираться (elaborate) модель нижнего уровня. Ошибка гласит - CDFG-214 ... Unknown parameter. Неизвестный параметр - находится в блоке generic, а строка, на которой происходит ошибка - реализация компонента с передачей этого параметра в блоке generic map. Сам параметр, разумеется, везде присутствует и описан, синтез в среде для ПЛИС и моделирование есть. То же с атрибутом keep в одном из исходников. Особенность при этом в том, что в проекте есть ещё модули точно такой же структуры - их синтезатор свободно пропускает. Который раз уже просматриваю, не могу понять в чём тут дело, может у кого были похожие ошибки? 2. Уже писал ранее, может кто-то имеет возможность поделится "понятными" материалами для синтеза через Genus/Innovus, Virtuoso, Liberate в IP-блок (как я понимаю - серый квадрат на картинках в сети, который как модуль включается в исходники). Если это будет материал на основе gsсlib от cadence, было бы совсем здорово! Заранее благодарен! -
То есть способа нет? Так не хотелось ручками все описывать... Касательно компиляции .cpp файлов следующая особенность - .c (все старые проекты у меня на нём) исходник собирается без проблем, может сможете подсказать что-то? Спасибо за ответ!
-
Доброго времени суток! У меня появилось два вопроса, но по сути своей они относительно близки, опубликую их вместе. 1. Для целей обучения хотел написать программу на ассемблере, но только чтобы в процедуру __main программа заходила после инициализации (т.е. после startup/system). Попытался добавить в свой main.s эти файлы с помощью INCLUDE/GET - выдаёт ошибки (изображение 1). Подскажите, как решить вопрос? 2. В проекте main.cpp не видит исполняемые файлы при компиляции, судя по ошибке (рисунок 2). Делал следующее: - Пути проверял на наличие кириллицы, сейчас там только пробелы - не помогает, если убрать и их - не помогает - Добавлял директиву USE_STDPERIPH_DRIVER, указывал вручную пути к библиотекам - не помогает. - Пробовал добавлять в программу все библиотеки вручную в main.cpp - не помогает - Запускал из разных каталогов - не помогает Все библиотеки из SPL, которая лежит там, где должна лежать после установки, среда их прекрасно видит, отображает в интерфейсе, позволяет открыть и просмотреть. Объектные o. файлы после компиляции в папке проекта есть. В чем же дело? Заранее благодарен за ответы!
-
А скриптиков от Voltus/Tempus/Liberate (Genus/Innovus) нет лишних, для посмотреть?)
-
Доброго времени суток! 1. Если у кого-нибудь есть в наличии, хотелось бы посмотреть на скрипты для Voltus/Tempus по анализу целостности питания/signoff временному анализу после завершения работы в Innovus. 2. Также были бы интересны скрипты от Genus/Innovus, посмотреть кто какие команды использует, в т.ч. для MVS проектов и для проектов с несколькими доменами тактовой частоты (если в скриптах есть какие-либо особенности относительно этого) 3. Ну и, может, от Liberate (может вместе с пособиями какими-то). Сам пока ещё не добирался до характеризации, но это начинает быть интересно. Если у кого есть Китайский лицензионный Liberate, я бы забрал ссылку на него. 4. Так и не понял, зачем надо vManager/Modus/Indago, подскажете?