leggere un treno di impulsi

11 Anni 7 Mesi fa #1 da wega76
leggere un treno di impulsi è stato creato da wega76
Salve tra i vari progetti aperti che ho in costruzione devo farne un'altro ma non so da dove partire help :( .

Devo leggere da una porta del pic es.RB0 un treno di impulsi totale di 25msec con inizio con un fronte di discesa di 1,2msec poi inizia con due byte da 8.

Mi spiego meglio arriva un byte unico di 16 ma io li devo anche dividere in due da 8....

Mi complico sempre la vita...

Grazie


Ps. il display color da 240x320 procede riesco a gestirlo e scriverci dentro appena avrò tutto ben chiaro posto il risultato....

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

  • wega76
  • Avatar di wega76
  • New Member
  • New Member
Di più
11 Anni 7 Mesi fa #2 da StefA
Risposta da StefA al topic leggere un treno di impulsi
non potresti usare ad esempio la seriale, che trasmette 8 (anche 9) bit alla volta?
Per come vorresti fare tu, dovresti attivare un interrupt sul pin che riceve, poi quando passi da alto a basso inizi a contare con un timer, quando ripassi ad alto vedi il conteggio e se è 1,2msec sai che stanno arrivando dati, altrimenti aspetti che rivada basso.
Quando invece hai il bit di start, ogni tot msec vedi lo stato del pin e lo prendi per uno o zero.
Cosa devi far comunicare, se si può chiedere?
Per "byte unico di 16" intendi 16 bit, quindi due byte attaccati?

Ste

..avevano magari fatto lo sgambetto al ka, ma il sangue restava sempre più denso dell'acqua.. [cit.]

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

  • StefA
  • Avatar di StefA
  • Moderator
  • Moderator
Di più
11 Anni 7 Mesi fa #3 da wega76
Risposta da wega76 al topic leggere un treno di impulsi
Grazie StefA, hai ragione, effetivamente devo usare un interrupt e forse anche un timer.
Ti dico questo perchè gia lo "faccio" cioè io ho già il trasmettitore e il ricevitore con codice assembly.
Il ricevitore fa proprio quello che ho descritto riceve un treno di impulsi su un pin, praticamente lo sente (fronte di discesa) e inizia a costruire due byte da 8 bit che chiama BL (byte low) BH (byte high)totale 16 bit.
Sono due i codici assembly che stò analizzando fanno la stessa cosa, solo uno però fa uso di Timer esterno l'altro "conta".
Alla fine avro tipo (0xBF80) dove 80 = BL e BF = BH.

Ovviamente ho una tabella che descrive cosa significa 0xBF80 ecc..

Stò studiando il modo di implementarlo (codice assembly) nel mio progetto Display in C.
Mi serve per visualizzare immagini all'arrivo di tali Byte.

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

  • wega76
  • Avatar di wega76
  • New Member
  • New Member
Di più
Moderatori: Mauro LaurentiStefAMatteo Garia

Registrati al sito

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

Registrati al sito LaurTec.

Login