详解linux下的串口通讯开发

详解linux下的串口通讯开发

ID:38747524

大小:80.50 KB

页数:9页

时间:2019-06-18

详解linux下的串口通讯开发_第1页
详解linux下的串口通讯开发_第2页
详解linux下的串口通讯开发_第3页
详解linux下的串口通讯开发_第4页
详解linux下的串口通讯开发_第5页
资源描述:

《详解linux下的串口通讯开发》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、详解linux下的串口通讯开发串行口是计算机一种常用的接口,具有连接线少,通讯简单,得到广泛的使用。常用的串口是RS-232-C接口(又称EIARS-232-C)它是在1970年由美国电子工业协会(EIA)联合贝尔系统、调制解调器厂家及计算机终端生产厂家共同制定的用于串行通讯的标准。串口通讯指的是计算机依次以位(bit)为单位来传送数据,串行通讯使用的范围很广,在嵌入式系统开发过程中串口通讯也经常用到通讯方式之一。Linux对所有设备的访问是通过设备文件来进行的,串口也是这样,为了访问串口,只需打开其设备文件即可操作串口设备。在linux系统下面,每一个

2、串口设备都有设备文件与其关联,设备文件位于系统的/dev目录下面。如linux下的/ttyS0,/ttyS1分别表示的是串口1和串口2。下面来详细介绍linux下是如何使用串口的:  1.     串口操作需要用到的头文件#include         /*标准输入输出定义*/#include        /*标准函数库定义*/#include        /*Unix标准函数定义*/#include     #include      #i

3、nclude         /*文件控制定义*/#include       /*POSIX终端控制定义*/#include         /*错误号定义*/#include        /*字符串功能函数*/2.     串口通讯波特率设置波特率的设置定义在,其包含在头文件里。常用的波特率常数如下:B0-------à0                    B1800-------à1800B50-----à50 

4、                  B2400------à2400B75-----à75                   B4800------à4800B110----à110                 B9600------à9600B134----à134.5              B19200-----à19200B200----à200                 B38400------à38400B300----à300                 B57600------à57600B600----à600    

5、             B76800------à76800B1200---à1200              B115200-----à115200假定程序中想要设置通讯的波特率,使用cfsetispeed()和cfsetospeed()函数来操作,获取波特率信息是通过cfgetispeed()和cfgetospeed()函数来完成的。比如可以这样来指定串口通讯的波特率:#include   //头文件定义.......................structtermiosopt;          /*定义指向termios

6、结构类型的指针opt*/ /***************以下设置通讯波特率****************/cfsetispeed(&opt,B9600);/*指定输入波特率,9600bps*/cfsetospeed(&opt,B9600);/*指定输出波特率,9600bps*//************************************************/...................一般来说,输入、输出的波特率应该是一致的。3.     串口属性配置在程序中,很容易配置串口的属性,这些属性定义在结构体structterm

7、ios中。为在程序中使用该结构体,需要包含文件,该头文件定义了结构体structtermios。该结构体定义如下:#defineNCCS19structtermios{            tcflag_tc_iflag;              /*输入参数*/            tcflag_tc_oflag;              /*输出参数*/            tcflag_tc_cflag;              /*控制参数*/            tcflag_tc_ispeed;     

8、        /*输入波特率*/tcflag_tc_ospeed;      

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。