|
все-таки формат кадра пересылаемого из МК мне известен, то проблем нет. Например:
struct TSlon
{
char a;
int b;
} Slon;
Маппим на массив и получаем дырку в один байт. Всего размер 4 байта.
1 - a
2 - дырка
3 - мл. байт b
4 - ст. байт b
На ПЦ принимаем эти четыре байта. На ПЦ тоже такая же структура.
Slon.a = ReadComm(...); // 1 байт
ReadComm(...); // 2 байт
Slon.b = ReadComm(...); // 3 байт
Slon.b += ReadComm(...)*256; // 4 байт
Писишная программа должна знать формат кадра. Если не хочется слать лишний байт, то тогда можно на стороне МК аналогично сформировать пакет. Если структура небольшая, как эта, то оверхеда почти нет - все равно ведь надо заголовок приделывать и трейлер (с контрольной суммой). Но подход намного прямее. Конечно, если структура здоровенная, то на копировании много потеряешь, поэтому имеет смысл маппить. Т.ч. в каждом случае надо решать индивидуально.
E-mail: info@telesys.ru