collapse

* Posts Recentes

Emulador NES em ESP32 por dropes
[Hoje às 15:31]


Arame de Estendal por almamater
[Ontem às 16:16]


O que é isto ? por SerraCabo
[12 de Abril de 2024, 14:20]


Amplificador - Rockboard HA 1 In-Ear por almamater
[11 de Abril de 2024, 20:46]


Meu novo robô por josecarlos
[29 de Março de 2024, 18:30]


Bateria - Portátil por almamater
[25 de Março de 2024, 22:14]


Escolher Osciloscópio por jm_araujo
[06 de Fevereiro de 2024, 23:07]


TP4056 - Dúvida por dropes
[31 de Janeiro de 2024, 14:13]


Leitura de dados por Porta Serie por jm_araujo
[22 de Janeiro de 2024, 14:00]


Distancia Cabo por jm_araujo
[08 de Janeiro de 2024, 16:30]

Autor Tópico: Ajuda Siemens C35i, como o ligar ao arduino, comandos AT.  (Lida 74920 vezes)

0 Membros e 2 Visitantes estão a ver este tópico.

Offline rglove

  • Mini Robot
  • *
  • Mensagens: 527
Re: Ajuda Siemens C35i, como o ligar ao arduino, comandos AT.
« Responder #30 em: 12 de Agosto de 2012, 17:14 »
Porque nesse caso ele quer comunicar tanto com o computador como também com o telemóvel. Então utilizou outros 2 pinos para comunicar com o telemóvel e deixou os pinos 0 e 1 para a comunicação com o computador. Visto que o computador está ligado pelo cabo usb ao arduino não há cabos conectados aos pinos 0 e 1, mas os pinos são utilizados na mesma. O arduino uno tem 1 porta Serial (pinos 0 e 1) e o mega tem 4. Como o uno estava a usar a única porta que tem para comunicar com o computador (pelo cabo usb) ele usou a biblioteca para poder "criar" outra porta serial e assim poder comunicar com o telemóvel. Escolheu para o efeito os pinos 2 e 3, como podia ter escolhido outros (atenção que não dão todos).
Com o arduino mega podes apagar a linha em que ele declara a porta serial e podes usar os pinos rx3 e tx3 por exemplo para enviar os comandos AT para o telemóvel. Não há diferença nenhuma no código, simplesmente apagas aquela linha e substituis o nome que ele deu à ligação serial por Serial3. Caso uses os pinos rx2 e tx2 substituis por Serial2 e o mesmo acontece para os rx1 e rx2 (Serial1). Os pinos rx0 e tx0 não os podes utilizar pois estes estão a ser usados para comunicar com o computador.

Não sei se me expliquei bem.

Offline r16

  • Mini Robot
  • *
  • Mensagens: 339
Re: Ajuda Siemens C35i, como o ligar ao arduino, comandos AT.
« Responder #31 em: 12 de Agosto de 2012, 17:22 »
Sim explicaste ok liguei agora o tx do telemovel ao rx3 do arduino e o rx do telemovel ao tx3 do arduino..

agora falas aqui desta linha é:
SoftwareSerial phone=SoftwareSerial(rxPin, txPin);

ou qual sao as que tas a falar? para eu as modificar.

Offline rglove

  • Mini Robot
  • *
  • Mensagens: 527
Re: Ajuda Siemens C35i, como o ligar ao arduino, comandos AT.
« Responder #32 em: 12 de Agosto de 2012, 17:31 »
Para fazer esses testes basta este código:
Código: [Seleccione]
/*
HARDWARE SETUP
13 -Led pin Debug 13 (used for status)
*/

#define ledPin 13 //Used for DEBUG

void setup() 
{
  pinMode(ledPin,OUTPUT); // LED DEBUG
  //Serial -------------------------------------------------
  // Open serial communications and wait for port to open:
  Serial.begin(9600);  // DEBUG
  Serial3.begin(9600);
}

void loop() // run over and over
{
  if (Serial3.available()) Serial.write(Serial3.read());
  if (Serial.available()) Serial3.write(Serial.read());
}

Mas não vai fazer diferença. Acho que o problema não está no código e sim no hardware.

Já alterei o código para usares no mega. Faz o upload do código para o arduino e através do serial monitor que vem com o arduino ou com outro qualquer envias os comandos AT para o arduino que por sua vez envia para o telemóvel. Experimenta e diz se conseguiste.

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.733
  • Helpdesk do sitio
Re: Ajuda Siemens C35i, como o ligar ao arduino, comandos AT.
« Responder #33 em: 12 de Agosto de 2012, 17:42 »
Se tens um Arduino Mega não uses serial emulado em software, usa uma das portas serial nativas, em vez de fazeres Serial.begin fazer Serial1.begin ou Serial2.begin, é que é muito mais fiavel que usar emulações por software.
No Arduino Duemilanove/Uno não se usa tipicamente a porta serial por hardware, porque o mais certo é que interfere com a programação que é feita por Serial, e porque deixas de ter maneira de ter debug por serial.
Avr fanboy

Offline r16

  • Mini Robot
  • *
  • Mensagens: 339
Re: Ajuda Siemens C35i, como o ligar ao arduino, comandos AT.
« Responder #34 em: 12 de Agosto de 2012, 17:43 »
Compilei bem , abri o serial monitor escrevi AT nao aconteceu nada.

