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

 
 
5 страниц V  < 1 2 3 4 > »   
Reply to this topicStart new topic
> В какой моде запускать main?, Вот в чем вопрос.
DpInRock
сообщение Apr 17 2009, 22:12
Сообщение #16


Гуру
******

Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515



DBGU у меня для всего используется. А это чем-то плохо? Ятак решил, что даже очень хорошо. Все дела по одному кабелю. И фирмаврь заливать, и в случае серьезного трабла - родной загрузчик - тут же. Тем более, свободных выводов у меня нет вообще.

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

А на ассемблере больше нет желания писать. А на сях только полгода боле-менее активно программирую. Спасибо Иару 4, а особенно 5.3.


--------------------
On the road again (Canned Heat)
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Apr 17 2009, 22:26
Сообщение #17


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(DpInRock @ Apr 18 2009, 02:12) *
DBGU у меня для всего используется. А это чем-то плохо? Ятак решил, что даже очень хорошо. Все дела по одному кабелю. И фирмаврь заливать, и в случае серьезного трабла - родной загрузчик - тут же. Тем более, свободных выводов у меня нет вообще.

В Вашем случае я бы выбрал USB - тоскливо будет заливать разросшуюся программу через UART. И родным загрузчиком тоже поддерживается.

Цитата(DpInRock @ Apr 18 2009, 02:12) *
А на ассемблере больше нет желания писать. А на сях только полгода боле-менее активно программирую. Спасибо Иару 4, а особенно 5.3.

Лиха беда начало smile.gif
Go to the top of the page
 
+Quote Post
singlskv
сообщение Apr 17 2009, 22:28
Сообщение #18


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(aaarrr @ Apr 18 2009, 02:08) *
Объяснить это желание компилятору только затруднительно smile.gif Да и все пересылки данных автоматически пострадают.
Лучше тогда не использовать прерывания... да и ARM тоже.
В подобных системах(синхронный опрос входов) прерывание принципиально одно,
а как его синхронизировать... ну есть варианты с парой таймеров например...
но пока еще думаю...
Цитата
Никогда не говори "никогда" smile.gif Если в системе что-то может меняться, то оно обязательно потребует изменений.
конечно может поменяться..., но этот момент по возможности будет оттягиваться до бесконечности,
в конце концов софт на нижнем уровне(переферийном) написан просто "идеально" smile.gif ...
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Apr 17 2009, 22:40
Сообщение #19


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(singlskv @ Apr 18 2009, 02:28) *
В подобных системах(синхронный опрос входов) прерывание принципиально одно,
а как его синхронизировать... ну есть варианты с парой таймеров например...
но пока еще думаю...

ИМХО, если сразу не получается добиться удовлетворительных результатов, то это прямая дорога к использованию CPLD/FPGA.
С софтом можно возиться бесконечно, но только при наличии экономической целесообразности.
Go to the top of the page
 
+Quote Post
singlskv
сообщение Apr 17 2009, 22:40
Сообщение #20


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(DpInRock @ Apr 18 2009, 02:12) *
Вложенные прерывания на самом деле завсегда пригодятся и надо заранее к этому готовиться.

Вот в том то и дело что они(Вложенные прерывания) пригодятся Вам 1 раз из 100
но при этом, написав обработчик умеющий работать с вложенными прерываниями,
он у Вас будет везде...
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Apr 17 2009, 22:46
Сообщение #21


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(singlskv @ Apr 18 2009, 02:40) *
он у Вас будет везде...

Нет, только на прерываниях с приоритетом меньше максимального. Да и не мешает ни разу - в любой системе можно разумно расставить приоритеты. О "бездумном", как бы сказал коллега zltigo, расточении памяти не упоминаю, ибо на самом деле оно несущественно в 99.9% случаев.
Go to the top of the page
 
