Skip to content

Commit

Permalink
Disable properties not known by plain JSSC
Browse files Browse the repository at this point in the history
Co-authored-by: Alexander Girgis <11259344+AlexanderGirgis@users.noreply.github.com>
  • Loading branch information
koppor and AlexanderGirgis committed Apr 17, 2020
1 parent 7311543 commit a3a5084
Show file tree
Hide file tree
Showing 2 changed files with 56 additions and 59 deletions.
41 changes: 18 additions & 23 deletions src/main/java/VisualLogic/NewSerialDriverManager.java
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@
* @author Javier Velasquez
*/
public class NewSerialDriverManager {

public static SerialPort serialPortTemp;
public static VSserialPort vsSerialPortTemp;
public static ArrayList <VSserialPort> serialPortsArray;
Expand All @@ -42,30 +42,30 @@ public static int getPortsOpened() {
int i=0;
System.out.println(i+" Element: "+vsTemp.getValue().getPortName());
}

return PortsOpened;
}

public static FrameMain frameCircuit;

public static void NewDriverManager(FrameMain frameCircuitIn){
frameCircuit=frameCircuitIn;
frameCircuit=frameCircuitIn;
PortsOpened=0;
serialPortsArray=new ArrayList<VSserialPort>();
serialPortsArray=new ArrayList<VSserialPort>();
}
public VSserialPort NewSerialPort(String PortNameIN) throws InterruptedException, Exception{
VSserialPort vsSerialTemp= new VSserialPort();

serialPortTemp = OpenPort(PortNameIN);

vsSerialPortTemp=new VSserialPort(serialPortTemp);
if(PortNameExist(PortNameIN)){
UpdateSerialPortByPortName(vsSerialPortTemp,PortNameIN); // Do not add repeated ports
}else{
serialPortsArray.add(vsSerialPortTemp);
}
vsSerialTemp.setValue(serialPortTemp);

return vsSerialTemp;
}

Expand All @@ -88,25 +88,25 @@ public static VSserialPort FindSerialPortByPortName(String PortNameIN){
vsSerialTemp=vsTemp;
//System.out.println("Port "+PortNameIN+" Found!");
return vsSerialTemp;

}
}
System.out.println("NewSerialDriverManager.java Line-94 - Port "+PortNameIN+" Not Found!");
return null;
}
public static void UpdateSerialPortByPortName(VSserialPort vsPortIn, String PortNameIN){

for(VSserialPort vsTemp:serialPortsArray){
if(vsTemp.getSerialPort().getPortName().equalsIgnoreCase(PortNameIN))
{
serialPortsArray.remove(vsTemp);
serialPortsArray.add(vsPortIn);
serialPortsArray.add(vsPortIn);
}
}

}
public static void RemoveSerialPortByPortName(String PortNameIN){

for(VSserialPort vsTemp:serialPortsArray){
if(vsTemp.getSerialPort().getPortName().equalsIgnoreCase(PortNameIN))
{
Expand All @@ -118,27 +118,22 @@ public static void RemoveSerialPortByPortName(String PortNameIN){
}
}
serialPortsArray.remove(vsTemp);

}
}

}

//______________________________________________________________________________________________

private SerialPort OpenPort(String PortName) throws SerialPortException, InterruptedException, Exception{

this.PortName=PortName;
serialPortTemp = new SerialPort(PortName);
serialPortTemp = new SerialPort(PortName);
if(serialPortTemp.isOpened()) serialPortTemp.closePort();
serialPortTemp.openPort();

return serialPortTemp;
}

