1. К компьютеру подключил USB-RS232 адаптер. Если ввести ¨+++¨ в терминал COM4, то модем отвечает туда же ¨OK¨. Скорость 19200, вообще должно быть с XON XOFF, но при none тоже работает.
2. Логично, если я сейчас буду попробую то же сделать с Ардуино, то надо лишь правильно выставить скорость. Я нашел пример, с помощью которого можно с компьютера отправить ¨+++¨ на терминал COM5 на Ардуино, тогда Ардуино эти данные отправит на COM4 и они уйдут на модем. Но модем ответит ¨OK¨, а это ОК тоже можно взять с порта COM4 и отправить на COM5, тогда получается, что я могу управлять модемом все также с компьютера, но управлять фактически будет само Ардуино. Ок, вроде теория идеальна, если я все учел.
3. На практике получается так. Я загрузил такой скетч:
Код: Выделить всё
#include <SoftwareSerial.h>
SoftwareSerial mySerial(10, 11); // RX, TX
void setup() {
// Open serial communications and wait for port to open:
Serial.begin(19200);
while (!Serial) {
; // wait for serial port to connect. Needed for native USB port only
}
// set the data rate for the SoftwareSerial port
mySerial.begin(19200);
}
void loop() { // run over and over
if (Serial.available()) {
mySerial.write(Serial.read());
}
if (mySerial.available()) {
Serial.write(mySerial.read());
}
}Ок, тогда подключаю. К аппаратному Ком-порту модем. Ардуино так и остается на COM5. Моя логика: если я введу в COM5 ¨+++¨, то они передадутся на COM4 и, тем самым, на модем. Тогда модем должен ответить ОК, что появится в COM4 и попадет в COM5. Таким образом, отправив +++, я должен увидеть в терминале ОК. Так вот, не выходит. Модем просто как будто молчит. Что это может быть, что я могу не учитывать?