+Quote Post
singlskv
сообщение Apr 17 2009, 22:53
Сообщение #22


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(aaarrr @ Apr 18 2009, 02:40) *
ИМХО, если сразу не получается добиться удовлетворительных результатов, то это прямая дорога к использованию CPLD/FPGA.
С софтом можно возиться бесконечно, но только при наличии экономической целесообразности.

Ну я пока толком и не поробовал(на АРМ) но думаю что 8 сигналов частотой до 50(может 100)Кгц это вполне доступно...


Цитата(aaarrr @ Apr 18 2009, 02:46) *
Нет, только на прерываниях с приоритетом меньше максимального. Да и не мешает ни разу - в любой системе можно разумно расставить приоритеты. О "бездумном", как бы сказал коллега zltigo, расточении памяти не упоминаю, ибо на самом деле оно несущественно в 99.9% случаев.
Не очень понял как должен выглядеть обработчик IRQ что бы он зависил от приоритетов.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Apr 17 2009, 22:59
Сообщение #23


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(singlskv @ Apr 18 2009, 02:53) *
Не очень понял как должен выглядеть обработчик IRQ что бы он зависил от приоритетов.

Очень просто: делаем отдельные обертки для каждого прерывания с приоритетом ниже максимального, для максимального используем обычные прерывания.
Go to the top of the page
 
+Quote Post
singlskv
сообщение Apr 17 2009, 23:03
Сообщение #24


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(aaarrr @ Apr 18 2009, 02:59) *
Очень просто: делаем отдельные обертки для каждого прерывания с приоритетом ниже максимального, для максимального используем обычные прерывания.
А зачем ? Ведь все равно уйдем обрабатывать самое приоритетное ?
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Apr 17 2009, 23:07
Сообщение #25


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Затем, чтобы получить возможность уйти на обработку самого приоритетного.
Go to the top of the page
 
+Quote Post
singlskv
сообщение Apr 17 2009, 23:13
Сообщение #26


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(aaarrr @ Apr 18 2009, 03:07) *
Затем, чтобы получить возможность уйти на обработку самого приоритетного.
Тогда это уже ловля "блох" и где-то в общем алгоритме допущена ошибка...
ИМХО, при одновременном возникновении прерываний из разных источников
тратить время на определение "кто приоритетьнее" это просто глупость...
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Apr 17 2009, 23:21
Сообщение #27


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(singlskv @ Apr 18 2009, 03:13) *
Тогда это уже ловля "блох" и где-то в общем алгоритме допущена ошибка...
ИМХО, при одновременном возникновении прерываний из разных источников
тратить время на определение "кто приоритетьнее" это просто глупость...

Так задача-то стоит обеспечить выполнение прерывания, имеющего более высокий приоритет, "внутри" прерывания с более низким. Определяет "кто приоритетнее" железка, но для того, чтобы прервать одно прерывание другим, нужно сделать некоторые софтовые телодвижения, для чего и нужно обертка.
Go to the top of the page
 
+Quote Post
singlskv
сообщение Apr 17 2009, 23:24
Сообщение #28


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(aaarrr @ Apr 18 2009, 03:21) *
Так задача-то стоит обеспечить выполнение прерывания, имеющего более высокий приоритет, "внутри" прерывания с более низким. Определяет "кто приоритетнее" железка, но для того, чтобы прервать одно прерывание другим, нужно сделать некоторые софтовые телодвижения, для чего и нужно обертка.
А просто FIQ для этого не хватит ?
Ну или для Атмел просто IRQ как FIQ ?
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Apr 17 2009, 23:28
Сообщение #29


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



"Просто FIQ" дает только один источник с более высоким приоритетом.
Go to the top of the page
 
+Quote Post
singlskv
сообщение Apr 17 2009, 23:31
Сообщение #30


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(aaarrr @ Apr 18 2009, 03:28) *
"Просто FIQ" дает только один источник с более высоким приоритетом.
И ИМХО, этого достаточно...
А у атмел есть еще Fast Forcing...
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 24th June 2025 - 23:35
Рейтинг@Mail.ru


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