zHz00 Untitled

суббота, 26 марта 2022
06:07 Быстрый и мёртвый
После получения запроса микроконтроллеру нужно сделать две вещи:
1. Ответить на запрос
2. Заняться сложными математическими расчётами

В каком порядке делать эти два действия?

Можно поставить целью наибольшую скорость ответа. Тогда мы отвечаем сразу, а потом начинаем считать. Однако это приводит к неожиданным последствиям.

Я сижу на другом микроконтроллере и направляю первому запрос. Получаю ответ. Отлично, можно слать следующий запрос. Но не тут-то было. Если слать запросы слишком часто, начала пакетов будут пропадать, потому что когда я шлю очередной запрос -- первый .микроконтроллер всё ещё выполняет вычисления [по некоторым причинам они непрерываемы даже при помощи прерываний].

Поэтому надо наоборот -- сначала доделать вычисления, а потом уже отправлять ответ.

@темы: Программирование, Борьба с техникой

URL
ЖЕЛАЮ СЧАСТЬЯ! ПРИШВИH.
Всю жизнь меня мучают мыши - не ездят, сволочи, как надо,...
На этой неделе я в Москве каждый день… Разорение. Льготы ...
По всей Корее через метр на два расставленны автоматы по ...
велик соблазн был! мне сегодня в институт позволено было ...
Вот хрень! Оказывается, вчера был день моего факультета.
26.03.2022 в 06:38
Ну тут главное решить, что важнее, скорость вычислений или время ответа.
Если вычисления в приоритете, то пусть второй контроллер периодически опрашивает первый, пока не получит ответы. Можно например сделать динамические таймауты запросов.
URL

26.03.2022 в 23:38

26.03.2022 в 23:38
Пусть вычислятор сам просит новую порцию данных, раз уж его нельзя прерывать.
URL
Добавить комментарий

Расширенная форма

Подписаться на новые комментарии
Получать уведомления о новых комментариях на E-mail