Ну вот, собственно, ветка для попытки дизайна приборов на базе маленьких цветных TFT. Сюда не входят вопросы подключения к компьютеру фоторамок, второго- третьего- и двадцатого- монитора, не входит подключение экрана от ДВД проигрывателя, не входит проект МАГЕНТА, не входит использование знакосинтезирующих (текстовых) LCD (ЖКИ) дисплеев, не входит использование светодиодных индикаторов и реальных авиационных приборов. Не годятся так же мониторы от сотовых телефонов, стиральных машин и наручных часов. Только микро (от 1 до 7 дюймов) мониторы TFT со встроенным контроллером управления.
Вот так выглядит то, на базе чего инициативная группа хочет попробовать сделать эмулятор реального прибора, подключаемый к FSBUS/IOCARDS/ARCCBUS: 
Прикрепленные изображения
BestCat, on 29 September 2009 — 21:42, said:
Сие чудо есть отладочная плата для процессора LPC, она стоит 10т.р но Вам она не нужна. Конечное решение предполагаемо будет на нашей собственной плате без лишних деталей и функций.
fiyrus, on 29 September 2009 — 00:20, said:
Не думаю. Там всего сейчас 3 интерфейса: т.н. MCU — он же обычный 8 бит данных плюс 4 управляющих сигнала, 18-битный и RGB аналоговый. Первый не многим сложнее обычных текстовых ЖКИ. Минус — маленькая производительность и как следствие максимум 160х160 или эквивалент. Второй — он же цифровой (digital-18), он характерен для высокопроизводительных цветных дисплеев от 320х240 и выше. Аналоговый — просто три аналоговых входа РЖБ и несколько линий синхронизации и сброса. Для наших целей имеет смысл смотреть только на второй тип. Он бывает реализован на нескольких контроллерах (Самсунг, Хитачи, Тошиба) но суть его не меняется — фактически это попиксельный вывод всего экрана как на ЭЛТ. Т.е. необходимо 30 раз в секунду нарисовать весь дисплей, последовательно задвигая в него данные. Есть нюансы, в частности можно еще читать данные с дисплея, можно использовать встроенный генератор шрифта и курсора, но это все убого, и если делать это по уму (читай плавно и красиво) то это делать в контроллере. Не думаю что за ближайшие несколько лет это изменится. Все КПК и встроенные системы сейчас используют шину Диджитал-18, на нее есть библиотеки, разработанные и вылизанные контроллеры СОВМЕСТИМЫЕ МЕЖДУ СОБОЙ, да и производительность у нее достаточна для 800х600 при частоте 60Гц. Так что опасаться что производители ДВД что-то придумают я думаю не стоит — если они что и меняют, то в своем аналоговом сегменте, и гонятся в основном за пикселями, чего нам не требуется по определению. Наш сегмент ИМХО будет и далее совместим вниз, тем более как я уже написал проще чем диджитал-18 трудно придумать шину да и не надо вовсе, как не меняется уже 11 лет интерфейс HITACHI HD 44780 текстовых LCD дисплеев (разработан и принят в 1998 году). Может я конечно ошибаюсь, но мучает меня идея все же попробовать.
САБ, on 29 September 2009 — 16:17, said:
Да, нокиа кажется была с i2c и моторолу видел. Огромные ресурсы не нужны, нужен контроллер с TFT и RAM — причем RAM обычно вешается отдельно. Давайте остановимся на LPC. Из того что знаю я, по нашей теме: я специализировался на ПИКах и 8051 в среде HiTechC либо MikroelektronikaCPRO. Писал графические библиотеки для GLCD (на KS0108B), мульти-LCD, и разрабатывал связь ПК-MCU через Ethernet (TCP/UDP). Может пригодится опыт по i2c. Посему вопросы:
1. язык программирования — предлагаю ANSI C
2. среда разработки — не представляю
3. аппаратная среда разработки — предлагаемая плата http://www.olimex.co…478-STK-sch.gif все-таки че-то сложновата — много встроенных источников питания, Езернет, встроенная поддержка USB… Это конечно все хорошо, но попроще может есть? Допустим купим мы ее в Чип-Дипе http://www.chipdip.r…891349762.aspx. Покупать надо от 2-х штук — тогда за 10т.р каждая. Надо договорится что у всех участников проекта будет одинаковая инструментальная и аппаратная среда.
4. Встроенная ОС — uLinux идет с платой. Под Linux и SCO я программировал сетевые задачи, надо смотреть что за зверь uLinux. В принципе, если там уже реализован интерфейс с LCD на уровне устройства ввода-вывода /dev/vb0 например, то есть возможность юзать библиотеки типа LIBJPG, LIBMOTION. Т.е. это фактически программирование под ОС. Не скатимся мы к КПК с его глюками…
Сообщение отредактировано Evgeny_: 30 September 2009 — 00:35
Evgeny_ (29 September 2009 — 20:19):
Согласен. Завязавшись на TFT смена типа дисплея сводится к замене разъема и правке драйвера.
Evgeny_ (29 September 2009 — 20:19):
2. среда разработки — не представляю
1) согласен. Можно с плюсами. Чем больше пишу на плюсах, тем сильнее не хватает их фич в Plain C.
2) Yagarto = сборка arm-gcc под винду + оболочка Eclipse с плугином CDT. Осваивается очень быстро, имеет встроенную поддержку дебаггера GDB. Собственно альтернатив gcc для открытого проекта на ARM нет. К эклипсе можно легко подцепить MinGW (сборка gcc под винду) и писать в нем писишные части (собственно так и делаю). Оболочка у каждого разработчика может быть своя по вкусу. Из оболочек на память приходит Code::Blocks, но у меня с ней дружба не сложилась.
Evgeny_ (29 September 2009 — 20:19):
Если вопрос стоит так конкретно — поищем целенаправленно. Это первое, что на слуху. Обычно на стартер-киты ставят все интерфейсы, которые может процессор. Это и понятно — на то он и стартер-кит, чтобы все пощупать. Могу сделать свой вклад — развести и изготовить, скажем, десяток плат в обмен на индикатор и проц (у нас их штучно тащить долго и дорого, у вас — они есть в mt-system). Платы будут двусторонние.
Evgeny_ (29 September 2009 — 20:19):
Да. Минус — некоторое время на старт ОС при включении. Плюс — можно зайти в авиагоризонт по ssh и поднять в нем веб-сервер 🙂
Вы забыли еще 5:
Система контроля версий для совместной работы над исходниками. Предлагаю Subversion. CVS предлагаю не рассматривать как морально устаревшую. Еще на слуху git, bazaar, mercurial, но с ними не работал.
Плюс в копилку Олегу: На старый наладонник тоже можно поставить линух.
Есть еще один вариант — ТФТ-Компаньон.
Сообщение отредактировано САБ: 29 September 2009 — 23:01
САБ, on 29 September 2009 — 21:58, said:
GCC под виндой это извращение :sarcastic: Посмотрю на этого зверя. У меня дизайн идет на Fedore.
САБ, on 29 September 2009 — 21:58, said:
Сам пользуюсь такими китами в разработках — удобно. Просто чип езернета + усб + рс232 = половина стоимости кита. Жалко, ведь не нужно нам это. Или нужно?
САБ, on 29 September 2009 — 21:58, said:
Нет, сделаем рабочий образ. Т.е. будем не запускать ОС а загружать образ работающей ОС. Значительно быстрее. Типа Суспенда в винде.
САБ, on 29 September 2009 — 21:58, said:
Система контроля версий для совместной работы над исходниками. Предлагаю Subversion. CVS предлагаю не рассматривать как морально устаревшую. Еще на слуху git, bazaar, mercurial, но с ними не работал.
CVS какую скажете. Я использовал преимущественно CVS. Давайте Subversion. Главное чтоб работать не мешало.
САБ, on 29 September 2009 — 21:58, said:
Смотрел я его недавно — не понравилось. Идея с готовой ОС — быстрее в разработке. А там надо писать либы к их либам. Ибо либы там есть, но примитивные — типа нарисовать точку, линию, закрасить прямоугольник. Нам это мало поможет. Да и SPI на свой контроллер заводить — тоже как то неразумно. Два мощных проца рядом ради чего? Картинку двигать? Но ребята молодцы, для встроенных систем то что надо.
Еще вопрос №6 бюджет конечного устройства. Предлагаю 150$ или 5т.р. Верхний хард-лимит.
вопрос №7 срок разработки. Предлагаю 3 месяца до работающего прототипа на базе отладочного комплекта.
вопрос №8 бюджет разработки. Предлагаю 25т.р. на участника. Верхний хард-лимит включающий все расходы на разработку кроме личного времени участника.
вопрос №9 участники и их область ответственности. Здесь вообще открыт вопрос. На вскидку, требуется
а) разработать софт графического интерфейса
б) разработать системный софт сязи через шину (Езернет? CAN? ARCC? FSBUS? IOCARDS?) с роутером (каким?)
в) разработать электрическую схему
г) развести платы
д) разработать и изготовить удобоваримый корпус
е) привезти партию микросхем и дисплеев
ж) собрать все это и прошить
вопрос №10 открытый код?
вопрос №11 поддержка? какого уровня?
вопрос №12 среда взаимодействия/форум. На каком сайте? Без модерирования работать здесь будет неудобно. Могут нам дать здесь что-то типа ветки форум разработчиков с возможностью модерировать внутри нее самим? Просто надо было бы вынести часть идей и обсуждений по разным подтемам. Например отдельная тема постановки и обсуждения ТЗ и отдельная тема поддержки.
Сообщение отредактировано Evgeny_: 30 September 2009 — 02:31
это Вы вот сейчас не со мной говорите, да.. -)
В конечной ожидаемой стоимости в 150$ этот прекрасный прибор укладывается?
ухожу-ухожу :huh:
Сообщение отредактировано BestCat: 29 September 2009 — 23:11
Дисплей, например, вот этот: http://www.efind.ru/…search=MI0570ET
Или я на ebay брал для своего наладонника TD035STED4 за $30
Сообщение отредактировано САБ: 29 September 2009 — 23:34
Evgeny_ (29 September 2009 — 22:23):
Тогда вам придется собрать arm-elf-gcc. У меня опыта в линухе мало, в разработке под него — вообще никакого. То есть gcc соберу и Hello, world! сотворю, но что-то более серьезное не приходилось.
Evgeny_ (29 September 2009 — 22:23):
от эзернета там PHY, транс и разъем. Контроллер MAC на борту LPC. Почему бы и нет? Свичи стоят копейки, роутер может кидать в эзернет, скорость выше головы. Если бы пришлось ставить внешний MAC, то можно было бы подумать, а так — почему бы эзернету не быть основным интерфейсом? SD, USB, RS скорее не нужны.
Evgeny_ (29 September 2009 — 22:23):
Давайте subversion. По срокам — я бы не был столь оптимистичен. Все-таки у каждого есть основная работа, у кого-то семья.
Evgeny_ (29 September 2009 — 22:23):
а) разработать софт графического интерфейса
б) разработать системный софт сязи через шину (Езернет? CAN? ARCC? FSBUS? IOCARDS?) с роутером (каким?)
в) разработать электрическую схему
г) развести платы
д) разработать и изготовить удобоваримый корпус
е) привезти партию микросхем и дисплеев
ж) собрать все это и прошить
Могу по схеме, разводке. Насчет шины — стоит серьезно подумать об эзернете. Есть еще один плюс — можем сделать свой протокол прибора, а адаптацию под разные роутеры делать простой програмкой, имеющей два IP порта — вход и выход.
Evgeny_ (29 September 2009 — 22:23):
Думаю — да. Под GPL. Разработал что-что свое на базе нашего — поделись.
Evgeny_ (29 September 2009 — 22:23):
Исправление багов. Что еще можно обещать?Если организовать мелкосерийное производство — то там и гарантийный ремонт и много всего может потянуться.
Evgeny_ (29 September 2009 — 22:23):
Может лучше скайп? Оперативнее, и никому не мешаем. Можно создать группу на googlegroups, там что-то типа списков рассылки, фидошных эхо-конференций. Можно сделать комнату в jabber.
Сообщение отредактировано САБ: 30 September 2009 — 03:22
САБ (30 September 2009 — 02:17):
Я могу написать часть, касающуюся взаимодействия по Езернету. Думаю имеющиеся наработки позволят это сделать быстро. Давайте для начала ограничимся стыком по Езернет с SIOC? В документации написанно, что драйвер Езернета встроен в ucLinux. Это очень радует, особенно учитывая отсутсвие аппаратной поддержки TCP/UDP в LCP. Не понравилось отсутствие поддержки драйверами шины CAN. Может забыли написать, что есть… Скачал образ uCLinux, попробую на работе поставить виртуалку ARM и запустить на ней линукс. Пока о внутренностях того Линукса ничего сказать не могу, кроме того что ссш-сервера я в нем на вскидку не нашел. Телнет, идент, мингеттиай — есть. Ну во всяком случае файлы с таким именем есть 🙂
Теперь о нашей теме.
Имеются дешевые дисплеи в компании мегалит http://www.tdmegalit.ru. Производитель тайвань. Мне понравились:
— AO35QN02 320×240 угол обзора 120/105 видимая область 70х53 габариты 77х64 диагональ 3,5дюйма, стоит 1200 рублей.
— AT056TN52 640×480 угол 140/120 видимая 113х85 габарит 127х100 диагональ 5,6, стоит 2100 рублей.
Мальчики что представляли эту компанию оказались немного (простите иначе не скажешь) туповатыми. Путались в интерфейсах, напряжениях (сказали что инвертор нужен для светодиодной подсветки а катодная лампа включается в 5 вольт) и прочем. Короче польза этой конторы только в том, что на стенде были реально работающие образцы а на брошюре был адрес сайта.
Вторая контора КТЦ-МК. Серьезные дядьки, приятно пообщаться, тему рубят сильнее меня. Цены у них подороже (прайс не дали, называли цену на то во что тыкал), но тоже сопоставимо:
— PVI PD035VX2 3,5 дюйма, 640х480, COG
— PVI PD050VX2 5,0 дюйма, 640х480, LVSD/TTL
— OSD OSD050TN23 5,0 дюйма, 640х480, 6-6-6-RGB
Там же узнал о новом интерфейсе LVDS который сейчас активно продвигается производителями LCD — и они же дали наводки на LPC, которые уже его поддерживают, включая диск с даташитами на дисплеи и контроллеры. Контроллеры которые они продают — это преобразователи интерфейса на все тех же LPC но с зашитой на заводе программой, т.е. нужен внешний процессор управления. Глупо для нашей задачи ИМХО, т.к. LPC уже имеет все что нам нужно, включая, например, 160 программируемых входов-выходов (для 2470), USB, i2c, CAN, Ethernet и прочее. Т.е. использовать этот чип только для развертки экрана — я считаю плохим решением.
ИТОГО: дисплей для нашей задачки можно купить за 2т.р. с очень высоким разрешением (как у КПК 640х480). Пока в бюджет укладываемся. Во сколько обойдется корпус, кто может сказать?
http://img176.imageshack.us/img176/6016/02102009602.jpg
Сообщение отредактировано max250590: 02 October 2009 — 22:24
max250590 (02 October 2009 — 21:23):
К SIOC есть софт для КПК. Но такой КПК стоит более 5т.р. установленные бюджетом — не удовлетворяет ТЗ.
Купил сегодня для пробы дисплей 3,5 дюйма 320х240 за 1100 рублей в той конторе что дешевле (см. выше)
По приходу домой оказалось что плата, купленная с дисплеем, с ним не совместима. Мда, тупые мальчики не только на выставке, но и в офисе… Остался на выходные без игрушки… :ranting2: :ranting2: :ranting2:
Прикрепленные изображения
Сообщение отредактировано Evgeny_: 03 October 2009 — 03:53
Прикрепленные изображения
Evgeny_, on 01 October 2009 — 22:14, said:
Кокпитостроители успешно режут матрицы стеклорезом и сверлят (правда без «перезаполнения химией» — за дыркой останутся две чёрные полосы) абсолютно бесплатно 🙂
601 (03 October 2009 — 13:36):
Так ведь площадь отображения падает… Смысл сверлить? Там и так очень тоненькие рамки (2 и 4 мм по сторонам). А вот попробовать срезать стеклорезом… Че то мне сложно это представить. И почему не вытекает химия? там вроде не ячеимстая структура. Вы меня прям заинтриговали — жалко нет убитого стекла. Но думаю к концу разработки появятся (в даташитах сказанно что все 4 напряжения на драйверы надо подавать и снимать строго последовательно и с задержками, иначе сгорит).
fiyrus (03 October 2009 — 14:37):
1100 уже отдано..Изготовить в Резоните двухстороннюю печатную плату контроллера такого размера — это еще +2000 руб… Уже 3100 руб…
Плата штатная стоит 300 рублей, содержит инверторы для питания и LPC для развертки аналогового сигнала. Нам она не нужна.
Контроллер на базе все того же LPC который мы планируем сделать должен уложиться в 1т.р. из которых 700 рублей компоненты и 300 рублей печатная плата. Сборка… Это вопрос. Шаг ножек очень маленький у LPC и другого не бывает. Я имею опыт выпайки/впайки таких компонент, но, думаю, у людей без опыта возникнут сложности с этим.
Т.е. пока стоимость складывается:
дисплей — 1100р.
печатка — 300р.
компоненты 700р.
корпус — вопрос открыт, но думаю предел — 1000р.
разьемы и трансформаторы езернет (если он будет) — 700р.
ИТОГО: 3800р. для мелкой серии. пока.
==
Эта хрень стоит 130$. В ней прошиты 6 видов приборов. С ней же поставляется SDK для программирования.
Пока не ясно где находится сама графика прибора — или в памяти самого прибора или же она быстренько передается в прибор через USB во вермя инициализации дров. Скорее всего первое. В этом случае остается открытый вопрос — можно ли залить в это чудо свой прибор? ..
Пока очень много вопросов но налие SDK радует.
Еще возможно получится так что пока ббудет тратится время на изобретение собственного прибора , сайтек реализает всю необходимую линейку приборов и снизит цены до 100$ за готовое решение. Скорее всего так и произодет в ближайший год.
===
По приходу домой оказалось что плата, купленная с дисплеем, с ним не совместима. Мда, тупые мальчики не только на выставке, но и в офисе..
==
Это нормальное явление. Вы не забывайте что им нужны деньги, вам совсем другое. Они не обязаны за вас думать! Это же продавцы! Что хотите-то и продадут. Я не знаю ниодной торговой конторы в москве которая имела бы своих специалистов вэтом вопросе. На примере контроллеров — один только «тритон» — является дистрибютором микрочипа на территории СНГ и имеет свою тестовую лабораторию с двумя специалистами в области микроконтроллеров. Они такой бы лажи не допустили. С экранами все хуже. Остальные-реселлеры (спекулянты простонароде) которые продают всё подряд не задумываясь о совместимости того чего они продают. За такими нужен глаз да гдаз.. 😀
Из моего опыта — чем меньше продавцы знают зачем вам это нужно — тем меньше шансов сбить вас с вашего пути! А то часто полагаешся на их «опыт» а по приезду выясняется что это вообще не то что нужно…
Кстати, плата сколько стоит? И предполагаемая сумма контроллера к этому экрану ? Не выйдеи ли дороже самого КПК за 5 тыщ ?
1100 уже отдано..Изготовить в Резоните двухстороннюю печатную плату контроллера такого размера — это еще +2000 руб… Уже 3100 руб…
Или я ошибаюсь ?
Сообщение отредактировано fiyrus: 03 October 2009 — 15:46
Я согласен со всем что Вы сказали, тем более что чип-дип вообще охамели последние пол-года. Накрутка под 1000% на некоторые запчасти для единичных заказов. Может будет иметь смысл слать китами или собранной платой. Заказ 300 рублей на плату — это при серии, конечно. Т.е. если заказывать, то два-три квадратных метра, конечно. Вопрос сколько одному человеку нужно приборов. Если это 5-6, то и у него цена будет до 1000р за плату. Кроме того, не заню о Резоните, но в Ирбисе можно свой шаблон повторно запускать в производство. Т.е. если я один раз сделал подготовку, пусть кто хочет себе их заказывает из архива Ирбиса без лишниз затрат.
К этому конечно нужно стремиться, но по факту, обычно с выхода в серию версии 2-3 уходит на доводку аппаратной части. Будем реалистами, аппаратные ошибки будут. Будет проблема совместимости с некоторыми дисплеями и уж тем более с некоторыми подсветками. Но будем стараться. Наверное надо будет разместить на плате кусочек макетной области, что бы если что, можно было припаять пяток деталек.
Честно сказать, у меня нет паяльной станции, у меня старая школа и 20Вт паяльник с отбитым медным жалом. Но это не мешает
работать с SMD. Люди которые совсем не умеют работать с паяльником вообще, должны будут заказать плату со сборкой, иначе все пожгут — здесь даже пробовать не стоит. Люди поопытнее, наверное соберут. Не с первого раза, но соберут. Надо будет видео выложить по впайке-выпайке тараканов. Если перегревать не будут (терпения хватит), то с некоторого раза получится.
Пока жду понедельника, возникла мысль о интерфейсах. Думаю можно предусмотреть:
VGA: DSUB
AV: колокольчик
CAN: ?
RS232: DB9
Ethernet: RJ45
ARCC (если поделитесь):
USB:
FSBUS:
IOCARDS:
Ну это все не сразу, конечно, но в аппаратной части предусмотреть можно. Что думаете?
==
Это меняет дело, если плата будет одна на все типы приборов. Хотя вобщем то ничто не мешает ращработать такую плату.
===
Пока жду понедельника, возникла мысль о интерфейсах. Думаю можно предусмотреть:
Всё в одимн флакон вряд ли уместите. На мой звзгляд при выборе шины нужно учитывать скорость передачи. Очевидно что чем выше тем лучше. Все упирается в эту пресловутую длину пакета. Чем она меньше во времени тем меньше будет третитяся времени на ее прием-передачу и в некоторых приложениях меньше будет тратится процессорное время на обработку. Еще не маловажен объем полезной информации передаваемый за 1 фрейм. Чем больше тем лучше. Возможно придется по шине гонять образ прибора в виде BMP дампов из памяти компа. По прикидкам по Ethernet используя UDP можно передать в одном фрейме образ экарана 320х320 точек.
Я бы предпочет Ethernet по ряду причин. Скорость 100 мбит и выше. Это в 100 раз выше чем 1 мбит. Делай протокол как угодно! Еще не маловажно то что очень много симуляторов общаются именно по UPD. Например LockOn использует LUA скрипт где общение по UDP штатная часть и написание роутера сводится к одному TXT файлу. Simconnect , x-plane тоже общаются с внешним миром через UDP. Будет очень удобно воткнуть в Ethernet хаб прибор и наслаждатся им без установки дров.
В случае с USB придется писать свой WDM драйвер. А это уже огромная трата сил на его отладку и изучению DDK. Годится только в промышленно-коммерческом массовом применении устройств. Не годится для прямого общения с движками симуляторов работающих на UDP протоколе.
RS232=ARCC . Огромный плюс ARCC в том что она единственная поддерживает ПТ. ПТ -самый популярный проект среди РОссийских симмеров для реализации его в виде железа. У ARCC уже сйечас есть небольшая армия пользователей ПТ которым уже сейчас нужны такие приборы на свои железные панели КВС. Если у прибора будет RS232 который сможет аппаратно работать на скорости 1.25мбит — адаптировать его под протокол ARCC не составит труда.
FSBUS — рассматривается даже очень. Сейчас у роутера FSBUS — это могучий скрипт за основу которого взят или Visualbasic или C+ Это объектно ориентированная среда программирования — в этих роутерах есть все инструменты для написания могучей логики управления чем угодно причем по уровню сложности и решаемым задачам он будет на две головы выше скрипта IOcards. Интерфейс RS232 скорость 19.2 кбит. Для передачи данных для стрелок хватит и этой сокрости. Есть правда онраничение в протоколе — до 31 устройства. Это общее количество приборов или клавиатур или шаговиков или сервомоторов которые можно подключить к FSBUS. По этой причине на FSBUS полнофункциональный кокпит не построишь да и с ПТ он не дружит.
IOcards- рассматривается в первую очередь. SIOC есть SIOC. Правда с нестандартом а-ля ПТ не пашет. Российские любители ПТ будут в стороне.
VGA Dsub — на каждый прибор по видеокарте ?
CAN — потребуется базовый блок конвертер CAN во что то удобоваримое для ПК.
Я пока не встречал ПК с поддержкой САN .. И не встречал PCI плат для ПК.
Вобщем шина сама в себе как раз для автомобилей.
Из всего вышесказанного на мой взгляд в первую очередь нужно рассматривать Ethernet во вторрую RS232.
P.S. подозреваю, что реализация входа VGA может по стоимости переплюнуть основной контроллер — потребуются спецмикросхемы, которые практически недоступны в розницу и с которыми не так-то просто подружить обычный контроллер. Практически получится ЖКИ-монитор в котором контроллер будет рисовать картинки тем же методом, которым рисуются меню настройки.
Это не верно. Размер кадра ограничен параметром MTU (Max. transmitt unit). Для локальной сети он обычно равен 1500 байт. Для АДСЛ обычно 490 байт. Т.е. если даже его программно установить в 65000, то неизбежно появление коллизий при использовании хабов. Кроме того, роутеры все равно режут пакеты на несколько, если они превышают допустимые размеры среды, только делают это тихо. И возможна ситуация когда у какого-то пользователя оборудование не будет пропускать эти пакеты, и помочь мы ему не сможем. Да и не коширно это — менять рекомендуемые параметры физической среды без серьезного обоснования. Передавать картинку, тем более в формате BMP думаю не правильно в корне. Объем кадра 320х240 при глубине 8 бит на цвет это 230килобайт (320х240х3х8/8). Скорость Езернета 10мБит (а именно столько у большинства дешевых контроллеров на борту включая ПИК). Пусть у нас 5 приборов и среда загружена на 30% (максимально рекомендуемая нагрузка на Езернет). Тогда, частота кадров каждого прибора будет равна 10.000.000/8/5/230.000 = 1,08 (один) кадра в секунду. Даже если взять контроллер на 100 мбит, получем 10к/с. Выкидываем. Ну уж совсем на худой конец JPG, а вообще, для нашей задачи оптимально Вейвлет-сжатие. Но я думаю проще генерировать картинку прибора по переменной в самом девайсе. За подложку — можно взять фото реального прибора, и рисовать на нем стрелку и блинкеры простыми математическими ОР/КСОР. Этим можно обеспечить плавность хода и высокую частоту прибора. Т.е. если прибор получает новое значение, запускается математический алгоритм кручения стрелки к нужной позиции. Тогда, зная этот параметр у реального прибора, можно сделать реакцию на изменение у нашего прибора неотличимой от оригинала. По крайней мере я пока думаю пробовать делать именно так.
Беглый поиск по SimConnect, SIOC, x-plane, LUA — дал кучу обсуждений глюков, SDK, презентаций в паур-поинте, продажи приборов и прочее. Прошу, дайте ссылки на актуальные технические описания протокола клиента-прибора. Просто я исхожу из того, что если Вы хотите чтобы эти протоколы поддерживались, наверное у Вас есть определенный задел и Вы точно знаете где это лежит.
Вот ссылка на IOCP, которую мне прислал vitabutch. Описание протокола x-plane идет вместе с ним в папке документации. Прикладываю. Какая-то картинка по SIOC с описанием есть вот в этом сообщении от vitabutch. Видимо он глубоко копал эту тему, его и надо пытать.
LUA — вообще интерпретируемый язык программирования.
Прикрепленные файлы
Sending Data to X-Plane.zip (8,06К)
Количество загрузок:: 11
http://www.lockon.ru…default&lang=ru