Цитата(microchaos @ Jul 28 2011, 17:33)

А не будет ли проблема здесь:
ebdat9_01SendToModem( "AT+IPR=9600\r", sizeof("AT+IPR=9600\r"));
Дело в том, что sizeof("AT+IPR=9600\r") вернет 13, а не 12...
В вашем исходном тексте много подобных случаев.
Да, спасибо, эту "плюху" обнаружил, но не подумал, что в этом может быть причина.
К сожалению проверить сейчас не могу, в порту выжег случайно RxD, пока пользую UART.
На второй макетке проверю обязательно.
Что касается разбивки отправляемой фразы по 4 символа, нашел в чем дело,
программа Terminal2010 имеет настройку в блоке "Transmit", типа количество символов отправляемых за раз. Значение сбилось на 4-ку. Для чего нужна настройка сразу не понял, "результат превзошел ожидания". Установил значение в 0 - все полегчало. (Это было найдено на UART)
to CADiLO
Перестроить скорость у меня тоже не получилось.
UPD:
посмотрел еще раз свой исходник, как раз в модем данные отправляются корректно:
len=flEventBuffer.eventData.uartdata_evt.length;
ebdat9_01SendToModem(flEventBuffer.eventData.uartdata_evt.data, len);
Есть только строка
ebdat9_01SendToModem( "AT+IPR=9600\r", sizeof("AT+IPR=9600\r"));
которая отрабатывает нормально.
"лишние" нули выводились при передаче в UART
ebdat9_02SendToSerialPort(CMD_PMTK300, sizeof(CMD_PMTK300));
но на модеме-то это сказаться вряд-ли может....?
Сообщение отредактировал ap77 - Jul 28 2011, 15:58