Считывайте несколько потоков данных ASCII в соответствии с информацией о заголовке
Simulink Real-Time/ RS232
Блок FIFO Read HDRS идентифицирует и разделяет потоки данных ASCII, которые имеют встроенные идентификаторы.
Данные, следующие за конкретным заголовком, могут иметь различную длину, но имеют общий маркер окончания, такой как <CR><LF>
. Несмотря на то, что вы можете достичь этой же функциональности с FIFO Read блоком, он требует сложного конечного автомата с таким поведением:
Если один и тот же заголовок поступает в FIFO более одного раза после последнего выполнения блока, блок возвращает последний образец заголовка. Блок догоняет данные, которые поступают быстрее, чем выполняется блок.
Если заголовок поступает в FIFO, который не совпадает с элементом в списке заголовков, блок отбрасывает сообщение.
Если в FIFO поступают байты, которые не совпадают с заголовком, блок интерпретирует сообщение как имеющее неопределенный заголовок. Блок пропускает эти байты.
The matlab/toolbox/slrealtime/examples
папка содержит примеры, которые показывают, как использовать блок FIFO Read HDRS: slrt_ex_serialbaseboardasciitest
и slrt_ex_serialbaseboardasciisplit
.