Inviare byte multipli via usart

12 Anni 4 Mesi fa #1 da sharky
Inviare byte multipli via usart è stato creato da sharky
Ciao a tutti!

Io dovrei mandare il seguente pacchetto via usart:

@iiibb

Dove @ è il mio carattere di inizio pacchetto, iii sono tre integer da 0-255
E bb sono due bool...

Come faccio a inviarlo via usart usando il c18? Ho pensato a putrsUSART
Ma come posso convertire questo in stringa se i primi caratteri
Della tabella ascii e quelli oltre al 127 non sono stampabili? Cè un modo per
Inviare una serie di byte?

Grazie!!

Ciao

Igor

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • sharky
  • Senior Member
  • Senior Member
Di più
12 Anni 3 Mesi fa - 12 Anni 3 Mesi fa #2 da sharky
Risposta da sharky al topic Re: Inviare byte multipli via usart
nessuno puo aiutartmi?

sostanzialmente il mio problema é che ricevo sull usart un pacchetto cosi: (esempio)

fb 10 3f 5c 01 00

e vorrei salvare ogni singolo byte in una variabile a se...

poi vorrei mandare una serie di byte via usart (stessa lunghezza) in modo che il pc collegato dall altra parte lo riceva come un pachetto unico e non 6 pachetti a parte...


cioé: ricevo fb 10 3f 5c 01 00, elaboro tutti e sei i valori, e li restituisco aggiornati: fb 15 3b 5a 00 00

come posso fare?

grazie

ciao

igor
Ultima Modifica 12 Anni 3 Mesi fa da sharky.

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • sharky
  • Senior Member
  • Senior Member
Di più
12 Anni 3 Mesi fa - 12 Anni 3 Mesi fa #3 da gcupini
Risposta da gcupini al topic Re: Inviare byte multipli via usart
Ciao,
i dati Ricevuti sono in una stringa ? se si devi "staccare i singoli caratteri" e inserirli in variabili char o array di char? Se ho capito la tua richiesta.

Per rispedirli compatti devi ricostruire la stringa.
Devo dire che la tua spegazione non mi è molto chiara. Esempio i dati partono da un PC verso un PIC o vice versa? Quale programma usi per spedire e ricevere dal PIC?

Saluti
Ultima Modifica 12 Anni 3 Mesi fa da gcupini.

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • gcupini
  • Visitatori
  • Visitatori
12 Anni 3 Mesi fa #4 da sharky
Risposta da sharky al topic Re: Inviare byte multipli via usart
Ciao! Ti spiego la mia situazione! (prima di tutto scusa se scrivo male, ma in questo momento sto sull iphone...)

Allora, io ho un applicazione x iphone che si collega alla rete domestica e invia dei pacchetti di sei byte a un indirizzo specifico. A questo indirizzo o una scheda della roving networks che butta fuori dalla porta com tutto cio che gli arriva via telnet, e viceversa butta fuori via telnet al host connesso tutto cio che riceve via com...

In sostanza voglio far comunicare l iphone con il pic...

Questi pacchetti da sei byte contengono la posizione di alcuni slyder e lo stato di due bottoni...
Percio alcuni byte avranno un valore compreso tra 0 e 255.. Se lo tratto come una stringa avrò problemi con i caratteri ascii non stampabili!

Ho trovato esempi, ma tutti solo per inviare e ricevere un singolo byte e non un blocco di sei!

Come si fa??

Grazie!

Ciao

Igor

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • sharky
  • Senior Member
  • Senior Member
Di più
12 Anni 3 Mesi fa #5 da sharky
Risposta da sharky al topic Re: Inviare byte multipli via usart
sono riuscito a risolvere la parte riguardante la lettura!

ora mi resta il dubbio sulla scrittura! cioé come faccio a scrivere questo sull usart?

40 04 43 01 AA FF

putUSART é per stringhe, e questi valori hex non hanno un corrispondente ascii (escluso 40 che equivale alla@)...

come faccio?

grazie

ciao

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • sharky
  • Senior Member
  • Senior Member
Di più
Moderatori: Mauro LaurentiPinnaStefAMatteo Garia

Registrati al sito

Accedi a tutte le risorse e articoli non visibili pubblicamente, puoi registrarti con pochi passi.

Registrati al sito LaurTec.

Login