LCM Module:LCM under Linux

From LEXWiKi

(Difference between revisions)
Jump to: navigation, search
(How to use the DEMO application)
Current revision (13:34, 25 February 2022) (edit) (undo)
 
(17 intermediate revisions not shown.)
Line 1: Line 1:
[[Category:AllowPages]]
[[Category:AllowPages]]
== LCM Module Spec ==
== LCM Module Spec ==
-
LCM Module spec and command list :[ftp://ftp.lex.com.tw/Engineer/SoftSupport/AP_Module/LCM_release/SCS02002R0LEW--ENGLISH.pdf LCM-Spec]
+
LCM Module spec and command list :
-
== The Sample code source you can download form ==
+
-
Source file: [ftp://ftp.lex.com.tw/Engineer/SoftSupport/AP_Module/LCM_release/Linux_base/LCM_src_v11.tar.gz LCM_src_v11.tar.gz]
+
-
Binary file: [ftp://ftp.lex.com.tw/Engineer/SoftSupport/AP_Module/LCM_release/Linux_base/LCM_v11.tar.gz LCM_v11.tar.gz]
+
<Google Drive> [https://drive.google.com/file/d/1f9f4yxEA5FLhMidfcWN97lkqGCF4t7H5/view?usp=sharing LCM-Spec]
 +
 
 +
<FTP> [ftp://ftp.lex.com.tw/Engineer/SoftSupport/AP_Module/LCM_release/SCS02002R0LEW--ENGLISH.pdf LCM-Spec]
 +
 
 +
== The Sample code source you can download from ==
 +
Source file:
 +
 
 +
<Google Drive> [https://drive.google.com/file/d/1v2xZGQXceBavjyq8q4me4qEOeZeCEz0l/view?usp=sharing LCMctl_v2.2L_Src]
 +
 
 +
<FTP> [ftp://ftp.lex.com.tw/Engineer/SoftSupport/AP_Module/LCM_release/Linux_base/LCMctl_v2.2L_Src.tar.gz LCMctl_v2.2L_Src]
 +
 
 +
About source code.
 +
 +
1.We suggest using Code::Blocks as an IDE in Linux.
 +
 +
2.Or you can just use "make" to compile the source code in the LCMctlv22LSrc/ folder or LCMctlv22LSrc/src/ folder.
 +
And you can excute "lcmctlv22l" file in the LCMctlv22LSrc/src/ folder
 +
 +
$cd LCMctlv22LSrc/src/
 +
$make
 +
$./lcmctlv22l
 +
 
 +
Binary file:
 +
 
 +
<Google Drive> [https://drive.google.com/file/d/1R6Od8o4V1Tlfg_9Nt7bw_uK5eZkojw5S/view?usp=sharing LCMctl_v2.2L_Bin]
 +
 
 +
<FTP> [ftp://ftp.lex.com.tw/Engineer/SoftSupport/AP_Module/LCM_release/Linux_base/LCMctl_v2.2L_Bin.tar.gz LCMctl_v2.2L_Bin]
== How to Switch functions ==
== How to Switch functions ==
Line 29: Line 53:
== Sample code Introduction ==
== Sample code Introduction ==
-
===Open COM Port Device===
+
===Open COM Port Device(COM1~COM4)===
-
In Sample code /LCM.cpp lin 25
+
portinfo_t portinfo1 ={'0' , 9600 , '8', '0' , '0' , '0' , '0' , '0' , '1' , 0 };
-
portinfo_t portinfo ={
+
portinfo_t portinfo2 ={'0' , 9600 , '8', '0' , '0' , '0' , '1' , '0' , '1' , 0 };
-
'0', // print prompt after receiving
+
portinfo_t portinfo3 ={'0' , 9600 , '8', '0' , '0' , '0' , '2' , '0' , '1' , 0 };
-
9600, // baudrate: 9600
+
portinfo_t portinfo4 ={'0' , 9600 , '8', '0' , '0' , '0' , '3' , '0' , '1' , 0 };
-
'8', // databit: 8
+
//Default tty:COM2
-
'0', // debug: off
+
-
'0', // echo: off
+
-
'0', // flow control:none
+
-
'4', // default tty: COM2
+
-
'0', // parity: none
+
-
'1', // stopbit: 1
+
-
0 // reserved
+
-
};
+
-
PortSet(fdcom, &portinfo);
+
-
/*******************init to clear the Screen*******************/
+
-
fdcom = PortOpen(&portinfo); //Open the COM port devices
+
-
PortSend(fdcom, &clrcom, C8); //Clear All screen message
+
===Send the UP line message to LCM Device===
===Send the UP line message to LCM Device===
-
In Sample code /LCD_CTLDlg.cpp lin 15 and 58
 
char upline[C32]={0x1b,0x51,0x41}; //for LCM UP line command
char upline[C32]={0x1b,0x51,0x41}; //for LCM UP line command
-
gets(message);
+
text = gtk_entry_get_text(GTK_ENTRY(entry));
-
sprintf(upline+3,"%s\r",message);
+
sprintf(upline+3,"%s\r", text);
PortSend(fdcom, upline, C32); //Send the message to LCM
PortSend(fdcom, upline, C32); //Send the message to LCM
 +
 +
===Clear the UP line message of LCM Device===
 +
char upline[C32]={0x1b,0x51,0x41}; //for LCM UP line command
 +
const char *clear = "";
 +
sprintf(upline+3 , "%s\r" , clear);
 +
PortSend(fdcom, upline, C32);
===Send the LOW line message to LCM Device===
===Send the LOW line message to LCM Device===
-
In Sample code /LCD_CTLDlg.cpp lin 16 and 66
 
char lowline[C32]={0x1b,0x51,0x42}; //for LCM LOW line command
char lowline[C32]={0x1b,0x51,0x42}; //for LCM LOW line command
-
gets(message);
+
text = gtk_entry_get_text(GTK_ENTRY(entry));
-
sprintf(lowline+3,"%s\r",message);
+
sprintf(lowline+3,"%s\r",text);
PortSend(fdcom, lowline, C32); //Send the message to LOW Line
PortSend(fdcom, lowline, C32); //Send the message to LOW Line
 +
 +
===Clear the LOW line message of LCM Device===
 +
char lowline[C32]={0x1b,0x51,0x42}; //for LCM LOW line command
 +
const char *clear = "";
 +
sprintf(lowline+3 , "%s\r" , clear);
 +
PortSend(fdcom, lowline, C32);
 +
===LCM Command list===
===LCM Command list===
Please check the page6 in spec file ,you can download form [ftp://ftp.lex.com.tw/Engineer/SoftSupport/AP_Module/LCM_release/SCS02002R0LEW--ENGLISH.pdf LCM-Spec]
Please check the page6 in spec file ,you can download form [ftp://ftp.lex.com.tw/Engineer/SoftSupport/AP_Module/LCM_release/SCS02002R0LEW--ENGLISH.pdf LCM-Spec]

Current revision

Contents

LCM Module Spec

LCM Module spec and command list :

<Google Drive> LCM-Spec

<FTP> LCM-Spec

The Sample code source you can download from

Source file:

<Google Drive> LCMctl_v2.2L_Src

<FTP> LCMctl_v2.2L_Src

About source code.

1.We suggest using Code::Blocks as an IDE in Linux.

2.Or you can just use "make" to compile the source code in the LCMctlv22LSrc/ folder or LCMctlv22LSrc/src/ folder.
  And you can excute "lcmctlv22l" file in the LCMctlv22LSrc/src/ folder
 
 $cd LCMctlv22LSrc/src/
 $make
 $./lcmctlv22l

Binary file:

<Google Drive> LCMctl_v2.2L_Bin

<FTP> LCMctl_v2.2L_Bin

How to Switch functions

Our LCM module can support TTL and RS232 type,Please make sure your serial port support type,
And switch LCM JUMP as below picture!!

Function:
Image:LCM_RS232.JPG

TTL Function:
Image:LCM_TTL.JPG

How to use the DEMO application

Image:lcmctl.JPG

  1. COM Port selection
  2. Confirm COM Port select
  3. Upline message enter
  4. Upline message send
  5. Clear upline
  6. Lowline message enter
  7. Lowline message send
  8. Clear lowline

Sample code Introduction

Open COM Port Device(COM1~COM4)

portinfo_t portinfo1 ={'0' , 9600 , '8',  '0' , '0' , '0' , '0' , '0' ,  '1' , 0 };
portinfo_t portinfo2 ={'0' , 9600 , '8',  '0' , '0' , '0' , '1' , '0' ,  '1' , 0 };
portinfo_t portinfo3 ={'0' , 9600 , '8',  '0' , '0' , '0' , '2' , '0' ,  '1' , 0 };
portinfo_t portinfo4 ={'0' , 9600 , '8',  '0' , '0' , '0' , '3' , '0' ,  '1' , 0 };
//Default tty:COM2

Send the UP line message to LCM Device

   char upline[C32]={0x1b,0x51,0x41}; //for LCM UP line command
   text = gtk_entry_get_text(GTK_ENTRY(entry));
   sprintf(upline+3,"%s\r", text);
   PortSend(fdcom, upline, C32); //Send the message to LCM

Clear the UP line message of LCM Device

   char upline[C32]={0x1b,0x51,0x41}; //for LCM UP line command
   const char *clear = "";
   sprintf(upline+3 , "%s\r" , clear);
   PortSend(fdcom, upline, C32);

Send the LOW line message to LCM Device

   char lowline[C32]={0x1b,0x51,0x42}; //for LCM LOW line command
   text = gtk_entry_get_text(GTK_ENTRY(entry));
   sprintf(lowline+3,"%s\r",text);
   PortSend(fdcom, lowline, C32); //Send the message to LOW Line

Clear the LOW line message of LCM Device

   char lowline[C32]={0x1b,0x51,0x42}; //for LCM LOW line command
   const char *clear = "";
   sprintf(lowline+3 , "%s\r" , clear);
   PortSend(fdcom, lowline, C32);

LCM Command list

Please check the page6 in spec file ,you can download form LCM-Spec

Personal tools