Эта модель примера показывает способность блока FIFO Read HDRS повторно синхронизироваться после повторного отключения и его способность разрешать ошибки, такие как, когда сообщение только частично завершено во время попытки чтения.
Блок Switch чередуется между первой и последней частями сообщения при последующих шагах расчета. Это имитирует худший сценарий, когда модель обновляется до завершения конструкции сообщения. В результате иногда поступает только часть сообщения. Второй импульсный генератор поочередно включает и отключает блок FIFO Read HDRS.
Область 1 графически отображает декодированные данные синусоиды, принятые на каждом временном шаге. Когда блок Pulse Generator1 выводит 0, счетчик из блока FIFO Read HDRS равен 0. Когда он выводит значение 1, чтение догоняет путем выдачи дополнительных данных и возвращает последнее полное значение, найденное в FIFO. Возможности 2 указывают, когда новые данные присутствуют.
open_system(fullfile(matlabroot,'toolbox','slrealtime','examples','slrt_ex_serialasciisplit')) set_param('slrt_ex_serialasciisplit','StopTime','30'); sim('slrt_ex_serialasciisplit')
См. также