Εμφάνιση αποτελεσμάτων : 1 έως 8 από 8

Θέμα: arduino data type

  1. #1
    Μέλος
    Όνομα
    Καλαρακης Μιχαλης
    Εγγραφή
    Jan 2011
    Περιοχή
    Ηρακλειο
    Μηνύματα
    2.043

    Προεπιλογή arduino data type

    Στο παράδειγμα που έχω ορίζει
    uint8_t data[256];
    και παρακάτω το χρησιμοποιεί με τις εντολές

    data[0] = 0x33;
    data[1] = 0x44;
    result = sl44x2.updateMainMemory(0x14, data, 10);

    Το data είναι το buffer που χρησιμοποιούν όλες του οι εντολές

    Τι θέλω
    να βάλω μέσα στο data τη λέξη kalarakis
    δηλαδή
    data[]="kalarakis"

    γνωρίζω ότι μπορώ να το κάνω ένα ένα Byte
    δηλ data[0]=161
    data[1]=65
    kok
    αλλά θέλω και το ανάποδο
    δηλαδή αν έχω ορίσει τη μεταβλητή my_str as string

    my_str=data[]

    0 Not allowed! Not allowed!

  2. #2
    Μέλος
    Όνομα
    Νίκος
    Εγγραφή
    Feb 2014
    Περιοχή
    Μοσχάτο
    Μηνύματα
    610

    Προεπιλογή

    Για να βάλεις την λέξη "kalarakis" μέσα σε ένα char array πρέπει να κάνεις strcpy.

    Δηλαδή strcpy(data, "kalarakis");

    0 Not allowed! Not allowed!

  3. #3
    Μέλος Το avatar του χρήστη manolena
    Όνομα
    Μάνος
    Εγγραφή
    Dec 2006
    Περιοχή
    Ελευσίνα
    Μηνύματα
    2.709

    Προεπιλογή

    Αν το ορίζεις εξ' αρχής, ισχύει:

    char my_str[] = "kalarakis";

    Μετά, με strcpy όπως παραπάνω.

    Σε κάθε περίπτωση, υπάρχουν εδώ αναφορές:

    https://www.arduino.cc/en/Reference/String

    0 Not allowed! Not allowed!

  4. #4
    Μέλος
    Όνομα
    Καλαρακης Μιχαλης
    Εγγραφή
    Jan 2011
    Περιοχή
    Ηρακλειο
    Μηνύματα
    2.043

    Προεπιλογή

    η εντολή που βάζει το string μέσα στο Buffer είναι η my_str.getBytes(data,9);

    π.χ
    uint8_t data[256];
    String my_str="kalarakis";
    my_str.getBytes(data,9); // to data einai orismeno uint8_t


    Τωρα θέλω το ανάποδο

    αφού διαβάσω τη και βάλω τα δεδομένα στο data
    να περάσω το πίνακα στο string
    δηλαδή

    my_str=data ΑΛΛΑ πια εντολή το κάνει αυτό στο arduino? Ατό ρωτώ τώρα

    0 Not allowed! Not allowed!

  5. #5
    Μέλος Το avatar του χρήστη Fire Doger
    Όνομα
    Στέφανος
    Εγγραφή
    Jan 2015
    Περιοχή
    .
    Μηνύματα
    1.519

    Προεπιλογή

    Κώδικας:
    char[] chArray = "some characters";
    String str(chArray);
    Καλό είναι για να μην παδεύεσαι και εσύ και περιμένεις πότε θα σου απαντήσει κάποιος στο φόρουμ τέτοια απλά πραγματάκια της C να τα ψάχνεις στο internet, έχει άπειρο υλικό και βρίσκεις απάντηση στο 1ο-2ο αποτέλεσμα του google.

    Για παράδειγμα έγραψα "how to convert char array to string in arduino" και το βρήκα στο πρώτο αποτέλεσμα απ' το StackOverflow (που είναι καθαρά για να λύνουν τέτοιες απορίες σε όλες τις γλώσσες).

    Και έχει και 3-4 διαφορετικούς τρόπους συνήθως και documentation και ποιο αναλυτικές απαντήσεις γιατί και πως.
    Όλα από εκεί τα ψάχνω γιατί μου παίρνει λιγότερο χρόνο και απ' το να ανοίξω ένα παλιό project και να δώ πως το είχα κάνει.

    0 Not allowed! Not allowed!

  6. #6
    Μέλος
    Όνομα
    Καλαρακης Μιχαλης
    Εγγραφή
    Jan 2011
    Περιοχή
    Ηρακλειο
    Μηνύματα
    2.043

    Προεπιλογή

    Αυτό που θέλω είναι να μετατρέψω ΤΟ ΠΙΝΑΚΑ data σε string
    to data είναι πίνακας τύπου uint8_t

    0 Not allowed! Not allowed!

  7. #7
    Μέλος Το avatar του χρήστη picdev
    Όνομα
    akis
    Εγγραφή
    Jul 2007
    Περιοχή
    ____
    Μηνύματα
    7.375

    Προεπιλογή

    το unsigned 8 ή το CHAR είναι το ίδιο , ο τρόπος αναπαράστασης αλλάζει 8 bit χωρίς πρόσημο και οι 2.
    δήλωσε το πίνακα char.

    Επισης μπορείς να κάνεις cast, δηλαδή να μετατρέψεις εναν τύπο σε έναν άλλον https://www.tutorialspoint.com/cprog...pe_casting.htm

    το string στην ουσία ειναι ενας πίνακας με char

    0 Not allowed! Not allowed!

  8. #8
    Μέλος
    Όνομα
    Νίκος
    Εγγραφή
    Feb 2014
    Περιοχή
    Μοσχάτο
    Μηνύματα
    610

    Προεπιλογή

    Μια διευκρίνηση. Στον κόσμο του Arduino (μπορεί και της C++ δεν το έχω ψάξει) όταν λέμε string εννοούμε ένα char array (και όπως λέει και ο Ακης παραπάνω ένα array απο uint8_t).
    Οταν λέμε String εννοούμε αντικείμενα της κλάσης String.

    Οπότε φαντάζομαι ότι ζητάς να μετατρέψεις ένα string (δηλαδή ένα πίνακα (array) απο char (ή uint8_t, το ίδιο είναι) σε ένα αντικείμενο της κλάσης String.
    Κατάλαβα καλά?

    0 Not allowed! Not allowed!

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

  1. Καλωδια F2 type για ups
    By DJman in forum Ερωτήσεις Αρχάριων
    Απαντήσεις: 6
    Τελευταίο Μήνυμα: 09-06-17, 22:29
  2. Deutsche type connector
    By nicolouris in forum Ερωτήσεις Αρχάριων
    Απαντήσεις: 4
    Τελευταίο Μήνυμα: 23-11-16, 08:06
  3. JAGUAR X-Type
    By tzvangel in forum Κυκλώματα για Auto & Moto
    Απαντήσεις: 1
    Τελευταίο Μήνυμα: 12-01-11, 12:35

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

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