Serial port ของ Baseboard กำหนดอยู่ที่ หมายเลขอะไร

อยู่ที่ serial4 ( javax.comm ) หรือ comm:5 ( CLDC )
ตามมาตราฐานแล้ว snap แบ่งการใช้งาน Serial port ออกเป็น 2 กลุ่ม คือ Class javax.comm กับ Class Connector (Connected Limited Device Configuration) โดยมี Mapping Port name ดังตารางข้างล่างนี้

CLDC Javax.comm Hardware Name Note
comm:1 serial0 serial0 Debug port
comm:2 serial1 serial1
comm:3 serial2 serial2 External Port
comm:4 serial3 serial3 External Port
comm:5 serial4 serial4 Share with Onewire

การ Open Commport ด้วย CLDC Generic Connection
ถ้าคุณต้องการเปิด SerialPort ด้วย Class Connector คุณต้องกำหนด Parameter ตามตารางข้างล่างนี้

Parameter Values Default values
Baudrate Baudrate Values 9600
Databits 7 or 8 8
Stopbits 1, 1.5 or 2 1
Parity e (Even), o (Odd) or n (None) none
Flowcontrol rtscts, xonxoff or none none
buffersize Input and output buffer sizes in bytes 1024

ตัวอย่าง การเปิด Serial Port 4
Connector.open(“comm:5;baudrate=115200;buffersize=4096;parity=e;flowcontrol=rtscts”);

การเปิด Commport ด้วย Javax.comm
ถ้าคุณต้องการเปิด Commport ด้วย Class Javax.comm คุณต้องกำหนด Parameter ตามตารางข้างล่างนี้

Parameter Values Default Values
Baudrate 9600 9600
Databits
  • DATABITS_5
  • DATABITS_6
  • DATABITS_7
  • DATABITS_8
DATABITS_8
Stopbits
  • STOPBITS_1
  • STOPBITS_1_5
  • STOPBITS_2
STOPBITS_1
Parity
  • PARITY_NONE
  • PARITY_ODD
  • PARITY_EVEN
  • PARITY_MARK
  • PARITY_SPACE
PARITY_NONE

คุณสามารถกำหนด FlowControl ได้ด้วยคำสั่ง setFlowControlMode (int flowcontrol)

  • FLOWCONTROL_NONE: no flow control
  • FLOWCONTROL_RTSCTS_IN: RTS/CTS (hardware) flow control for input
  • FLOWCONTROL_RTSCTS_OUT: RTS/CTS (hardware) flow control for output
  • FLOWCONTROL_XONXOFF_IN: XON/XOFF (software) flow control for input
  • FLOWCONTROL_XONXOFF_OUT: XON/XOFF (software) flow control for output

ตัวอย่าง การเปิด Serial Port 4
cpi = CommPortIdentifier.getPortIdentifier(“serial4”);
sp = (SerialPort)cpi.open(“SimpleReadApp”, 2000);
sp.setSerialPortParams(57600, sp.DATABITS_8, sp.STOPBITS_1, sp.PARITY_NONE);