Display the Data from RS232 Com1 port in the console in Hex

Home Forums MyEclipse IDE Off Topic Display the Data from RS232 Com1 port in the console in Hex

This topic contains 1 reply, has 2 voices, and was last updated by Profile photo of support-joy support-joy 3 years, 4 months ago.

Viewing 2 posts - 1 through 2 (of 2 total)
  • Author
    Posts
  • #322883
    Profile photo of arunsny
    arunsny
    Member

    Hallo Friends,

    I have a program in which i’m trying to view the data read from the RS232 COM1 port in the console of myeclipse. I have already run the program but it is showing some rubbish values may be in ASCII as shown in the screen shot.

    Can any one please help me how i can display the values in Hexadecimal or other readable format. It would be of great help.

    i’m pasting my code here

    package serial.comm.main;

    import java.io.UnsupportedEncodingException;

    import jssc.SerialPort;
    import jssc.SerialPortException;
    import serial.comm.port_reader.SerialPortReader;

    public class SerialComm {

    static SerialPort serialPort = new SerialPort(“COM1″);
    //private static int byteCount;

    /*
    * Serial Read Method
    */
    public static void read() {
    // byte[] aa = null;
    byte a = 0x01;
    //aa[0]= 0x01;
    //aa[1]= 0x00;
    byte b[];
    byte c=0x00;

    try {
    serialPort.openPort();//Open port
    serialPort.setParams(57600, 8, 1, 0);//Set params
    int mask = SerialPort.MASK_RXCHAR + SerialPort.MASK_CTS + SerialPort.MASK_DSR;//Prepare mask
    serialPort.setEventsMask(mask);//Set mask
    serialPort.addEventListener(new SerialPortReader(serialPort));//Add SerialPortEventListener
    try {
    Thread.sleep(5000);
    //serialPort.writeBytes(aa);

    b = (serialPort.readBytes(5));

    for (int i=0;i < 5;i++){
    c = b[i];
    /*for (int i=0; i < 5;i++)
    {
    System.out.println(“Byte” + i + ” = ” + b[i] + 0x30);
    }
    */
    System.out.println(b[i]);
    }

    }
    catch (InterruptedException e) { }
    try {
    serialPort.closePort();//Close serial port
    }
    catch (SerialPortException ex) {
    System.out.println(ex);
    }
    System.out.println(“Reading Successful”);
    }
    catch (SerialPortException ex) {
    System.out.println(ex);
    }
    }

    /*
    * Serial Write Method
    */
    public static void write(String toPort) {
    try {
    serialPort.openPort();//Open serial port
    serialPort.setParams(SerialPort.BAUDRATE_57600,
    SerialPort.DATABITS_8,
    SerialPort.STOPBITS_1,
    SerialPort.PARITY_NONE);//Set params. Also you can set params by this string: serialPort.setParams(9600, 8, 1, 0);
    serialPort.writeBytes(toPort.getBytes());//Write data to port
    serialPort.closePort();//Close serial port
    System.out.println(“Writing Successful”);
    }
    catch (SerialPortException ex) {
    System.out.println(ex);
    }
    }

    /*
    * Serial dataIn byte to string conversion Method
    */
    public static String getString(byte[] b) throws UnsupportedEncodingException {
    String result = “”;
    for (int i=0; i < b.length; i++) {
    result += (char)b[i];
    }
    return result;
    }

    }

    looking forward to hear from you.

    Best regards

    Arun

    Attachments:
    You must be logged in to view attached files.
    #322933
    Profile photo of support-joy
    support-joy
    Member

    Arun,

    Have you tried to run your application in debug mode? Your issue is related to development. I would recommend you cross-post on relevant forums.

    Refer – http://download.cnet.com/RS232-Hex-Com-Tool/3000-2383_4-10064973.html – I am not sure how relevant this tool is to your issue. It does say that you have a choice of non-print character display options. You could research on above lines.

Viewing 2 posts - 1 through 2 (of 2 total)

You must be logged in to reply to this topic.