Tenho o tx do telemovel ligado directamente ao rx arduino.

O rx do telemovel ligado com uma resistencia de 12k e 18k para lhe dar 3v onde tenho ligado ao tx do arduino.

tenho a massa ligada a massa do arduino.

olhei para este projecto deste rapaz
http://lusorobotica.com/index.php?topic=4445.0

ele tem um c45 que usa os mesmos pinouts que eu e ele conseguio por a funcionar, mas usou um diodo de zener de 3.3...sera que é isso que ta a falhar???
que desespero.
« Última modificação: 12 de Agosto de 2012, 17:46 por r16 »

Offline rglove

  • Mini Robot
  • *
  • Mensagens: 527
Re: Ajuda Siemens C35i, como o ligar ao arduino, comandos AT.
« Responder #35 em: 12 de Agosto de 2012, 17:47 »
Ligaste ao rx3 e ao tx3 ou ao rx e ao tx?

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.733
  • Helpdesk do sitio
Re: Ajuda Siemens C35i, como o ligar ao arduino, comandos AT.
« Responder #36 em: 12 de Agosto de 2012, 17:47 »
O Zener serve para limitar a voltagem a 3.3v, faz o mesmo que o divisor resistivo.
Tens o telemovel ligado e estava funciona?
Já viste se o cabo de dados não está partido?
Avr fanboy

Offline r16

  • Mini Robot
  • *
  • Mensagens: 339
Re: Ajuda Siemens C35i, como o ligar ao arduino, comandos AT.
« Responder #37 em: 12 de Agosto de 2012, 17:59 »
o telemovel funciona,,,comprei em segunda mao.

ele so trazia carregador o que eu fiz foi abrir o conector onde tem la o fio da corrente e da massa,,, e depois artesanalmente pus la mais dois fios,,, o do tx e do rx... e fiz soldei la mais um da massa para ligar a massa do arduino.

posso tirar uma foto

Offline r16

  • Mini Robot
  • *
  • Mensagens: 339
Re: Ajuda Siemens C35i, como o ligar ao arduino, comandos AT.
« Responder #38 em: 12 de Agosto de 2012, 18:08 »
repararem noutra coisa... o rapaz que usa o siemens c45 tem no codigo dele:
http://lusorobotica.com/index.php?topic=4445.15

Código: [Seleccione]
#include <NewSoftSerial.h>

const int PIN_RX = 9;
const int PIN_TX =10;

NewSoftSerial com(PIN_RX, PIN_TX);

void setup() {
  [b]com.begin(19200);[/b]
  delay(3000);
com.println("ATD12045");
}
void loop() {
}


19200 enquanto eu 9600 tera alguma coisa a ver??

Offline rglove

  • Mini Robot
  • *
  • Mensagens: 527
Re: Ajuda Siemens C35i, como o ligar ao arduino, comandos AT.
« Responder #39 em: 12 de Agosto de 2012, 18:20 »
Experimenta, pode ser que seja esse o problema.

Offline r16

  • Mini Robot
  • *
  • Mensagens: 339
Re: Ajuda Siemens C35i, como o ligar ao arduino, comandos AT.
« Responder #40 em: 12 de Agosto de 2012, 18:28 »
ja exprimentei e nada...

Alias agora com o codigo que me deste so agora e que eu vi....

o led que diz TX ta sempre a acesso..

e quando abro o serial monitor.... aquela barra ca em baixo ta sempre a andar po lado direito...sozinha




Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.733
  • Helpdesk do sitio
Re: Ajuda Siemens C35i, como o ligar ao arduino, comandos AT.
« Responder #41 em: 12 de Agosto de 2012, 18:31 »
É porque está sempre a enviar dados para a porta serial.
Avr fanboy

Offline rglove

  • Mini Robot
  • *
  • Mensagens: 527
Re: Ajuda Siemens C35i, como o ligar ao arduino, comandos AT.
« Responder #42 em: 12 de Agosto de 2012, 18:35 »
Vê se no monitor tens o baud rate certo selecionado

Offline r16

  • Mini Robot
  • *
  • Mensagens: 339
Re: Ajuda Siemens C35i, como o ligar ao arduino, comandos AT.
« Responder #43 em: 12 de Agosto de 2012, 18:40 »
Código: [Seleccione]
/*
HARDWARE SETUP
13 -Led pin Debug 13 (used for status)
*/

#define ledPin 13 //Used for DEBUG

void setup() 
{
  pinMode(ledPin,OUTPUT); // LED DEBUG
  //Serial -------------------------------------------------
  // Open serial communications and wait for port to open:
  Serial.begin(9600);  // DEBUG
  Serial3.begin(9600);
}

void loop() // run over and over
{
  if (Serial3.available()) Serial.write(Serial3.read());
  if (Serial.available()) Serial3.write(Serial.read());
}


tenho bem seleccionado 9600...
mesmo sem o telemovel la ligado o tx ta sempre fixo.. como pode isto tar a enviar dados...
 :o :-\

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.733
  • Helpdesk do sitio
Re: Ajuda Siemens C35i, como o ligar ao arduino, comandos AT.
« Responder #44 em: 12 de Agosto de 2012, 18:47 »
Provavelmente os fios do Serial3 estão a flutuar sem nenhuma voltagem definida e o hardware de serial está simplesmente a ler ruido.
Avr fanboy