Serial monitor не выводит команды.
- Войдите на сайт для отправки комментариев
Пт, 29/07/2016 - 14:54
Такая вот беда. Хотелось отследить AT команды, но монитор порта ничего не выводит. Менял скорость порта, на все доступные, всё равно 0 эмоций.
Оборудование arduino uno и gsm shield sim900 с aliexpress
Все рабочее, так делал управление реле по смс, дозвон с шилда на телефон и смс с шилда г=на телефон. С этим всё ок. Но вот на монитор ничего не выводит.
Хрустальные шары нонче редкость. Поэтому лучше сразу приводить скетч и схему подключения.
а без скетча не должны появляться команды. например, при звонке на шилд?
Желтый: 7 пин
Оранжевый: 8 пин
Красный: 5 вольт
Черный: gnd
#include <SoftwareSerial.h> SoftwareSerial gprsSerial(7, 8); int btnPin = 12; boolean prevBtn = LOW; void setup() { gprsSerial.begin(19200); } void loop() { boolean currBtn = digitalRead(btnPin); if (prevBtn != currBtn && currBtn == HIGH) { //сразу после нажатия кнопки начинаем звонить по заданному номеру gprsSerial.println("ATD + +79031034424;"); } prevBtn = currBtn; }вот набросал программу с дальномером. Если расстояние меньше или равно 10 сантиметров, то звоним на указанный номер Иначе сбрасываем. Но как отследить в мониторе порта состояние звонка через AT+CLCC например? Если в loop пишу Serial.print("AT+CLCC"); То в мониторе просто идет это друг за другом AT+CLCC AT+CLCC AT+CLCC ........ Даже когда принимаю вызов, тоже самое #include<SoftwareSerial.h> SoftwareSerial gprsSerial(7,8); int echo=2; int trig=4; unsigned long timeUs=0; unsigned long distance=0; void setup() { gprsSerial.begin(19200); Serial.begin(9600); pinMode(trig, OUTPUT); } void loop() { digitalWrite(trig, HIGH); delayMicroseconds(10); digitalWrite(trig,LOW); timeUs=pulseIn(echo, HIGH); distance=timeUs/58; if(distance<=10) { gprsSerial.println("ATD+ +79xxxxxxxxx;"); Serial.print("AT+CLCC"); } else { gprsSerial.println("AT+CHUP"); } delay(100); }