Пытаюсь передавать данные с помощью встроенного TCP стека. Управление потоком - аппаратное(CTS). Делаю так: Даю команду AT+KTCPSND=(№сокета), (кол-во байт) и затем в цикле передаю данные, при этом слежу за CTS если она переходит в 1 останавливаю передачу данных, после перехода в 0 передачу возобновляю. За одну команду передаю не более 4кБ. После окончания передачи после таймаута в 50мс выдаю EOF последовательность. При передаче порядка 100кБ больше половины данных не доходит. На другом конце(на приеме) также модем со встроенным TCP/IP, пробовал sim300 и telit GT863. При этом с telitа на sim300 все проходит нормально. Так-же если замедлить передачу вставив, например, паузы около 1500мс после передачи каждого пакета то тоже потерь нет.
|