реклама на сайте
подробности

 
 
4 страниц V  < 1 2 3 4 >  
Reply to this topicStart new topic
> прерывания STM32F4, должно работать, но не хочет...
Genadi Zawidowsk...
сообщение Aug 23 2014, 18:37
Сообщение #16


Профессионал
*****

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Я бы попросил проект целиком, а не только избранные места. Откуда я знаю, кто у Вас гасит светодиод...
Go to the top of the page
 
+Quote Post
Метценгерштейн
сообщение Aug 23 2014, 19:41
Сообщение #17


Профессионал
*****

Группа: Свой
Сообщений: 1 357
Регистрация: 12-04-05
Из: Петербург
Пользователь №: 4 079



https://cloud.mail.ru/public/19d1f1936da5/STM32%20F4_Pl.zip
под ИАР

ну так как? идей нет?
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Aug 23 2014, 19:58
Сообщение #18


Профессионал
*****

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Пока всё как у вас... Уточню:
ввод состояния PA0 работает. Прерывание срабатывают - но процессор "улетает" куда-то - скорее всего, в default функцию обработчика прерывания. Выясните, как в данной версии компилятора должна она называться.
Как посмотреть код стартапа, я не нашёл в этом компиляторе.
Ваше EXTI0_IRQHandler оно похоже не то что надо.

Даже уточню - в исходниках билиотеки нашёл только НАЧАЛО этой таблицы - не зависящие от произволителя векторы.

Поправлюсь. В Вашем каталоге есть - EXTI0_IRQHandler в Templates. Но что-то я не понял, как это подключено к Вашему проекту.

Сообщение отредактировал Genadi Zawidowski - Aug 23 2014, 20:04
Go to the top of the page
 
+Quote Post
Метценгерштейн
сообщение Aug 23 2014, 20:01
Сообщение #19


Профессионал
*****

Группа: Свой
Сообщений: 1 357
Регистрация: 12-04-05
Из: Петербург
Пользователь №: 4 079



я правильно понимаю, что у вас такая же плата?

EXTI0_IRQHandler
все так пишут- в инете смотрел другой код тоже. для F4

лампочки получается макросом включать?
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Aug 23 2014, 20:07
Сообщение #20


Профессионал
*****

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Плата идентичная. Лампочки работают.
Посмотрел дамп скомпилированного кода - таблица векторов имеет всего 16 элементов - значит дейчтвительно подключилась та, что о умолчанию для всех кортексов идёт. Прерывание от таймера в неё входит.
Ищите ошибку в настройках, с IAR я никогда не работал - помочь не смогу.
зы: посмотрел другие чужие проекты - там startup_stm32f4xx.s явно включён в проект. Вот например http://www.m0nka.co.uk/wp-content/uploads/...firmware181.zip


Сообщение отредактировал Genadi Zawidowski - Aug 23 2014, 20:26
Go to the top of the page
 
+Quote Post
Метценгерштейн
сообщение Aug 23 2014, 20:18
Сообщение #21


Профессионал
*****

Группа: Свой
Сообщений: 1 357
Регистрация: 12-04-05
Из: Петербург
Пользователь №: 4 079



да, спасибо, что-то с этим стартапом- с ним в прерывание входит, но зато основной цикл сразу не работает.
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Aug 23 2014, 20:25
Сообщение #22


Профессионал
*****

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Ловите работающий вариант. Изменённые файлы.
Go to the top of the page
 
+Quote Post
Метценгерштейн
сообщение Aug 23 2014, 20:35
Сообщение #23


Профессионал
*****

Группа: Свой
Сообщений: 1 357
Регистрация: 12-04-05
Из: Петербург
Пользователь №: 4 079



уже лучше на сон )
в чем причина была?

можете весь проект прислать? ругань сплошная на файлы
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Aug 23 2014, 21:03
Сообщение #24


Профессионал
*****

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Ловите подкаталог пользовательской программы - в ней менялся только main.c и проект. Работающий скомпилированный файл в Debug.
Дребезг кнопки никто не давил - потому можете наблюдать странности (светодиод переключает совоё состояние в обработчике).

Сообщение отредактировал Genadi Zawidowski - Aug 23 2014, 21:10
Go to the top of the page
 
+Quote Post
Метценгерштейн
сообщение Aug 23 2014, 21:11
Сообщение #25


Профессионал
*****

Группа: Свой
Сообщений: 1 357
Регистрация: 12-04-05
Из: Петербург
Пользователь №: 4 079



вы все пути препроцессора удалили. А зачем?
http://c2n.me/iMQnYv

а можно все-таки еще раз попросить проект, который компилится без проблем?
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Aug 23 2014, 21:16
Сообщение #26


Профессионал
*****

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Я ничего не удалял. Поместите в Ваш проект main.c и включите указанный мной startap (версия для IAR).
Вот как эта страничка выглядит у меня.
Одномегабайтный архив firmware.zip это оно и есть. Зачем паковать то что не менялось? "облаком" не пользуюсь.

Сообщение отредактировал Genadi Zawidowski - Aug 23 2014, 21:20
Go to the top of the page
 
+Quote Post
Метценгерштейн
сообщение Aug 23 2014, 21:21
Сообщение #27


Профессионал
*****

Группа: Свой
Сообщений: 1 357
Регистрация: 12-04-05
Из: Петербург
Пользователь №: 4 079



ИАР какая версия?
да, заработало в ИАР 7.20 !
у меня чуть старее версия была- выкидывал настройки.

еще раз- что изменили, чтобы заработало?
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Aug 23 2014, 21:23
Сообщение #28


Профессионал
*****

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Смотрите... А что мешает самому добавить один файл в проект?
Go to the top of the page
 
+Quote Post
Метценгерштейн
сообщение Aug 23 2014, 21:30
Сообщение #29


Профессионал
*****

Группа: Свой
Сообщений: 1 357
Регистрация: 12-04-05
Из: Петербург
Пользователь №: 4 079



похоже, что на 7.2 работает, а на моей нет...
разбираюсь
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Aug 23 2014, 21:37
Сообщение #30


Профессионал
*****

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Цитата
еще раз- что изменили, чтобы заработало?

1 - включил в проект файл стартапа (это додумался в последнюю очередь)
2 - закомментировал всё в настройке GPIOA кроме MODER (думаю, не повлияло)
3 - сделал сброс запросов прерывания правильным
4 - аккуратнее с RAISE/FALL - там что-то было с именами. Сравните.
5 - убрал содержимое цикла из main. До того у меня там мигалка была.
6 - убрал установку приоритета прерывания.
Цитата
на 7.2 работает

У меня вообще 6.7

Сообщение отредактировал Genadi Zawidowski - Aug 23 2014, 21:39
Go to the top of the page
 
+Quote Post

4 страниц V  < 1 2 3 4 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 27th August 2025 - 13:45
Рейтинг@Mail.ru


Страница сгенерированна за 0.01418 секунд с 7
ELECTRONIX ©2004-2016