kamagra oral jelly

Схемотехника » Инструментарий GNU

openOCD

(4 сообщения)

Пока нет меток.


  1. sasha
    Участник

    Из - за чего может быть такая проблема?командой


    monitor flash protect 0 0 7 off
    cleared protection for sectors 0 through 7 on flash bank 0

    как видно все в порядке. Но когда смотрю на статус защиты, то


    monitor flash info 0
    #0 : str9x at 0x00000000, size 0x00080000, buswidth 0, chipwidth 0
    # 0: 0x00000000 (0x10000 64kB) protected
    # 1: 0x00010000 (0x10000 64kB) protected
    # 2: 0x00020000 (0x10000 64kB) protected
    # 3: 0x00030000 (0x10000 64kB) protected
    # 4: 0x00040000 (0x10000 64kB) protected
    # 5: 0x00050000 (0x10000 64kB) protected
    # 6: 0x00060000 (0x10000 64kB) protected
    # 7: 0x00070000 (0x10000 64kB) protected
    str9x flash driver info

    Ничего не изменилось.

    Когда пытаюсь использовать команду gdb отладчика load, чтобы загрузить программу, получаю:


    (gdb) load
    Loading section .dynamic, size 0x88 lma 0x4000000
    Loading section .got.plt, size 0xc lma 0x4000088
    Error erasing flash with vFlashErase packet
    (gdb)

    Соответственно сразу появляется мысль, что не снята защита с flash, но я показывал выше, что случается, если попытаться снять ее. Ничего ровным счетом.
    И на десерт. Вот что мне пишет , когда пытаюсь стереть сектор:


    (gdb) monitor flash erase_sector 0 0 7
    error erasing flash bank, status: 0xff
    failed erasing sectors 0 to 7

    В чем вообще может быть проблема?

    Отправлено 6 лет назад #
  2. sasha
    Участник

    Забыл назвать исходные данные

    olimex str-e912 с str912fw44x на борту. Отладчик gdb. OpenOCD 0.5.0. Ubuntu 11.04. Цепляю через jtag arm-usb-ocd от olimex.

    Отправлено 6 лет назад #
  3. Developer
    Модератор

    Попробуйте сначала "залить" образ программы средствами OpenOCD :

    monitor flash write_image erase unlock image.hex 0x00000000 ihex

    Когда-то также пытался с помощью команды

    monitor flash protect X X X off

    снять защиту и не получил никакого эффекта. Опция unlock снимет защиту FLASH

    -памяти перед заливкой образа и вернет ее после программирования.

    Когда образ программы будет внутри контроллера, появится возможность отладки с

    помощью GDB этого кода, команда GDB "load" будет не нужна.

    Отправлено 6 лет назад #
  4. sasha
    Участник

    При использовании

    monitor flash write_image erase unlock /home/halo/workspace/arm2/main.out 0x00000000
    auto erase enabled
    auto unlock enabled
    error erasing flash bank, status: 0xff
    failed erasing sectors 0 to 0
    in procedure 'flash'

    без erase.

    monitor flash write_image unlock /home/halo/workspace/arm2/main.out 0x00000000
    auto unlock enabled
    ThumbEE -- incomplete support
    flash writing failed
    error writing to flash at address 0x00000000 at offset 0x00000000
    in procedure 'flash'

    Я думаю тут поможет только хирургическое вмешательство. Т.е. замена чипа на плате. В этом чипе есть два регистра защиты флэш. Все команды openocd по снятии защиты, по-моему снимают только первого защиту уровня. А вторую можно снять только через jtag. Только нигде в документации не указан адрес этого регистра. Так и живем.
    До этого была проблема с остановкой самого процессора. Т.е. команда soft_reset_halt и halt не работали. Я исправил это командой jtag_reset 0 1. Может как-то связано?

    Отправлено 6 лет назад #

RSS feed for this topic

Отправить сообщение

Вы должны войти в систему, чтобы оставлять сообщения.