|
STM32vlDiscovery цикл for не работает |
|
|
|
Mar 22 2015, 16:44
|

Профессионал
    
Группа: Участник
Сообщений: 1 548
Регистрация: 20-12-07
Из: г.Новосибирск
Пользователь №: 33 486

|
STM32vlDiscovery. Простейшая конструкция - просуммировать элементы массива. Код uint16_t GAME[m]={19,64,32,64,64,32,32,64,64,32,64,32,64,32,32,64,64,32,1152}; const uint8_t m = 255; uint16_t Tsinhro_T=0; .... .... N = GAME[0]; Tsinhro_T = 0; for (i=1; i<N; i++) { Tsinhro_T =Tsinhro_T +GAME[i]; } Не хочет работать, виснет в теле цикла, причем в отладчике, пошагово, все работает как надо. В чем дело, мозг сломал. Подскажите, пожалуйста, куда копать?
Сообщение отредактировал domowoj - Mar 22 2015, 19:31
--------------------
И на камнях растут деревья!
|
|
|
|
|
 |
Ответов
|
Mar 22 2015, 19:41
|
Гуру
     
Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454

|
Цитата Не знаю, что такого в этой процедуре, что может стек поломать... да нет там ничего, 3 строчки, все просто... ТС почему то упорно скрывает от нас реальный код, и дает какие-то выжимки. Тем самым от нас скрыта правда, а видно только то что автор считаем важным, при этом поскольку у автора ошибка, очевидно автор не очень осознает что же на самом деле важно, а что нет)... Если только Tsinhro_T - ни какой-то злобный тип для которого перегружен оператор присвоения как-то очень злобно... что с вочь догом, с задержкой чтения флеши, с другими прерываниями? самое простое запретить все прерывания, и поглядеть если через цикл пройдет, то точно дело в них...
|
|
|
|
|
Mar 26 2015, 17:53
|

Профессионал
    
Группа: Участник
Сообщений: 1 548
Регистрация: 20-12-07
Из: г.Новосибирск
Пользователь №: 33 486

|
Добрый вечер уважаемые друзья! Цитата(Golikov A. @ Mar 23 2015, 01:41)  ТС почему то упорно скрывает от нас реальный код, и дает какие-то выжимки. Тем самым от нас скрыта правда, а видно только то что автор считаем важным, при этом поскольку у автора ошибка, очевидно автор не очень осознает что же на самом деле важно, а что нет)... Вы оказались абсолютно правы. После таймаута, (взгляд все-таки замыливается) и внимательного разбора написанного, нашел ЛЯП, как AVR_овский отголосок, при сбросе флага одного из прерываний я его не сбрасывал в 0, а устанавливал в "1". Вместо Код TIM4->SR &= ~TIM_SR_UIF; // было Код TIM4->SR |= TIM_SR_UIF; // Спасибо всем, тема закрыта.
--------------------
И на камнях растут деревья!
|
|
|
|
Сообщений в этой теме
domowoj STM32vlDiscovery цикл for не работает Mar 22 2015, 16:44 Xenia Цитата(domowoj @ Mar 22 2015, 19:44) Подс... Mar 22 2015, 17:05 Сергей Борщ Цитата(Xenia @ Mar 22 2015, 19:05) Так пи... Mar 22 2015, 17:18  Xenia Цитата(Сергей Борщ @ Mar 22 2015, 20:18) ... Mar 22 2015, 17:42   Сергей Борщ Цитата(Xenia @ Mar 22 2015, 19:42) Констр... Mar 22 2015, 18:10    domowoj Цитата(Сергей Борщ @ Mar 23 2015, 00:10) ... Mar 22 2015, 18:24 domowoj А почему же в отладчике работает, когда шагаешь.
К... Mar 22 2015, 18:02 Xenia Цитата(domowoj @ Mar 22 2015, 21:02) А по... Mar 22 2015, 18:31  domowoj Цитата(Xenia @ Mar 23 2015, 00:31) Увелич... Mar 22 2015, 18:40   Xenia Цитата(domowoj @ Mar 22 2015, 21:40) А ка... Mar 22 2015, 18:50 domowoj А в Keil? Mar 22 2015, 18:58 Xenia Цитата(domowoj @ Mar 22 2015, 21:58) А в ... Mar 22 2015, 19:00 Golikov A. там же, в прожект пропертисях...
только надо не ст... Mar 22 2015, 19:04 mantech Цитата(Golikov A. @ Mar 22 2015, 22:04) т... Mar 22 2015, 19:18 zhevak Цитата(domowoj @ Mar 22 2015, 22:44) Не х... Mar 22 2015, 19:22 etoja Напишите
volatile int i;
чтобы компилятор не кеш... Apr 3 2015, 09:23 domowoj Ладно, спасибо за наводки, буду пробовать,
потом о... Mar 22 2015, 19:46 Golikov A. Стойте стойте... Давайте пока она не совсем закрыт... Mar 26 2015, 18:00 Golikov A. Если это ответ мне, то это не поможет....
Если не ... Apr 3 2015, 11:10
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|