agrobot_base/AgroBase/AgroBase/Models/Modules/PinoutModel.cs

459 lines
42 KiB
C#

using AgroBase.Services;
using Newtonsoft.Json;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using static AgroBase.Models.Enums;
namespace AgroBase.Models.Modules
{
public class PinoutDataModel
{
public bool ExpansorGPIO { get; set; }
public string EnderecoGPIO { get; set; }
public bool ExpansorADS { get; set; }
public string EnderecoADS { get; set; }
public List<PinoutModel> Pinos { get; set; }
public PinoutDataModel Clone()
{
return new PinoutDataModel()
{
ExpansorADS = ExpansorADS,
EnderecoADS = EnderecoADS,
EnderecoGPIO = EnderecoGPIO,
ExpansorGPIO = ExpansorGPIO,
Pinos = new List<PinoutModel>(Pinos)
};
}
}
public class PinoutModel
{
public TiposControladores Controlador { get;set; }
public TiposBarramentos Barramento { get;set; }
public int Pino { get; set; }
public string Descricao { get; set; }
public FuncoesPinout Funcao { get; set; }
public bool Habilitado { get; set; }
public string ComponenteID { get; set; }
public static List<PinoutModel> CarregarPinoutPadrao_S3_2()
{
List<PinoutModel> Pinout = new List<PinoutModel>()
{
new PinoutModel() { Pino = 99, ComponenteID = "", Descricao = "3V3_1", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
new PinoutModel() { Pino = 98, ComponenteID = "", Descricao = "3V3_2", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
new PinoutModel() { Pino = 97, ComponenteID = "", Descricao = "RST", Funcao = FuncoesPinout.NaoConectado, Habilitado = false },
new PinoutModel() { Pino = 4, ComponenteID = "", Descricao = "GPIO4", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 5, ComponenteID = "", Descricao = "GPIO5", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 6, ComponenteID = "", Descricao = "GPIO6", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 7, ComponenteID = "", Descricao = "GPIO7", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 15, ComponenteID = "", Descricao = "GPIO15", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 16, ComponenteID = "", Descricao = "GPIO16", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 17, ComponenteID = "", Descricao = "GPIO17", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 18, ComponenteID = "", Descricao = "GPIO18", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 8, ComponenteID = "", Descricao = "GPIO8", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 3, ComponenteID = "", Descricao = "GPIO3", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 46, ComponenteID = "", Descricao = "GPIO46", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Pino = 9, ComponenteID = "", Descricao = "GPIO9", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 10, ComponenteID = "", Descricao = "GPIO10", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Pino = 11, ComponenteID = "", Descricao = "GPIO11", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Pino = 12, ComponenteID = "", Descricao = "GPIO12", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Pino = 13, ComponenteID = "", Descricao = "GPIO13", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Pino = 14, ComponenteID = "", Descricao = "GPIO14", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Pino = 96, ComponenteID = "", Descricao = "5V", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
new PinoutModel() { Pino = 95, ComponenteID = "", Descricao = "GND_1", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
new PinoutModel() { Pino = 94, ComponenteID = "", Descricao = "GND_2", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
new PinoutModel() { Pino = 93, ComponenteID = "", Descricao = "GND_3", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
new PinoutModel() { Pino = 19, ComponenteID = "", Descricao = "GPIO19", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 20, ComponenteID = "", Descricao = "GPIO20", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Pino = 21, ComponenteID = "", Descricao = "GPIO21", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 47, ComponenteID = "", Descricao = "GPIO47", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 48, ComponenteID = "", Descricao = "GPIO48", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 45, ComponenteID = "", Descricao = "GPIO45", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 0, ComponenteID = "", Descricao = "GPIO0", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 35, ComponenteID = "", Descricao = "GPIO35", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 36, ComponenteID = "", Descricao = "GPIO36", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 37, ComponenteID = "", Descricao = "GPIO37", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 38, ComponenteID = "", Descricao = "GPIO38", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 39, ComponenteID = "", Descricao = "GPIO39", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Pino = 40, ComponenteID = "", Descricao = "GPIO40", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Pino = 41, ComponenteID = "", Descricao = "GPIO41", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Pino = 42, ComponenteID = "", Descricao = "GPIO42", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Pino = 2, ComponenteID = "", Descricao = "GPIO2", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Pino = 1, ComponenteID = "", Descricao = "GPIO1", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Pino = 44, ComponenteID = "", Descricao = "RX", Funcao = FuncoesPinout.RX, Habilitado = false },
new PinoutModel() { Pino = 43, ComponenteID = "", Descricao = "TX", Funcao = FuncoesPinout.TX, Habilitado = false },
new PinoutModel() { Pino = 92, ComponenteID = "", Descricao = "GND_4", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
};
return Pinout;
}
public static List<PinoutModel> CarregarPinoutPadrao_Wrover_2()
{
List<PinoutModel> Pinout = new List<PinoutModel>()
{
new PinoutModel() { Pino = 99, ComponenteID = "", Descricao = "3V3", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
new PinoutModel() { Pino = 98, ComponenteID = "", Descricao = "EN", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
new PinoutModel() { Pino = 36, ComponenteID = "", Descricao = "GPIO36", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 39, ComponenteID = "", Descricao = "GPIO39", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 34, ComponenteID = "", Descricao = "GPIO5", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 35, ComponenteID = "", Descricao = "GPIO6", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 32, ComponenteID = "", Descricao = "GPIO7", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 33, ComponenteID = "", Descricao = "GPIO15", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 25, ComponenteID = "", Descricao = "GPIO16", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 26, ComponenteID = "", Descricao = "GPIO17", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 27, ComponenteID = "", Descricao = "GPIO18", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 14, ComponenteID = "", Descricao = "GPIO8", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 12, ComponenteID = "", Descricao = "GPIO3", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 97, ComponenteID = "", Descricao = "GND_1", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
new PinoutModel() { Pino = 13, ComponenteID = "", Descricao = "GPIO13", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 9, ComponenteID = "", Descricao = "GPIO9", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
new PinoutModel() { Pino = 10, ComponenteID = "", Descricao = "GPIO10", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
new PinoutModel() { Pino = 11, ComponenteID = "", Descricao = "GPIO11", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
new PinoutModel() { Pino = 96, ComponenteID = "", Descricao = "5V", Funcao = FuncoesPinout.Desabilitado, Habilitado = false},
new PinoutModel() { Pino = 6, ComponenteID = "", Descricao = "GPIO6", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
new PinoutModel() { Pino = 7, ComponenteID = "", Descricao = "GPIO7", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
new PinoutModel() { Pino = 8, ComponenteID = "", Descricao = "GPIO8", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
new PinoutModel() { Pino = 15, ComponenteID = "", Descricao = "GPIO15", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 2, ComponenteID = "", Descricao = "GPIO2", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 0, ComponenteID = "", Descricao = "GPIO0", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 4, ComponenteID = "", Descricao = "GPIO4", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 16, ComponenteID = "", Descricao = "GPIO16", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 17, ComponenteID = "", Descricao = "GPIO17", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 5, ComponenteID = "", Descricao = "GPIO5", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 18, ComponenteID = "", Descricao = "GPIO18", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 19, ComponenteID = "", Descricao = "GPIO19", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 95, ComponenteID = "", Descricao = "GND_2", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
new PinoutModel() { Pino = 21, ComponenteID = "", Descricao = "GPIO21", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Pino = 3, ComponenteID = "", Descricao = "RX", Funcao = FuncoesPinout.RX, Habilitado = false },
new PinoutModel() { Pino = 1, ComponenteID = "", Descricao = "TX", Funcao = FuncoesPinout.TX, Habilitado = false },
new PinoutModel() { Pino = 22, ComponenteID = "", Descricao = "GPIO22", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Pino = 23, ComponenteID = "", Descricao = "GPIO23", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Pino = 94, ComponenteID = "", Descricao = "GND_3", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
};
return Pinout;
}
public static List<PinoutModel> CarregarPinoutPadrao_S3()
{
List<PinoutModel> Pinout = new List<PinoutModel>()
{
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 99, ComponenteID = "", Descricao = "1", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 98, ComponenteID = "", Descricao = "2", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 97, ComponenteID = "", Descricao = "3", Funcao = FuncoesPinout.NaoConectado, Habilitado = false },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 4, ComponenteID = "", Descricao = "4", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 5, ComponenteID = "", Descricao = "5", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 6, ComponenteID = "", Descricao = "6", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 7, ComponenteID = "", Descricao = "7", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 15, ComponenteID = "", Descricao = "8", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 16, ComponenteID = "", Descricao = "9", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 17, ComponenteID = "", Descricao = "10", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 18, ComponenteID = "", Descricao = "11", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 8, ComponenteID = "", Descricao = "12", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 3, ComponenteID = "", Descricao = "13", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 46, ComponenteID = "", Descricao = "14", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 9, ComponenteID = "", Descricao = "15", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 10, ComponenteID = "", Descricao = "16", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 11, ComponenteID = "", Descricao = "17", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 12, ComponenteID = "", Descricao = "18", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 13, ComponenteID = "", Descricao = "19", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 14, ComponenteID = "", Descricao = "20", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 96, ComponenteID = "", Descricao = "21", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 95, ComponenteID = "", Descricao = "22", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 94, ComponenteID = "", Descricao = "23", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 93, ComponenteID = "", Descricao = "24", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 19, ComponenteID = "", Descricao = "25", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 20, ComponenteID = "", Descricao = "26", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 21, ComponenteID = "", Descricao = "27", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 47, ComponenteID = "", Descricao = "28", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 48, ComponenteID = "", Descricao = "29", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 45, ComponenteID = "", Descricao = "30", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 0, ComponenteID = "", Descricao = "31", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 35, ComponenteID = "", Descricao = "32", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 36, ComponenteID = "", Descricao = "33", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 37, ComponenteID = "", Descricao = "34", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 38, ComponenteID = "", Descricao = "35", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 39, ComponenteID = "", Descricao = "36", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 40, ComponenteID = "", Descricao = "37", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 41, ComponenteID = "", Descricao = "38", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 42, ComponenteID = "", Descricao = "39", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 2, ComponenteID = "", Descricao = "40", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 1, ComponenteID = "", Descricao = "41", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 44, ComponenteID = "", Descricao = "42", Funcao = FuncoesPinout.RX, Habilitado = false },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 43, ComponenteID = "", Descricao = "43", Funcao = FuncoesPinout.TX, Habilitado = false },
new PinoutModel() { Controlador = TiposControladores.ESP32_S3, Barramento = TiposBarramentos.CONTROLADOR, Pino = 92, ComponenteID = "", Descricao = "44", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
};
return Pinout;
}
public static List<PinoutModel> CarregarPinoutPadrao_Wrover()
{
List<PinoutModel> Pinout = new List<PinoutModel>()
{
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 99, ComponenteID = "", Descricao = "1", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 98, ComponenteID = "", Descricao = "2", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 36, ComponenteID = "", Descricao = "3", Funcao = FuncoesPinout.NaoConectado, Habilitado = false },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 39, ComponenteID = "", Descricao = "4", Funcao = FuncoesPinout.NaoConectado, Habilitado = false },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 34, ComponenteID = "", Descricao = "5", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 35, ComponenteID = "", Descricao = "6", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 32, ComponenteID = "", Descricao = "7", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 33, ComponenteID = "", Descricao = "8", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 25, ComponenteID = "", Descricao = "9", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 26, ComponenteID = "", Descricao = "10", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 27, ComponenteID = "", Descricao = "11", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 14, ComponenteID = "", Descricao = "12", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 12, ComponenteID = "", Descricao = "13", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 97, ComponenteID = "", Descricao = "14", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 13, ComponenteID = "", Descricao = "15", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 9, ComponenteID = "", Descricao = "16", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 10, ComponenteID = "", Descricao = "17", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 11, ComponenteID = "", Descricao = "18", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 96, ComponenteID = "", Descricao = "19", Funcao = FuncoesPinout.Desabilitado, Habilitado = false},
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 6, ComponenteID = "", Descricao = "26", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 7, ComponenteID = "", Descricao = "27", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 8, ComponenteID = "", Descricao = "28", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 15, ComponenteID = "", Descricao = "29", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 2, ComponenteID = "", Descricao = "30", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 0, ComponenteID = "", Descricao = "31", Funcao = FuncoesPinout.NaoConectado, Habilitado = false },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 4, ComponenteID = "", Descricao = "32", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 16, ComponenteID = "", Descricao = "33", Funcao = FuncoesPinout.RX, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 17, ComponenteID = "", Descricao = "34", Funcao = FuncoesPinout.TX, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 5, ComponenteID = "", Descricao = "35", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 18, ComponenteID = "", Descricao = "36", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 19, ComponenteID = "", Descricao = "37", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 95, ComponenteID = "", Descricao = "38", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 21, ComponenteID = "", Descricao = "39", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 3, ComponenteID = "", Descricao = "40", Funcao = FuncoesPinout.RX, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 1, ComponenteID = "", Descricao = "41", Funcao = FuncoesPinout.TX, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 22, ComponenteID = "", Descricao = "42", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 23, ComponenteID = "", Descricao = "43", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.ESP32_WROVER, Barramento = TiposBarramentos.CONTROLADOR, Pino = 94, ComponenteID = "", Descricao = "44", Funcao = FuncoesPinout.Desabilitado, Habilitado = false },
};
return Pinout;
}
public static List<PinoutModel> CarregarPinoutPadrao_MCP()
{
List<PinoutModel> Pinout = new List<PinoutModel>()
{
new PinoutModel() { Controlador = TiposControladores.TODOS, Barramento = TiposBarramentos.EXPANSOR_GPIO, Pino = 0, ComponenteID = "", Descricao = "A0", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.TODOS, Barramento = TiposBarramentos.EXPANSOR_GPIO, Pino = 1, ComponenteID = "", Descricao = "A1", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.TODOS, Barramento = TiposBarramentos.EXPANSOR_GPIO, Pino = 2, ComponenteID = "", Descricao = "A2", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.TODOS, Barramento = TiposBarramentos.EXPANSOR_GPIO, Pino = 3, ComponenteID = "", Descricao = "A3", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.TODOS, Barramento = TiposBarramentos.EXPANSOR_GPIO, Pino = 4, ComponenteID = "", Descricao = "A4", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.TODOS, Barramento = TiposBarramentos.EXPANSOR_GPIO, Pino = 5, ComponenteID = "", Descricao = "A5", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.TODOS, Barramento = TiposBarramentos.EXPANSOR_GPIO, Pino = 6, ComponenteID = "", Descricao = "A6", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.TODOS, Barramento = TiposBarramentos.EXPANSOR_GPIO, Pino = 7, ComponenteID = "", Descricao = "A7", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.TODOS, Barramento = TiposBarramentos.EXPANSOR_GPIO, Pino = 8, ComponenteID = "", Descricao = "B0", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.TODOS, Barramento = TiposBarramentos.EXPANSOR_GPIO, Pino = 9, ComponenteID = "", Descricao = "B1", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.TODOS, Barramento = TiposBarramentos.EXPANSOR_GPIO, Pino = 10, ComponenteID = "", Descricao = "B2", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.TODOS, Barramento = TiposBarramentos.EXPANSOR_GPIO, Pino = 11, ComponenteID = "", Descricao = "B3", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.TODOS, Barramento = TiposBarramentos.EXPANSOR_GPIO, Pino = 12, ComponenteID = "", Descricao = "B4", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.TODOS, Barramento = TiposBarramentos.EXPANSOR_GPIO, Pino = 13, ComponenteID = "", Descricao = "B5", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.TODOS, Barramento = TiposBarramentos.EXPANSOR_GPIO, Pino = 14, ComponenteID = "", Descricao = "B6", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.TODOS, Barramento = TiposBarramentos.EXPANSOR_GPIO, Pino = 15, ComponenteID = "", Descricao = "B7", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
};
return Pinout;
}
public static List<PinoutModel> CarregarPinoutPadrao_ADS()
{
List<PinoutModel> Pinout = new List<PinoutModel>()
{
new PinoutModel() { Controlador = TiposControladores.TODOS, Barramento = TiposBarramentos.EXPANSOR_ADS, Pino = 0, ComponenteID = "", Descricao = "A0", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.TODOS, Barramento = TiposBarramentos.EXPANSOR_ADS, Pino = 1, ComponenteID = "", Descricao = "A1", Funcao = FuncoesPinout.Desabilitado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.TODOS, Barramento = TiposBarramentos.EXPANSOR_ADS, Pino = 2, ComponenteID = "", Descricao = "A2", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
new PinoutModel() { Controlador = TiposControladores.TODOS, Barramento = TiposBarramentos.EXPANSOR_ADS, Pino = 3, ComponenteID = "", Descricao = "A3", Funcao = FuncoesPinout.NaoConectado, Habilitado = true },
};
return Pinout;
}
public static PinoutDataModel CarregarPinout(T_Code Dispositivo)
{
var newPinout = new PinoutDataModel()
{
ExpansorGPIO = false,
ExpansorADS = false,
EnderecoGPIO = "",
Pinos = CarregarPinoutPadrao_S3(),
};
//string nomeArquivo = Variaveis.CaminhoParametros + "pinout" + Enum.GetName(typeof(T_Code), Dispositivo) + ".pin";
VersaoArquivoModel arquivo = VersionamentoService.ArquivoPinout(Dispositivo);
if (arquivo != null)
{
string nomeArquivo = arquivo.CaminhoCompleto;
if (!File.Exists(nomeArquivo))
{
File.WriteAllText(nomeArquivo, JsonConvert.SerializeObject(newPinout));
}
var pinoutText = File.ReadAllText(nomeArquivo);
var Pinout = JsonConvert.DeserializeObject<PinoutDataModel>(pinoutText);
return Pinout;
}
else
{
return newPinout;
}
}
public static void SalvarPinout(PinoutDataModel newPinout, string nomeArquivo)
{
File.WriteAllText(nomeArquivo, JsonConvert.SerializeObject(newPinout));
}
public static byte[] PinoProtocolo(PinoutDataModel _pinout, List<FuncoesPinout> _funcoes, bool barramento)
{
List<byte> Pinos = new List<byte>();
int i = 0;
foreach (FuncoesPinout funcao in _funcoes)
{
var pino = _pinout.Pinos.FirstOrDefault(x => x.Funcao == funcao);
if (pino != null && (pino.Barramento == TiposBarramentos.CONTROLADOR || (pino.Barramento == TiposBarramentos.EXPANSOR_GPIO && _pinout.ExpansorGPIO) || (pino.Barramento == TiposBarramentos.EXPANSOR_ADS && _pinout.ExpansorADS)))
{
if (barramento)
{
Pinos.Add((byte)pino.Barramento);
}
Pinos.Add((byte)pino.Pino);
}
else
{
if (barramento)
{
Pinos.Add((byte)TiposBarramentos.CONTROLADOR);
}
Pinos.Add(PinoutUtils.PINO_INVALIDO);
}
i++;
}
return Pinos.ToArray();
}
}
public enum TiposControladores
{
ESP32_S3,
ESP32_WROVER,
TODOS,
}
public enum TiposBarramentos
{
CONTROLADOR = 0,
EXPANSOR_GPIO = 1,
EXPANSOR_ADS = 2,
}
public enum FuncoesPinout
{
NaoConectado,
Desabilitado,
TX,
RX,
Geral,
PWM,
HallA,
HallB,
HallC,
DIR,
BRK,
STP,
TMP,
PUL,
ENA,
EncoderA,
EncoderB,
REF000,
REF090,
REF180,
REF270,
Solenoide,
DT,
SCK,
Pressao,
Fluxo,
Rele,
I2C,
Tensao,
Corrente,
Echo,
Trigger,
Massa,
SDA,
SCL,
CS,
INA,
INB,
Sinaleiro,
ServoX,
ServoY,
EncoderAbsoluto,
ModbusDI,
ModbusRO,
ModbusDE_RE,
Servo,
Potenciometro,
M0,
M1,
Aux,
Gas,
LuzUV,
Chuva,
Potencia,
Temperatura,
LuzAmbiente,
Umidade,
TVOC,
ECO2,
AQI,
Iniciado,
Energia,
StatusLedLeitura,
StatusLedID,
ServoAnguloLeitura,
ServoAnguloComando,
EstadoLeitura,
EstadoComando,
PressaoSP,
CodAlarme,
LeituraBruta,
LeituraAngulo,
Cooler,
QtdPulsos,
Periodo,
IN1,
IN2,
PotenciaSP,
ModoControleBomba,
Botao,
MalhaFechada,
PressaoSPExtra,
BitmapDiagnostico
}
public static class PinoutUtils
{
public static byte PINO_INVALIDO = 0xFF;
public static List<FuncoesPinout> PinosSecundarios = new List<FuncoesPinout>()
{
FuncoesPinout.SCK,
FuncoesPinout.Trigger,
};
}
}