Перейти к содержанию
    

Метценгерштейн

Свой
  • Постов

    1 552
  • Зарегистрирован

  • Посещение

Репутация

0 Обычный

Информация о Метценгерштейн

  • Звание
    Профессионал
    Профессионал
  • День рождения 07.05.1978

Контакты

  • Сайт
    Array
  • ICQ
    Array

Информация

  • Город
    Array

Посетители профиля

6 140 просмотров профиля
  1. Открыл сейчас дамп памяти МК и свою прошивку. Похоже, что да, затирает как раз. Сумма была добавлена просто в ручную к прошивке. И при старте, скорее, доходит до символов, что это конец прошивки и не грузит ее в память больше. Т.о. в ОЗУ МК нет того куска кода добавленного в ручную. Есть только до места, пока не добавляли. Читать да, можно просто по указателю памяти- соответствует ОЗУ и сам файл прошивки.
  2. 0x0001E194 это конец прошивки, и начало адреса данных, где начинается контрл сумма- с этого адреса. Мне ее надо прочитать Но вот не пойму, прошивка есть. Льем в МК, там флеш нет, если только внешнее, есть ОЗУ, где прошивка и располагается. Как непосредственно читать куски прошивки?
  3. Есть прошивка. Есть контрл. сумма, лежащая в конце ее по опред. адресу. Как ее прочитать? static int ReadHash(unsigned int hashAddr, unsigned char *hashBuf, unsigned int hashLength) { unsigned char *hashPtr; if (hashBuf == NULL || hashLength == 0) return -1; hashPtr = (unsigned char *)hashAddr; memcpy (hashBuf, hashPtr, hashLength); return 0; } такой способ не работает. Похоже, из ОЗУ читает.
  4. Наверное, тут я плыву. Регион загрузки из скатер файла берется. И ему без разницы, где лежит прошивка - ОЗУ или флеш? По- другому спрошу- регион загрузки- это что тогда такое? Вот нет у него флеш.
  5. "Load$$LR$$LR_IROM1$$Base" Есть МК ARM7, флеш на борту нету. Это Nuvoton 902. Два варианта прошивки его: - загрузка через фирменную программу по USB в ОЗУ сразу - загрузка и считывание потом прошивки с внешней флешки. Сейчас работаю по первому варианту, мне надо посчитать контрольную сумму средствами внутренней прошивки. ф-я из заголовка что дает? Возвращает 0. Прошивка и стартует с 0 адреса. Вторая такая же ф-я Load$$LR$$LR_IROM1$$Length; дает размер. Вроде сходится. Вопрос- если прошивка в ОЗУ физически находится, т.к. флеш нет встроенного, то что ф-я кейла из шапки дает?
  6. Ну что, запустил я эту либу. Командой создал директорию dir_33, потом вывел все что есть на флешке. Вот вывод: >directory create: /mp/dir_33 ls /mp/ [dir] . [dir] .. [dir] lost+found [dir] ttt [dir] dir_33 [fil] root file.odt Разбираться еще предстоит много там с чем, но начало положено. Кто будет повторять- надо файлы подключать к проекту, по ним и походить поотладить. make, как написано в самом примере не используйте- смысла нет. На сами файлы ругался компилятор. Тот же printf там используется. Мой мк sysprintf ф-ю поддерживает. И так по мелочи. Т.е. ф-ии из библиотеки не все сразу без адаптации подойдут. Поэтому подключаем файлы к проекту. И да, чтобы раскурить, нужен черный пояс по программированию )))) Иначе не суйтесь ))
  7. Прикруил я эту библиотеку. По дороге пришлось много чего править- не компилировалось. Стою на том, что директории пытаюсь читать, как в примерах, но реально их не показывает. Не находит. В общем разбираюсь пока.
  8. Скомпилировал исходники библиотеки этой, добавленные в проект. Есть плата, где я умею у подключенной флешки читать любой сектор. Теперь вопрос, какую вызвать ф-ю из библиотеки, чтобы скормить ей сектора, чтобы отобразить хотя бы содержимое нулевого каталога флешки? Понимаю, что сначала надо открыть директорию, получить при этом дискриптор, потом прочитать директорию. И не могу найти функции, что это делают. Буду признателен за любые советы)
  9. Разумеется, знаю. Страдания от того, что не пользовался никогда этими мэйками. Что логично. Включить в проект и использовать. Второй путь- из этих же файлов собрать библиотеку, и пользоваться. Но, да, он сложен.
  10. Установил зависимости. Теперь, если я хотел бы под m0 собрать проект, то из корня проекта, где Makefile, вызвал бы: make cortex-m0 cd build_cortex-m0 make lwext4 И вот теперь хочу понять последовательность. Вызвал make, тот вызвал CMakeLists.txt, тот уже зашел в toolchain папку, нашел cortex-m0.cmake, а этот cortex-m0.cmake внутрь себя включил файл arm-none-eabi.cmake. Так что ли? Или надо чтобы собрать либу, в тулчайн заходить, и от туда стартовать?
  11. Пытаюсь разобраться пока как настроить cmake под свой компилятор
  12. Спасибо, чуть проясняется. Библиотеку из репозитория я же не могу скачать? Ее надо сначала собрать каким- то тулчейном же? Для своей сборки я использовать должен и использую компилятор ArmCompiler5Last в системе виден как ARM Compiller 5.06 update 7 Не совсем gcc, наверное. Получается, им надо собрать библиотеку сначала.
  13. Еще раз можно, чем отличаются эти библиотеки? Или могли бы отличаться? Если нет ассемблерных оптимизаций, то по идее, просто код на си? Просто не очень понимаю пока как это работает.
  14. я нашел эту либу, конечно же. Но там нет АРМ 7- моего проца. И не очень понятно как пользовать ее. Думал, может кто исползовал уже.
×
×
  • Создать...