PDA

View Full Version : [VB .NET] Stranezze in trasmissione su RS232


chano
26-02-2010, 16:44
spero che sappiate dirmi qualcosa perchè io son 2 giorni che non so cosa inventarmi...

devo gestire una comunicazione su porta seriale RS232 in un programma scritto in VB .NET, lo faccio tramite la classe SerialPort, e la ricezione funziona perfettamente, il problema nasce nel caso in cui voglio trasmettere un determinato valore. mi spiego meglio: alla porta rs232 è collegato un pic che dovrebbe ricevere un byte e accendere/spegnere 8 led in base al livello logico dei bit che gli arrivano. non so dire nemmeno io se funziona o no.

Se ci si riferisce alla tabella ASCII, ho notato che, trasmettendo un "carattere speciale" i led sul circuito si accendono in maniera apparentemente casuale (almeno, io non ho trovato nessuna logica nelle sequenze che ho riscontrato); invece, se trasmetto un carattere di testo, ovvero, un numero compreso tra 32 e 126, i led si accendono correttamente.

Ad esempio, se trasmetto 65, cioè il carattere "A", ottengo correttamente la sequenza 01000001, se trasmetto 1, ottengo 11111110 invece di un semplice 00000001

http://www.csiaf.unifi.it/online/principi/tables/asciistd.gif

Come mai? sapete dirmi a cosa è dovuto questo comportamento?

grazie in anticipo tutti!!!

bobbytre
26-02-2010, 19:53
hai provato prima di trasmetterlo di stamparti a video a che intero corrisponde il carattere speciale ?

chano
27-02-2010, 13:54
hai provato prima di trasmetterlo di stamparti a video a che intero corrisponde il carattere speciale ?

vero, non ci avevo pensato! in quei casi infatti trasmette un altro valore... ad esempio invece di 1, 2, 3 ecc trasmette sempre 63


c'è un modo per risolvere?? scusate se son domande banali ma è la prima volta che lavoro con una porta seriale....

chano
04-03-2010, 15:54
risolto finalmente! serializzando il tutto e scrivendo byte per byte! :D grazie della dritta ;)