sfinge Inserito: 6 ottobre 2009 Segnala Share Inserito: 6 ottobre 2009 Ciao a tutti,Utilizzo un PIC16F876 e ho scritto in C una routine di ricezione caratteri e trasmissione caratteri utilizzando il compilatore della HTECH piccompiler.Fin qui tutto bene trametto da Hyperterminal un carattere e ne ricevo altri incrementando l'indice di un'array ad ogni richiesta di trasmissione.Ora:non riesco a capire come fare a trasmettere ad esempio verso il PC il contenuto di una variabile con ad esempio valore intero 115.Qualcuno mi può aiutare?Grazie anticipatamenteSaluti a tutti! Link al commento Condividi su altri siti More sharing options...
Livio Orsini Inserita: 6 ottobre 2009 Segnala Share Inserita: 6 ottobre 2009 Vediamo se ho capito esattamente. Tu non vuoi trasmettere il valore di 115 == 73h, ma proprio le 3 cifre 1,1,5. Se è così devi fare la conversione BCD ==> ASCII ed inviare un caratere alla volta. (Devo averne in una per 4 cifre proprio per i PIC, non ricordo se in asm o in "C" se ti interesa mandmi l'indirizzo email per MP)Poi c'è il sistema più semplice che prevede la trasmissione come stringa. Devi usare la funzione "printf" passando dati e formato. il compilatore HTECH dovrebbe avercela. Link al commento Condividi su altri siti More sharing options...
sfinge Inserita: 6 ottobre 2009 Autore Segnala Share Inserita: 6 ottobre 2009 Ciao Livio,no no voglio separare i caratteri 1,1,5 ma inviare tutto in un blocco unico.Vorrei interfacciare il mio sistema ad un Plc tipo s7200.Ad una particolare interrogazione da Plc il PIC dovrà inviare il contenuto del Byte richiesto.ciao grazie Link al commento Condividi su altri siti More sharing options...
Livio Orsini Inserita: 6 ottobre 2009 Segnala Share Inserita: 6 ottobre 2009 Non vedo la difficoltà, basta mettere il byte da trasmettere nel buffer dell'USART, ma questo lo fa gia il compilatare "C"; basta usare una funzione "getc", "getch", "getchar", "putc" o "putchar". Link al commento Condividi su altri siti More sharing options...
sfinge Inserita: 6 ottobre 2009 Autore Segnala Share Inserita: 6 ottobre 2009 Grazie Livio,ma non sono molto esperto nel C.ciao Link al commento Condividi su altri siti More sharing options...
sfinge Inserita: 12 ottobre 2009 Autore Segnala Share Inserita: 12 ottobre 2009 Ciao Livio,quale è la funzione della chiamata alla PUTCHAR?Il valore che devo sparare fuori dalla seriale prima devo depositarlo nella chiamata alla PUTCHAR? e poi nella PRINTF.Il famoso registro TXREG devo specificarlo anche nella funzione PRINTF? quello chiamato in gergo STREAM?Scusami se le domande possono sembrare idiote ma non capisco come deve funzionare.La trasmissione di un singolo carattere mi funziona correttamente...Ma vorrei fare di più,trasmettendo ad esempio il valore decimale per esempio 100 contenuto nel byte X.Puoi farmi due righe di esempio?Grazie anticipatamente Link al commento Condividi su altri siti More sharing options...
Messaggi consigliati
Crea un account o accedi per commentare
Devi essere un utente per poter lasciare un commento
Crea un account
Registrati per un nuovo account nella nostra comunità. è facile!
Registra un nuovo accountAccedi
Hai già un account? Accedi qui.
Accedi ora