Impostare il buffer di ricezione per la CPU

Per la comunicazione controllata da programma occorre specificare un buffer di ricezione nell'area memoria DT. L'area massima copre fino a 16384 word.Specificare i seguenti parametri:

  1. Indirizzo iniziale

  2. La capacità del buffer di ricezione (numero di word)

Struttura del buffer di ricezione

  1.  (1) Indirizzo iniziale
  2.  (2) Area di memorizzazione del numero di byte ricevuti
  3.  (3) Area di memorizzazione per i dati ricevuti
  4.  (4) Capacità

I numeri in grassetto indicano l'ordine di ricezione.I dati ricevuti sono memorizzati nel buffer di ricezione. I caratteri iniziali e terminatori non vengono memorizzati nel buffer di ricezione. L'area di memorizzazione dei dati ricevuti inizia con la seconda word del buffer di ricezione (offset 1). Offset 0 contiene il numero di byte ricevuti. Il valore iniziale di offset 0 è 0.

  1. Fare doppio clic su PLC nel navigatore.
  2. Fare doppio clic su Registri sistema
  3. Fare doppio click su Porte seriali

    Le porte di comunicazione occupano posizioni bit diverse dello stesso registro di sistema, pertanto sono possibili impostazioni individuali per ciascuna porta di comunicazione. Per fare impostazioni per la porta TOOL, selezionare Registri sistema > Porte seriali > TOOL. Il numero del registro di sistema per le rispettive impostazioni può variare a seconda del tipo di PLC utilizzato.
NOTA

Per poter accedere ai dati nel buffer di ricezione occorre definire una variabile globale avente lo stesso indirizzo iniziale e la stessa grandezza. Tuttavia FP7 e le unità di espansione MCU non hanno un indirizzo di registro DT corrispondente. Per trasferire i dati dal buffer di ricezione nel registro dati PLC utilizzareReceiveData

Argomenti correlati

Elaborazione di dati nel buffer di ricezione e preparazione della CPU alla ricezione di ulteriori dati

Ricezione di una stringa di 8 byte contenente i caratteri "ABCDEFGH" attraverso la porta COM 1. I caratteri vengono salvanti nel codice ASCII HEX senza caratteri iniziali né caratteri terminatori.

  1.  (1) Flag "ricezione conclusa"
  2.  (2) Condizione di esecuzione
  3.  (3) La ricezione inizia
  4.  (4)  La ricezione continua
  5.  (5) Esecuzione di F159_MTRN (n_Number=0)

Struttura del buffer di ricezione:

Quando la ricezione inizia, il valore in offset 0 è 0. Al termine della ricezione il valore in offset 0 è 8. I dati negli offset da 1 a 4 sono ricevuti in ordine crescente partendo dal byte basso.

Impostazioni del registro di sistema

Per poter accedere ai dati nel buffer di ricezione occorre definire una variabile globale avente lo stesso indirizzo iniziale e la stessa grandezza. In questo esempio, l'indirizzo iniziale è DT200 (VAR_GLOBALDT200_awReceivedBuffer) e la capacità del buffer di ricezione è 5 (ARRAY [0..4] OF WORD).

Variabili globali

Intestazione POU e corpo LD

Corpo ST

Possono essere ricevuti dati da un dispositivo esterno quando il flag "ricezione conclusa" è FALSE. Il flag "ricezione conclusa" è valutato dalla variabile di sistema sys_bIsComPort1ReceptionDone. Quando la ricezione dei dati è completata (è stato ricevuto il codice finale), il flag "ricezione conclusa" passa a TRUE e, di conseguenza, la ricezione di dati non può più aver luogo. Per preparare il sistema a ricevere i dati seguenti senza inviare immediatamente altri dati, si resetta il buffer di ricezione eseguendo F159_MTRN con n_Number = 0.

NOTA
  • Lo Numero del byte ricevuti può cambiare durante lo svolgimento di uno scan. For example, if the number of received bytes is read more than once different statuses may exist within one scan.
  • Il carattere iniziale "STX" resetta il buffer di ricezione.

L'ultima revisione: 2024-07-16Feedback su questa paginaPanasonic hotline