ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Воскресенье
22 декабря
1017506 Топик полностью
Evgeny_CDАрхитектор (11.07.2020 18:49, просмотров: 470) ответил VLLV на Раньше было все просто и понятно - программа, написанная на С или Борланд Паскаль работала и на целевом устройстве, и на PC без дополнительных сущностей, называемых синтетическими портами. Это было удобно и полезно, т.к. отладочных средств практически не было. Сейчас они есть, и закрывают практически все потребности. Изобретать кросс - проверку наличия сигнала CS ? При минимальной иерархии ПО это отлавливается за 5 минут. Другое дело - какая-то сложная математика, но тогда
Все просто. 

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

2. Полусинтетические порты - низкий уровень драйвера, возможно, на другой платформе, реален, остальное виртуально - совмещают удобство виртуальной отладки с реалиями жизни

3. Для задач связи синтестический порт идеален - я могу поднять сеть устройств и отладить там что угодно

4. По итогам хорошего синтетического порта получается качественная диагностика, которую потом переносишь в реал, и быстро понимаешь - что пошло не так.


Мой личный опыт. Сеть связи, жесткая привязка к фронту синхросигнала GNSS приемника. Отладили в виде синтетического порта.


Выехали в поле - писец. За полдня программисты вычислили, что происходит систематический сдвиг синхроимпульса у части устройств. Ибо диагностика нарушения синхронизации была качественная. (там было еще много мелких багов, поэтому возились пол дня. Они маскировали эффект.)


Прямой эксперимент - несколько приемников, сброс по питанию - и осцем видим у одного отставание синхры на 200 мс. Еще сброс - у другого отставание.


Матерное письмо создателям GNSS приемника поздно вечером.


Мой звонок создателям утром с пояснением, как именно я сношал всех их родственников до 6 колена.


Через 2 дня исправленный релиз.


Один день - проверка на "дрочере" (выключение питания) кучи приемников, что синхра одинаковая (таймер Xmega использовался для захвата, попарно сравнивали приемники)


К концу недели все сдано Заказчику.