ARM. Архитектура программы. Использование прерываний.

Ответить
PeyNikola
junior
junior
Сообщения: 56
Зарегистрирован: 24 июл 2012, 11:09
Версия LabVIEW: 2011, 202x
Контактная информация:

ARM. Архитектура программы. Использование прерываний.

Сообщение PeyNikola »

Хочу сделать шлюз на базе EKI-LM3S8962.
Шлюз будет иметь физические соединения по Ethernet, Serial 0 и Serial 1.
Идея такая: будет общее пространство данных, с которым будут взаимодействовать (чтение-запись) подключения. Так же будет цикл откуда будет осуществляться управление (Инициализация, настройка, и пр.) См. рис..
DSC01005.JPG
Правильно делать так чтобы все подключения были независимыми друг от друга, как бы автономными, - т.е. не влияли на совместную работу. Отсюда видится, что работа с каждым подключением должна быть со своим шагом времени, и в независимых циклах.
Если создать в основном VI три параллельных цикла - для коммуникаций (подключений), и один - для управления, - то всё работает с ЕДИНЫМ наибольшим шагом времени. Т.е. те разные TimeWait в циклах - игнорируются. Тут проблема думаю кроется в прерываниях.

Я попробовал использовать прерывания только для Ethernet. Поместил код с TCPIP в отдельную VI-шку, с которой задействовал прерывание по Timer 2. (Особо пока не важно какой номер). Работает какое-то время, а потом виснет камень. Просто у Ethernet есть свои прерывания на чтение и запись. А тут я со своим.
1. Как лучше реализовать архитектуру программы?
2. Как распорядиться с прерываниями?
Аватара пользователя
Sergey Ivanov

Activity Professionalism Gold Автор
expert
expert
Сообщения: 1217
Зарегистрирован: 01 мар 2009, 20:54
Награды: 5
Версия LabVIEW: 2018
Откуда: Санкт-Петербург, Кронштадт
Благодарил (а): 11 раз
Поблагодарили: 1 раз
Контактная информация:

Re: ARM. Архитектура программы. Использование прерываний.

Сообщение Sergey Ivanov »

PeyNikola писал(а): Если создать в основном VI три параллельных цикла - для коммуникаций (подключений), и один - для управления, - то всё работает с ЕДИНЫМ наибольшим шагом времени. Т.е. те разные TimeWait в циклах - игнорируются. Тут проблема думаю кроется в прерываниях.
странная штука. у меня сколько задашь, столько и было ожидание. покажи код.
Добро пожаловать на http://rk-stud.ru/
PeyNikola
junior
junior
Сообщения: 56
Зарегистрирован: 24 июл 2012, 11:09
Версия LabVIEW: 2011, 202x
Контактная информация:

Re: ARM. Архитектура программы. Использование прерываний.

Сообщение PeyNikola »

Sergey Ivanov писал(а): покажи код
Вот смотри...
TCP-IP_Test.rar
(60.09 КБ) 188 скачиваний
Ответить
  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Real Time / FPGA / Embedded»