Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    75

    [C#] comunicare con porta seriale

    ciao a tutti, come da titolo volevo sapere come funziona il collegamento con la porta seriale con c#. Facendo delle ricerce ho scoperto che esiste la classe "serial port", ma non ho ben capito come funziona la trasmissione: cioè io inizialmente pensavo che dovevo gestire l'invio dei dati bit a bit sulla seriale, (cioè che potevo scegliere se inviare un segnale logico alto o basso per ogni pin della seriale), solo che facendo delle ricerche ho scoperto che esistono dei metodi per convertire un numero in un'intero a 16 bit e successivamente inviarlo sulla seriale , e questo mi ha confuso non poco le idee xkè non riesco a capire se io invio un numero sulla seriale in questo modo cosa esce dall'altra parte ? (non so se ho reso il concetto)

    grazie in anticipo

    ciao luca

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Sai come viene rappresentato un valore decimale in binario?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    75
    bhe si:

    1 = 0001
    2 = 0010
    3 = 0011
    4 = 0100
    ...
    ...
    ...
    e così via...

    ciao

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Originariamente inviato da snake88m
    1 = 0001
    2 = 0010
    3 = 0011
    4 = 0100
    Questa mi sembra una risposta alla tua domanda " questo mi ha confuso non poco le idee xkè non riesco a capire se io invio un numero sulla seriale in questo modo cosa esce dall'altra parte "
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    75
    ok forse hai ragione

    faccio un'esempio:
    la mia porta seriale ha in uscita 9 pin, posso dedurre che se io inivo un determinato numero sulla seriale alcuni dei pin verranno posti a livello logico alto e altri a livello basso a seconda della rappresentazione binaria di quel numero e fin qui più o meno ci siamo. Ma mettiamo il caso che io voglia utilizzare i pin 1, 2, 3 e 4 per inviare dei dati a un pic, mentre i pin 5, 6 ,7 per gestire dei led e i pin 8 e 9 devono ricevere dei dati in ingresso che devono essere letti dal mio programma; a questo punto avrei la necessità di gestire la porta seriale bit per bit: cioè per esempio creare un programma che a seconda dei dati che deve inviare al pic invia al pin 1 un segnale logico alto, al pin due un segnale logico basso, al pin 3 un segnale logico basso e al pin 4 un segnale logico alto (naturalmente i segnali logici dovranno variare a seconda del dato da inviare), mentre per quel che riguarda i pin 8 e 9 ci dovrà essere un ciclo while che legge i dati in arrivo solo ed esclusivamente per quei due pin.

    In sostanza vorrei sapere se è possibile gestire la porta seriale bit per bit e se si avere una dritta su come fare ciò?

    ciao e grazie per la disponibilità

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    No ... un attimo ... non hai chiaro come funziona la porta seriale (protocollo RS232).

    I dati escono dal PC "in serie" (da cui porta "seriale") da UN SOLO pin (il 2 per la precisione ...).

    I bit vengono trasmessi ad una precisa velocita' (espressa in baud) e secondo un protocollo preciso ...

    In ricezione, i bit arrivano al PC (attraverso il pin 3) nello stesso modo ...

    Tutti gli altri pin sono "di controllo" della comunicazione e non sono necessari (a parte il riferimento di massa GND) ma non ci puoi gestire dei LED ... (almeno non facilmente ... non sono fatti per questo).

    Se vuoi comunicare con un PIC (un microcontrollore della Microchip, presumo ...), dovrai utilizzare un cavetto tx->rx, rx->tx, gnd<->gnd e sfruttare la classe SerialPort ...

    Non e' facile spiegare come fare in un post di un forum ma su internet esistono migliaia di esempi per farlo e una valanga di documentazione (prova a cercarla) ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  7. #7
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    75


    ecco.... questo mi risolve molti dubbi... ecco perchè non risucivo a comprendere il funzionamento della classe "serialport"

    grazie della delucidazione
    ciao

  8. #8
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Beh ... ma scusa, volevi utilizzare la porta seriale per realizzare un programma di comunicazioni tra PC e microcontrollore PIC, SENZA conoscere le modalita' di funzionamento della stessa porta ?

    Dai un'occhiata a questo ...

    http://www.beyondlogic.org/serial/serial.htm
    No MP tecnici (non rispondo nemmeno!), usa il forum.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.