private void DisposeSerialPort(){
serialPortTemp.onDispose();
serialPortTemp=null;
}
return serialPortTemp;
}

}
74 changes: 38 additions & 36 deletions src/main/java/VisualLogic/variables/VSserialPort.java
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
* @author velas
*/
public class VSserialPort extends VSObject {

private SerialPort serialPort;
private boolean enableCR=true;
private boolean enableLF=true;
Expand All @@ -50,21 +50,21 @@ public boolean isEnableCR() {
public boolean isEnableLF() {
return enableLF;
}

public void setEnableCR(boolean EnableIn){
this.enableCR=EnableIn;
this.enableCR=EnableIn;
}
public void setEnableLF(boolean EnableIn){
this.enableLF=EnableIn;
this.enableLF=EnableIn;
}

public void setDefaultParameters (Boolean ArduinoAutoReset, Thread ThreadIn) throws SerialPortException, InterruptedException{
if(serialPort.isOpened()){
serialPort.setParams(9600, 8, 1, 0);
if(ArduinoAutoReset){
if(ArduinoAutoReset){
ThreadIn.sleep(5000);
} // Si el Arduino tiene AutoRest se debe esperar 5 Segundos mientras inicia.
}
}
}

public void setParameters(boolean ArduinoAutoRESET,
Expand All @@ -85,26 +85,26 @@ public void setParameters(boolean ArduinoAutoRESET,
}
}


public int GetBytesAtPort() throws SerialPortException{
int BytesCount=0;
int BytesCount=0;
if(serialPort.isOpened()){
BytesCount=serialPort.getInputBufferBytesCount();
}
return BytesCount;
}
}
public boolean isOpened(){
return serialPort.isOpened();
return serialPort.isOpened();
}
public void CloseCOMPort() throws SerialPortException{
if(serialPort.isOpened()){
serialPort.closePort();
}
}

public VSserialPort()
{

}
public VSserialPort(SerialPort serialPortIn)
{
Expand Down Expand Up @@ -136,10 +136,10 @@ public String ReadStrBuffer(Thread ThreadWait) throws SerialPortException, Seria
@Override
public String toString()
{
return serialPort.getName();
return "COM1"; // serialPort.getName();
}


public void setValue(SerialPort value)
{
if (value!=null)
Expand All @@ -148,7 +148,7 @@ public void setValue(SerialPort value)
setChanged(true);
}
}

public SerialPort getValue()
{
return this.serialPort;
Expand All @@ -169,55 +169,56 @@ public void copyValueFrom(Object in)
public void copyReferenceFrom(Object in)
{
copyValueFrom(in);
}
}


@Override
public boolean equals(VSObject obj)
{
VSserialPort temp =(VSserialPort)obj;
if (temp.serialPort.getPortName().equalsIgnoreCase(serialPort.getPortName())) return true;
else return false;
}

@Override
public boolean isBigger(VSObject obj)
{

return false;
}

@Override
public boolean isSmaller(VSObject obj)
{
return false;
}


@Override
public void loadFromStream(java.io.FileInputStream fis)
{
try
{
java.io.DataInputStream dis = new java.io.DataInputStream(fis);
serialPort.setName(dis.readUTF());

//serialPort.setName(dis.readUTF());
}
catch(Exception ex)
{

}

}

@Override
public void saveToStream(java.io.FileOutputStream fos)
{
try
{
java.io.DataOutputStream dos = new java.io.DataOutputStream(fos);
dos.writeUTF(serialPort.getName());

//dos.writeUTF(serialPort.getName());
dos.writeUTF("COM1");

}
catch(Exception ex)
{
Expand All @@ -226,12 +227,13 @@ public void saveToStream(java.io.FileOutputStream fos)
}
public void loadFromXML(String name,org.w3c.dom.Element nodeElement)
{
serialPort.setName(nodeElement.getAttribute("VSserialPort"+name));
//serialPort.setName(nodeElement.getAttribute("VSserialPort"+name));
}

public void saveToXML(String name, org.w3c.dom.Element nodeElement)
{
nodeElement.setAttribute("VSserialPort"+name, serialPort.getName());
//nodeElement.setAttribute("VSserialPort"+name, serialPort.getName());
nodeElement.setAttribute("VSserialPort"+name, "COM1");
}

}

0 comments on commit a3a5084

Please sign in to comment.