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

 
 
> Нужны ли вложенные прерывания?
Altemir
сообщение Jul 31 2009, 21:45
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 249
Регистрация: 2-05-06
Из: Россия, Поволжье
Пользователь №: 16 686



Уважаемые, подскажите, пожалуйста.

Проц LPC2214. Есть задача по прерыванию таймера сразу же производить чтение по I2C с девайса. Алгоритм работы по I2C сделан тоже на прерываниях. Необходима синхронность чтения данных с таймером. Следует ли в данном случае использовать вложенные прерывания или можно каким-то образом обойти? Переделать работу с I2C без прерываний? Объём записывемых/считываемых данных из девайса не более 20Байт.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
IgorMarx
сообщение Aug 1 2009, 12:44
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 61
Регистрация: 5-10-05
Из: Зеленоград
Пользователь №: 9 268



Ответ таков: если вы не планируете выйти из обработчика таймера, пока не закончите обмен по шине I2C, то вам действительно будут нужны вложенные прерывания, но как раз не для I2C, а для остальной периферии. Что касается I2C, то я бы прерывания делать не стал без явной необходимости - архитектурно программный модуль I2C получается проще, надёжнее и портабельнее (т.е. этот модуль можно удобно использовать для других проектов), когда регистры опрашиваются в цикле. Но это при условии, что ядру в этот момент совсем делать нечего.
Go to the top of the page
 
+Quote Post
singlskv
сообщение Aug 1 2009, 23:56
Сообщение #3


дятел
*****

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



Цитата(IgorMarx @ Aug 1 2009, 16:44) *
Что касается I2C, то я бы прерывания делать не стал без явной необходимости - архитектурно программный модуль I2C получается проще, надёжнее и портабельнее (т.е. этот модуль можно удобно использовать для других проектов), когда регистры опрашиваются в цикле. Но это при условии, что ядру в этот момент совсем делать нечего.
Ерунду Вы пишете полную...
Если Вашему процу делать нечего настолько что Вы готовы сидеть в цикле и опрашивать - Вы выбрали не тот проц...
I2C это самый типичный пример для interrupt driven transfer...
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Altemir   Нужны ли вложенные прерывания?   Jul 31 2009, 21:45
- - aaarrr   ИМХО, шина I2C вообще не предполагает работу с жес...   Jul 31 2009, 22:05
|- - Altemir   Цитата(aaarrr @ Aug 1 2009, 02:05) ИМХО, ...   Jul 31 2009, 22:27
|- - defunct   Цитата(Altemir @ Aug 1 2009, 01:27) Шина ...   Jul 31 2009, 23:55
|- - Altemir   Цитата(defunct @ Aug 1 2009, 03:55) Так о...   Aug 1 2009, 09:36
|- - smac   Цитата(Altemir @ Aug 1 2009, 13:36) Собст...   Aug 1 2009, 14:38
|- - Altemir   Цитата(smac @ Aug 1 2009, 18:38) Я бы при...   Aug 1 2009, 15:45
|- - defunct   Цитата(Altemir @ Aug 1 2009, 18:45) Да, т...   Aug 1 2009, 23:25
||- - IgorMarx   Цитата(singlskv @ Aug 2 2009, 03:56) Ерун...   Aug 7 2009, 17:03
|||- - singlskv   Цитата(IgorMarx @ Aug 7 2009, 21:03) А те...   Aug 7 2009, 23:15
|||- - IgorMarx   Цитата(singlskv @ Aug 8 2009, 03:15) но в...   Aug 8 2009, 04:38
|||- - Dog Pawlowa   Цитата(singlskv @ Aug 8 2009, 02:15) Спас...   Aug 8 2009, 05:45
|||- - zltigo   Цитата(Dog Pawlowa @ Aug 8 2009, 08:45) П...   Aug 8 2009, 06:12
|||- - SasaVitebsk   Цитата(zltigo @ Aug 8 2009, 09:12) Не так...   Aug 8 2009, 20:12
||||- - singlskv   Цитата(SasaVitebsk @ Aug 9 2009, 00:12) А...   Aug 9 2009, 00:21
|||- - Dog Pawlowa   Цитата(zltigo @ Aug 8 2009, 09:12) Однако...   Aug 9 2009, 05:17
|||- - Step_ARM   Цитата(zltigo @ Aug 8 2009, 10:12) А уров...   Aug 10 2009, 04:02
||||- - zltigo   Цитата(Step_ARM @ Aug 10 2009, 07:02) Кто...   Aug 10 2009, 04:10
||||- - Step_ARM   Цитата(zltigo @ Aug 10 2009, 08:10) Понят...   Aug 10 2009, 05:04
||||- - aaarrr   Цитата(Step_ARM @ Aug 10 2009, 09:04) Как...   Aug 10 2009, 08:01
|||||- - Step_ARM   Цитата(aaarrr @ Aug 10 2009, 12:01) Все о...   Aug 13 2009, 05:00
||||- - zltigo   Цитата(Step_ARM @ Aug 10 2009, 07:04) А е...   Aug 13 2009, 05:52
||||- - Step_ARM   Цитата(zltigo @ Aug 13 2009, 09:52) Так п...   Aug 13 2009, 06:50
||||- - zltigo   Цитата(Step_ARM @ Aug 13 2009, 08:50) Как...   Aug 13 2009, 06:57
||||- - Step_ARM   Цитата(zltigo @ Aug 13 2009, 10:57) Интер...   Aug 13 2009, 12:59
||||- - zltigo   Цитата(Step_ARM @ Aug 13 2009, 14:59) в и...   Aug 13 2009, 13:11
|||- - sasamy   Цитата(zltigo @ Aug 8 2009, 09:12) убогос...   Aug 27 2009, 19:15
||- - zltigo   Цитата(singlskv @ Aug 2 2009, 02:56) Ерун...   Aug 7 2009, 18:28
||- - Dog Pawlowa   Цитата(singlskv @ Aug 2 2009, 02:56) Ерун...   Aug 7 2009, 19:19
|- - Step_ARM   Цитата(IgorMarx @ Aug 1 2009, 16:44) Отве...   Aug 3 2009, 06:02
|- - Altemir   Всем спасибо за предложения. Всё сделал, проверил,...   Aug 3 2009, 11:00
- - beer_warrior   А зачем такиие сложности с вложенным прерыванем? Т...   Aug 2 2009, 07:01
- - Troll   Цитата(Altemir @ Aug 3 2009, 15:00) Ещё о...   Aug 3 2009, 12:57
|- - Step_ARM   Цитата(Troll @ Aug 3 2009, 16:57) Хрень к...   Aug 4 2009, 03:54
- - IgorMarx   А кто против прерываний? Да ради бога. Всё от зада...   Aug 7 2009, 20:22


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

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 01:12
Рейтинг@Mail.ru


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