CONFIGURAZIONE ED UTILIZZO DI UN MASTER PUZZLE IN CAN**

In questo esempio si vuole utilizzare un master puzzle che comunica con un dispositivo syel P10 linux.
Sul master sono state utilizzate tre cartucce con tre tipi di ingressi differenti a titolo dimostrativo.
Nel file start.c si nota come siano state dichiarate

xn_config[0] = C_ADC;       // ingresso analogico
xn_config[1] = C_IN;        // ingress1 digitali
xn_config[2] = C_OUT;       // uscite digitali
xn_config[3] = C_EMPTY;
xn_config[4] = C_EMPTY;
xn_config[5] = C_EMPTY;
xn_config[6] = C_EMPTY;
xn_config[7] = C_EMPTY;

puzzle_start_can(0, 0);     // avvio comunicazione

Nel file common.h viene inizialmente inclusa la libreria apposita “puzzle6.h”

#include "puzzle6.h"

#define Ing_Anal          p50_x1_anal
#define Ing_dig1          x2_i1   // X2.0
#define Ing_dig2          x2_i2   // X2.1
#define Out_dig1          x3_o1   // X3.0
#define Out_dig2          x3_o2   // X3.1

Nell’esempio, oltre che modificare le uscite digitali e leggere gli ingressi sia digitali che quello analogico vengono fatte delle valutazioni sul valor medio del dato analogico. A display vedrete i seguenti valori:
Ing_Anal = lettura ingresso analogico
Ing_Anal_max = massimo valore letto in ingresso (a fianco c’è un numero che sono i campioni sopra il valor medio di 10 tik)
Ing_Anal_min = minimo valore letto in ingresso (a fianco c’è un numero che sono i campioni sotto il valor medio di 10 tik)
Ing_Anal_mediato = lettura ingresso analogico mediata
Ing_Anal = massimo valore mediato
Ing_Anal = lminimo valore mediato
Il tasto reset azzera questi valori

L’esempio è stato testato su un dispositivi syel p10 ed un master puzzle via CAN bus ed è liberamente scaricabile dal seguente link:
https://drive.google.com/file/d/1UyvUWTlRFX60brPdWx8EqynhXc16tAQV/view?usp=sharing

2025-02-04 Creatore dell’articolo Simone De Santis. Per ulteriori richieste simone.desantis@syel.it