В CI сделать это
int number = 3510;
верхний символ = число >> 8;
нижний символ = число && 8;
SendByte (верхний);
SendByte (lower);
Где верхнее и нижнее будут оба = 54
В C # я делаю следующее:
int number = Convert.ToInt16 ("3510"); верхний байт = байт (число >> 8); младший байт = байт (число & 8); char upperc = Convert.ToChar (верхний); char lowerc = Convert.ToChar (нижний); data = "GETDM" + верхний + нижний; comport.Write (данные);
Однако в отладчике номер = 3510, верхний = 13 и нижний = 0 это не имеет смысла, если я изменю код на >> 6 upper = 54, что совершенно странно.
В основном я просто хочу получить старший и младший байт из 16-битного числа и отправить его через com-порт после "GETDM"
Как я могу это сделать? В C это так просто, но в C # я полностью сбит с толку.