Home>Article>Operation and Maintenance> What does linux serial port mean?
Linux serial port is the abbreviation of serial interface. It is an expansion interface that uses serial communication. The serial port is a commonly used interface in computers. It has the characteristics of few connecting lines and simple communication. It only requires a pair of transmission lines. To achieve two-way communication, Linux can use the system call open() or close() to open or close the serial port.
#The operating environment of this tutorial: linux7.3 system, Dell G3 computer.
Serial Interface (Serial Interface) refers to the sequential transmission of data bit by bit. It is characterized by simple communication lines. As long as a pair of transmission lines can achieve bidirectional Communication (telephone lines can be directly used as transmission lines), thus greatly reducing costs. It is especially suitable for long-distance communication, but the transmission speed is slow.
The communication method in which each bit of data of a message is transmitted bit by bit in order is called serial communication.
The characteristics of serial communication are:
The transmission of data bits is carried out in bit order and can be completed with at least one transmission line;
The cost is low but the transmission speed is slow. The distance of serial communication can range from a few meters to several kilometers;
According to the direction of information transmission, serial communication can be further divided into simplex, half-duplex and full-duplex. .
The serial port is the physical interface for serial communication on the computer. In the history of computers, serial ports have been widely used to connect computers, terminal devices and various external devices. Although Ethernet interfaces and USB interfaces also transmit data in a serial stream, serial port connections usually refer to hardware or modem interfaces that are compatible with the RS-232 standard.
The serial interface is referred to as the serial port (usually referred to as the COM interface), which is an expansion interface that uses serial communication. The serial port is a commonly used interface in computers. It has fewer connecting lines and simple communication, and is widely used. The characteristic of the serial port is that the communication line is simple. Only a pair of transmission lines can achieve two-way communication, thereby greatly reducing the cost. It is especially suitable for long-distance communication, but the transmission speed is slow. In Linux, there are also a large number of serial ports. In this article, we will talk about the serial ports under Linux.
1. Header files required for serial port
1: #include /*Standard input and output definition*/
2: #include /*Standard function library definition*/
3: #include /*Unix standard function definition*/
4: #include
5: #include
6: #include /*File control definition*/
7: #include /*POSIX terminal control definition*/
8: #include /*Error number definition*/
2. Open and close the serial port
The operation of the serial port device file is basically the same as other file operations. You can use the system calls open(), close() to open or close the serial port.
Under Linux, the serial port file is under /dev. For example, serial port one is /dev/ttyS0 and serial port two is /dev/ttyS1.
Open(), close() system call prototype
1: #include 2: #include 3: #include 4: int open(const char *path, int oflags); 5: int open(const char *path, int oflags, mode_t mode); 6: #include 7: int close(int fildes); 8: 实例:打开串口ttyS0。 9: int fd; 10: /*以读写方式打开串口*/ 11: fd = open( "/dev/ttyS0", O_RDWR); 12: if (-1 == fd){ 13: /* 不能打开串口一*/ 14: perror("open serial port error"); 15: }
3. Setting up the serial port
Setting up the serial port includes baud rate setting and verification bit, stop bit settings. In the serial port settings, it is mainly to set the values of the members of the struct termios structure.
struct termios structure is as follows
1: #include 2: struct termio 3: { 4: unsigned short c_iflag; /* input options输入模式标志 */ 5: unsigned short c_oflag; /* output options输出模式标志 */ 6: unsigned short c_cflag; /* control options控制模式标志*/ 7: unsigned short c_lflag; /* local mode flags */ 8: unsigned char c_line; /* line discipline */ 9: unsigned char c_cc[NCC]; /* control characters */ 10: };
Related recommendations: "Linux Video Tutorial"
The above is the detailed content of What does linux serial port mean?. For more information, please follow other related articles on the PHP Chinese website!