| 전자부품 데이터시트 검색엔진 |
|
UM0851 데이터시트(PDF) 103 Page - STMicroelectronics |
|
|
|||||||||||||||||||||||||||||
UM0851 데이터시트(HTML) 103 Page - STMicroelectronics |
|
103 / 245 page ![]() UM0851 Communication device drivers Doc ID 16604 Rev 2 103/245 Writing data to the port is easy, just use the write() system call to send data: /* The write() function returns the number of bytes sent or -1 if an error occurred. fd: file descriptor buf: character array n: number of bytes to be transferred */ write(int fd, char *buf, int n); Reading data from a port is a little trickier. When you operate the port in raw data mode, each read() system call returns the number of characters that are actually available in the serial input buffers. If no characters are available, the call blocks (waits) until characters come in, an interval timer expires, or an error occurs. Reading data from the port /* fd: file descriptor buf: character array n: number of bytes to be transferred */ read(int fd, char *buf, int n); Closing a serial port Close disassociates a TTY from its underlying device and resets the TTY's device control block. When the port is closed for the last time you can do the proper hardware shutdown and free any allocated memory. To close the serial port, just use the close system call: int fd; /* fd: file descriptor */ close(fd); Application code The test code given below uses the open(), read(), ioctl() and close() functions. The serial port ttyS0 is opened and later it receives the data when the read() function is called. The input and output port baud rate can be also configured in the code by using the cfsetispeed() and cfsetospeed() functions. #include<stdio.h> #include<fcntl.h> #include<termios.h> main() { int fd; char s[10]; fd=open("/dev/ttyS0", O_RDWR, 0); if(fd < 0) return -1; struct termios options; /*Get the current options for the port......*/ ioctl(fd,TCGETS,&options); /*Set the baud rates........................*/ cfsetispeed(&options, B115200); cfsetospeed(&options, B115200); |
|
링크 URL |
| ALLDATASHEET 가 귀하에 도움이 되셨나요? [ DONATE ] |
Alldatasheet는? | 광고문의 | 운영자에게 연락하기 | 개인정보취급방침 | 링크 투 데이터시트 | 링크교환 | 제조사별 검색 All Rights Reserved©Alldatasheet.com |
| Russian : Alldatasheetru.com | Korean : Alldatasheet.co.kr | Spanish : Alldatasheet.es | French : Alldatasheet.fr | Italian : Alldatasheetit.com Portuguese : Alldatasheetpt.com | Polish : Alldatasheet.pl | Vietnamese : Alldatasheet.vn Indian : Alldatasheet.in | Mexican : Alldatasheet.com.mx | British : Alldatasheet.co.uk | New Zealand : Alldatasheet.co.nz |
|
Family Site : ic2ic.com |
icmetro.com |