Σελίδα 5 από 5 ΠρώτηΠρώτη ... 3 4 5
Εμφάνιση αποτελεσμάτων : 41 έως 44 από 44

Θέμα: βοηθεια σε κωδικα

  1. #41
    Μέλος Το avatar του χρήστη stinger
    Όνομα
    Σπυρος
    Εγγραφή
    Dec 2010
    Περιοχή
    ανδραβιδα
    Μηνύματα
    1.372

    Προεπιλογή

    Παράθεση Αρχικό μήνυμα από nkarama Εμφάνιση μηνυμάτων
    Δεν ξέρω ακριβώς την υλοποίηση της Software serial αλλά θα δοκίαμζα τα εξής:

    Α) για να επιβεβαιώσεις ότι δεν είναι θέμα επικοινωνίας του arduino με την GSM module δοκίμασε να αλλάξεις την σειρά εκτύπωσης. Δηλαδη βάλε το SigQ πριν πχ την θερμοκρασία.
    Β) μιας και η μοναδική διαφορά όλων των μεταβλητών που τυπώνεις, είναι ότι τ SigQ είναι char array θα δοκίμαζα να το μετατρέψω σε έναν ακέραιο και να στείλω αυτόν. Μπορεί να είναι θέμα υλοποίησης της SoftwareSerial Print και κάτι να μην δουλεύει καλά με char arrays...

    Edit: Μάλλον δεν κατάλαβα σωστά το πρόβλημα. Αν το USB είναι συνδεδεμένο, παίρνεις την ένδιεξη του SigQ ΚΑΙ στο SMS και στην σειριακή? Και όταν το καλώδιο ΔΕΝ είναι συνδεμένο τότε στο SMS δεν έχει το SigQ?
    Α..το εκανα κι αυτο και δεν αλλαξε κατι ..παλι κενο μυνημα επαιρνα σε οτι θεση κι αν εβαλα την SigQ
    B...αυτο πρεπει να το ψαξω
    Edit: σωστα καταλαβες

    0 Not allowed! Not allowed!

  2. #42
    Μέλος Το avatar του χρήστη SProg
    Όνομα
    Σάββας
    Εγγραφή
    Mar 2014
    Περιοχή
    Θεσσαλονίκη
    Μηνύματα
    2.612

    Προεπιλογή

    Αυτο που σου ειπα να κανεις μπορεις και να το προσομοιώσεις.

    Βάλε ενα μεγάλο delay πριν ζητήσεις το CSQ και κανε μια διακοπή τροφοδοσίας στο modem.

    0 Not allowed! Not allowed!

  3. #43
    Μέλος Το avatar του χρήστη stinger
    Όνομα
    Σπυρος
    Εγγραφή
    Dec 2010
    Περιοχή
    ανδραβιδα
    Μηνύματα
    1.372

    Προεπιλογή

    void setup(void) {
    mySerial.begin(115200); // Setting the baud rate of GSM Module
    Serial.begin(115200); // Setting the baud rate of Serial Monitor (Arduino)

    Power_UP();
    delay(2000);


    }


    void Power_UP()
    {

    Serial.println("Starting GSM ...");
    pinMode(9, OUTPUT);
    digitalWrite(9,HIGH);
    delay(1000);
    digitalWrite(9,LOW);
    delay(2000);
    digitalWrite(9,HIGH);
    delay(3000);
    // anamoni gia apantisi gsm

    {
    while(mySerial.available() != 0) { Serial.read(); }
    mySerial.println("AT+CSQ");
    delay(500);
    while(mySerial.available()!=0 && incoming_byte_counter < (SigQ_Len-2))
    {
    temp=mySerial.read();
    Serial.write(temp);
    if((temp >= '0' && temp <= '9') || (temp == '.') || (temp == ',')) {
    SigQ[i++] = temp;
    SigQ[i]= 0x00;
    }
    incoming_byte_counter++;
    }
    SigQ[SigQ_Len-1]= 0x00; /* Secure is NULL terminated */
    }
    Serial.println("GSM ready ...");
    }
    προσεθεσα τα παραπανω στον κωδικα προκειμενου να κανω επανεκινηση στο μοντεμ μεσω μιας εξοδου η οποια τριγκαρει ενα μοσφετ ωστε να διακοπει και να επανατροφοδοτηθει το μοντεμ...
    εκανα μια δοκιμη και φαινεται οτι θα λυθει το θεμα....περισσοτερες δοκιμες θα γινουν με την ζυγαρια οταν σε λιγες μερες θα κανει διαλειμα η σεζον.....
    θα επανελθω με αποτελεσματα....ευχαριστω ολους

    0 Not allowed! Not allowed!

  4. #44
    Μέλος Το avatar του χρήστη stinger
    Όνομα
    Σπυρος
    Εγγραφή
    Dec 2010
    Περιοχή
    ανδραβιδα
    Μηνύματα
    1.372

    Προεπιλογή

    καλημερα σε ολους και καλες γιορτες με υγεια...
    για να μην ανοιγω νεο θεμα θα ηθελα μια μικρη βοηθεια σε ενα θεμα ...
    προσπαθω μεσω softwareSerial να κανω μια αναπαντητη στο μοντεμ και να μου στειλει ενα μυνημα...
    το μοντεμ λειτουργει κανονικα και βλεπω μεσω τερματικου τα RING απο την κληση ...το θεμα μου ειναι οτι δεν τερματιζει την κληση στο πρωτο RING ωστε να στειλει το μυνημα...παραθετω τον κωδικα και οποιος μπορει ας βοηθησει


    #include <SoftwareSerial.h>

    SoftwareSerial mySerial(7, ;

    String instr="";
    int ring=0;
    int i=0,temp=0;


    void setup()
    {

    Serial.begin(115200);


    mySerial.begin(115200);


    Serial.println("Initializing...");
    delay(1000);


    mySerial.println("AT"); //Once the handshake test is successful, it will back to OK
    updateSerial();

    }
    void loop()
    {
    updateSerial();

    serialEvent();
    if(ring==1)
    {
    Serial.println("ATH");
    delay(500);

    }
    sms();
    }


    void sms(){
    mySerial.println("AT+CMGF=1");
    updateSerial();
    mySerial.println("AT+CMGS="+30698xxxxx"");
    updateSerial();
    mySerial.print("test message"); //text content
    updateSerial();
    mySerial.write(26);
    }


    void serialEvent()
    {
    while(Serial.available())
    {
    char ch=Serial.read();
    instr+=ch;
    i++;


    if(instr[i-4] == 'R' && instr[i-3] == 'I' && instr[i-2] == 'N' && instr[i-1] == 'G' )
    {
    ring=1;
    }


    if(instr.indexOf("NO CARRIER")>=0)
    {
    ring=0;
    i=0;
    }

    }
    }

    0 Not allowed! Not allowed!
    Τελευταία επεξεργασία από το χρήστη stinger : 26-12-21 στις 11:11

Σελίδα 5 από 5 ΠρώτηΠρώτη ... 3 4 5

Παρόμοια Θέματα

  1. βοηθεια με κωδικα
    By stinger in forum Μικροελεγκτές
    Απαντήσεις: 22
    Τελευταίο Μήνυμα: 01-03-21, 20:49
  2. ΜΙΑ ΒΟΗΘΕΙΑ ΜΕ ΚΩΔΙΚΑ
    By staurosv in forum Μικροελεγκτές
    Απαντήσεις: 2
    Τελευταίο Μήνυμα: 30-10-17, 09:08
  3. Βοηθεια με κωδικα στο MPLAB
    By gns13 in forum Μικροελεγκτές
    Απαντήσεις: 7
    Τελευταίο Μήνυμα: 14-05-17, 21:35
  4. arduino bug σε κωδικα...βοηθεια
    By gourtz in forum Μικροελεγκτές
    Απαντήσεις: 2
    Τελευταίο Μήνυμα: 09-02-17, 15:11
  5. βοηθεια με κωδικα arduino
    By krithisg in forum Μικροελεγκτές
    Απαντήσεις: 4
    Τελευταίο Μήνυμα: 10-03-15, 13:20

Δικαιώματα - Επιλογές

  • Δημιουργία θεμάτων: Όχι
  • Υποβολή μηνυμάτων: Όχι
  • Σύναψη αρχείων: Όχι
  • Επεξεργασία μηνυμάτων: Όχι
  •  
  • BB code: σε λειτουργία
  • Smilies: σε λειτουργία
  • [IMG]: σε λειτουργία
  • [VIDEO] code is σε λειτουργία
  • HTML: εκτός λειτουργίας