Имеется связка "Компьютер - GPRS модем - счетчик стандарта ГОСТ IEC 61107—2011". GPRS модем подключен к COM порту. COM-порт инициируется обычным образом:
_port = new SerialPort(_comNumber)
{
BaudRate = _speed,
Parity = _stParity,
WriteTimeout = _tsT,
ReadTimeout = _rsT,
StopBits = _stBits,
DataBits = _dBits,
Handshake = Handshake.RequestToSend,
DtrEnable = true,
RtsEnable = true,
NewLine = Environment.NewLine
};
if(!_port.IsOpen)
try
{
_port.Open();
}
catch
{
}
_port.DataReceived += _port_DataReceived;
Процедура чтения COM-порта
protected delegate void dlgAddRes(string inStr);
private void _port_DataReceived(object sender, SerialDataReceivedEventArgs e)
{
var sp = (SerialPort) sender;
//var inData = sp.ReadExisting();
//if (inData.Length > 0)
// Dispatcher.Invoke(new dlgAddRes(Upg), inData);
var data = new byte[sp.BytesToRead];
sp.Read(data, 0, data.Length);
var inData = Encoding.Default.GetString(data);
if (inData.Length > 0)
Dispatcher.Invoke(new dlgAddRes(Upg), inData);
}
Установка связи через GPRS модем
_port.WriteLine("ATH0 \r\n"); // установка режима ожидания
System.Threading.Thread.Sleep(500);
_port.Write("AT+IFC=0,2 \r\n"); // устанавливается режим контроля над передачей
System.Threading.Thread.Sleep(500);
_port.Write("at+cbst=7,0,1 \r\n"); // устанавливается прозрачный режим
System.Threading.Thread.Sleep(500);
telNum = txtNum.Text.Trim();
if (!Regex.IsMatch(telNum, @"(8|\+)9[0-9]{8}"))
{
MessageBox.Show("Введенное значение не является корректным номером модема!", "Ошибка!",
MessageBoxButton.OK, MessageBoxImage.Error);
}
else
{
_port.Write("ATDT" + telNum + "\r\n");
System.Threading.Thread.Sleep(500);
}
Открытие COM-порта и установка связи по GPRS- модему проходят на ура. Далее отправляю запрос к счетчику
_port.Write("/?!\r\n");
System.Threading.Thread.Sleep(3000);
А в ответ - тишина..
Счетчик и модем исправны. С заводским ПО счетчика работают. Что я делаю не так?
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости