Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: STM32F107RBT6 попадает в бесконечный цикл,
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > ARM, 32bit
squli
Добрый вечер,

суть проблемы - свежеспаяная плата со свежим контроллером один раз прошилась, помигала светодиодом,
и дальше шиться отказывается. На плату допаял 2 последовательных резистора в дифпару USB (до этого USB не был подключен). сейчас отпаял обратно.

jlink - keil, в деассемблере ходит по кругу около адреса 0x1FFFE23E, я особо не знаток, но ассемблерные команды выглядят несколько бессвязно.
Код
0x1FFFE1E4 69A8      LDR      r0,[r5,#0x18]
0x1FFFE1E6 2801      CMP      r0,#0x01
0x1FFFE1E8 D124      BNE      0x1FFFE234
0x1FFFE1EA F8D80008  LDR      r0,[r8,#0x08]
0x1FFFE1EE F0100F40  TST      r0,#0x40
0x1FFFE1F2 D01F      BEQ      0x1FFFE234
0x1FFFE1F4 2005      MOVS     r0,#0x05
0x1FFFE1F6 6020      STR      r0,[r4,#0x00]
0x1FFFE1F8 F8CDB000  STR      r11,[sp,#0x00]
0x1FFFE1FC E002      B        0x1FFFE204
0x1FFFE1FE 9800      LDR      r0,[sp,#0x00]
0x1FFFE200 1E40      SUBS     r0,r0,#1
0x1FFFE202 9000      STR      r0,[sp,#0x00]
0x1FFFE204 F8D80008  LDR      r0,[r8,#0x08]
0x1FFFE208 F0100F40  TST      r0,#0x40
0x1FFFE20C D002      BEQ      0x1FFFE214
0x1FFFE20E 9800      LDR      r0,[sp,#0x00]
0x1FFFE210 2800      CMP      r0,#0x00
0x1FFFE212 D1F4      BNE      0x1FFFE1FE
0x1FFFE214 9800      LDR      r0,[sp,#0x00]
0x1FFFE216 B138      CBZ      r0,0x1FFFE228
0x1FFFE218 6928      LDR      r0,[r5,#0x10]
0x1FFFE21A B928      CBNZ     r0,0x1FFFE228
0x1FFFE21C 68A0      LDR      r0,[r4,#0x08]
0x1FFFE21E F5C02000  RSB      r0,r0,#0x80000
0x1FFFE222 60E8      STR      r0,[r5,#0x0C]
0x1FFFE224 6868      LDR      r0,[r5,#0x04]
0x1FFFE226 E7C4      B        0x1FFFE1B2
0x1FFFE228 2000      MOVS     r0,#0x00
0x1FFFE22A 61A8      STR      r0,[r5,#0x18]
0x1FFFE22C 6020      STR      r0,[r4,#0x00]
0x1FFFE22E 60A0      STR      r0,[r4,#0x08]
0x1FFFE230 F8C4A004  STR      r10,[r4,#0x04]
0x1FFFE234 69E8      LDR      r0,[r5,#0x1C]
0x1FFFE236 2801      CMP      r0,#0x01
0x1FFFE238 D106      BNE      0x1FFFE248
0x1FFFE23A F8D90000  LDR      r0,[r9,#0x00]
0x1FFFE23E F0100F20  TST      r0,#0x20
0x1FFFE242 D001      BEQ      0x1FFFE248
0x1FFFE244 2002      MOVS     r0,#0x02


кто виноват, что делать?
спасибо!
AHTOXA
Похоже, что вы попали во встроенный загрузчик. Посмотрите ногу BOOT0, должна быть в нуле.
squli
Цитата(AHTOXA @ Sep 14 2012, 07:24) *
Похоже, что вы попали во встроенный загрузчик. Посмотрите ногу BOOT0, должна быть в нуле.


нога BOOT0 никуда не подключена, на ней меряется 0.9-1 В. (Standard IO input low level voltage maximum: 0.28*(VDD-2 V)+0.8 V = 1.16)

если перепрошивки по уарту не планируются его её можно через резистор на землю?
Danis
Цитата(squli @ Sep 14 2012, 09:22) *
нога BOOT0 никуда не подключена, на ней меряется 0.9-1 В. (Standard IO input low level voltage maximum: 0.28*(VDD-2 V)+0.8 V = 1.16)

если перепрошивки по уарту не планируются его её можно через резистор на землю?


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

BOOT1 - x BOOT0 - 0 = Main Flash memory is selected as the boot space
squli
Цитата(Danis @ Sep 14 2012, 09:36) *
да, можно. В этом случае можно не обращать внимания на BOOT1.

BOOT1 - x BOOT0 - 0 = Main Flash memory is selected as the boot space



BOOT0 через резистор на землю помогло,
не думал, что она по умолчанию в высоком уровне.

всем спасибо!
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.