第10章 串行口通信编程.ppt

上传人:赵** 文档编号:63671400 上传时间:2022-11-25 格式:PPT 页数:19 大小:152KB
返回 下载 相关 举报
第10章 串行口通信编程.ppt_第1页
第1页 / 共19页
第10章 串行口通信编程.ppt_第2页
第2页 / 共19页
点击查看更多>>
资源描述

《第10章 串行口通信编程.ppt》由会员分享,可在线阅读,更多相关《第10章 串行口通信编程.ppt(19页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第第1010章章 串行口通信编程串行口通信编程目前主流的目前主流的PC机尤其是笔记本电脑,串口已经很少见机尤其是笔记本电脑,串口已经很少见到了,但是串口却是嵌入式开发中最常用的硬件接口。串口到了,但是串口却是嵌入式开发中最常用的硬件接口。串口有驱动简单的特点,几乎所有的嵌入式开发板和设备都提供有驱动简单的特点,几乎所有的嵌入式开发板和设备都提供了串口。在嵌入式开发中,串口通常用来打印设备状态信息了串口。在嵌入式开发中,串口通常用来打印设备状态信息和命令行,甚至于有的时候只能通过串口得到设备状态(如和命令行,甚至于有的时候只能通过串口得到设备状态(如设备刚启动的时候)。本章介绍串口基本的软硬件知

2、识,以设备刚启动的时候)。本章介绍串口基本的软硬件知识,以及如何在应用程序中利用串口收发数据,主要内容如下:及如何在应用程序中利用串口收发数据,主要内容如下:串口硬件介绍串口硬件介绍常见的串口协议常见的串口协议串口应用程序入门串口应用程序入门利用串口通过手机发送短信利用串口通过手机发送短信10.1 10.1 串口介绍串口介绍在计算机领域,串口可以说是历史悠久而且应用广泛。在计算机领域,串口可以说是历史悠久而且应用广泛。从最早的从最早的PC机到目前工业控制领域广泛应用的工业计算机、机到目前工业控制领域广泛应用的工业计算机、以及嵌入式系统等,都提供了串口。串口有功能简单、成本以及嵌入式系统等,都提

3、供了串口。串口有功能简单、成本低、便于连接等优点,是许多嵌入式系统必备接口之一。低、便于连接等优点,是许多嵌入式系统必备接口之一。10.1.1 10.1.1 什么是串口什么是串口串口是串行接口(串口是串行接口(Serial Port)的简称,是计算机一种)的简称,是计算机一种常用的接口,由于连线少、通讯控制简单而得到广泛的使用。常用的接口,由于连线少、通讯控制简单而得到广泛的使用。串口有几种标准,常见的一种称作串口有几种标准,常见的一种称作RS232接口的标准是在接口的标准是在1970年由美国电子工业协会(年由美国电子工业协会(EIA)和几家计算机厂商共同制)和几家计算机厂商共同制定的。定的。

4、RS232标准应用广泛,其全称是标准应用广泛,其全称是“数据终端设备数据终端设备(DTE)和数据通讯设备()和数据通讯设备(DCE)串行二进制数据交换接口)串行二进制数据交换接口”,该标准定义了串口的电气接口特性和各种信号电平等。,该标准定义了串口的电气接口特性和各种信号电平等。标准串口协议支持的最高数据传输率是标准串口协议支持的最高数据传输率是115Kbps。一些。一些改进的串口控制器支持更高甚至改进的串口控制器支持更高甚至460Kbps的数据传输率,如的数据传输率,如增强型串口增强型串口ESP(Enhanced Serial Port)和超级增强型串口)和超级增强型串口Super ESP。

5、RS232串口使用串口使用D型数据接口,最初有型数据接口,最初有9针和针和25针两种连针两种连接方式。随着计算机技术的不断进步,接方式。随着计算机技术的不断进步,25针的串口连接方式针的串口连接方式已经淘汰,目前所有的已经淘汰,目前所有的RS232串口都使用串口都使用9针连接方式。针连接方式。10.1.2 10.1.2 串口工作原理串口工作原理串口通过直接连接在两台设备间的线发送和接收数据,串口通过直接连接在两台设备间的线发送和接收数据,两台设备通信最少需要三根线(发送数据、接收数据和接地)两台设备通信最少需要三根线(发送数据、接收数据和接地)才可以通信。以最常见的才可以通信。以最常见的RS2

6、32串口为例,通信距离较近时串口为例,通信距离较近时(12m),可以用电缆线直接连接标准),可以用电缆线直接连接标准RS232端口。如果传端口。如果传输距离远,可以通过调制解调器(输距离远,可以通过调制解调器(MODEM)传输。因为串口)传输。因为串口设备工作频率低且容易受到干扰,远距离传输会造成数据丢设备工作频率低且容易受到干扰,远距离传输会造成数据丢失。失。10.1.2 10.1.2 串口工作原理串口工作原理针号针号功能说明功能说明缩写缩写1数据载波检测DCD2接收数据RXD3发送数据TXD4数据终端准备DTR5信号地GND6数据设备准备好DSR7请求发送RTS8清除发送CTS9振铃指示B

7、ELL10.1.3 10.1.3 串口流量控制串口流量控制常见的串口工具软件都提供了常见的串口工具软件都提供了RTS/CTS与与XON/XOFF选项。这两个选项对应选项。这两个选项对应RS232串口的两种流量控制方式。串串口的两种流量控制方式。串口流量控制主要应用于调制解调器的数据通讯,对于普通口流量控制主要应用于调制解调器的数据通讯,对于普通RS232串口编程,了解一点流量控制方面的知识是有好处的。串口编程,了解一点流量控制方面的知识是有好处的。1.什么是串口流量控制什么是串口流量控制2.硬件流量控制硬件流量控制3.软件流量控制软件流量控制10.2 10.2 开发串口应用程序开发串口应用程序

8、Linux操作系统对串行口提供了很好的支持。操作系统对串行口提供了很好的支持。Linux系系统中串口设备被当做一个字符设备(第统中串口设备被当做一个字符设备(第22章详细讲解)处理。章详细讲解)处理。PC机安装机安装Linux系统后在系统后在/dev目录下有若干个目录下有若干个ttySx(x代表代表从从0开始的正整数)设备文件。开始的正整数)设备文件。ttyS0对应第一个串口,也就对应第一个串口,也就是是Windows系统下的串口设备系统下的串口设备COM1,以此类推。,以此类推。10.2.1 10.2.1 操作串口需要用到的头文件操作串口需要用到的头文件在在Linux系统操作串口需要用到以下

9、头文件:系统操作串口需要用到以下头文件:#include#include#include#include#include#include#include#include 10.2.2 10.2.2 串口操作方法串口操作方法操作串口的方法与文件类似,可以使用与文件操作相同操作串口的方法与文件类似,可以使用与文件操作相同的方法打开和关闭串口、读写以及使用的方法打开和关闭串口、读写以及使用select()函数监听串口。函数监听串口。不同的是,串口是个字符设备,不能使用不同的是,串口是个字符设备,不能使用fseek()之类的文件之类的文件定位函数。此外,串口是个硬件设备,还可以设置串口设备定位函数。此

10、外,串口是个硬件设备,还可以设置串口设备的属性。的属性。10.2.3 10.2.3 串口属性设置串口属性设置10.1节讲解串口的基本知识,提到串口的基本属性包括节讲解串口的基本知识,提到串口的基本属性包括波特率、数据位、停止位和奇偶校验等参数。波特率、数据位、停止位和奇偶校验等参数。Linux系统通系统通常使用常使用termios结构存储串口参数,该结构在结构存储串口参数,该结构在termios.h头文件头文件定义如下:定义如下:struct termios unsigned short c_iflag;unsigned short c_oflag;unsigned short c_cflag

11、;unsigned short c_lflag;unsigned char c_line;unsigned char c_ccNCC;10.2.4 10.2.4 与与WindowsWindows串口终端通信串口终端通信本节给出一个和本节给出一个和Windows串口终端通信的例子。两台串口终端通信的例子。两台PC通过串口相连,其中一台通过串口相连,其中一台PC运行运行Windows系统,通过系统,通过XShell软件(软件(5.5.3节介绍)打开节介绍)打开COM1;另一台;另一台PC运行运行Linux系统。系统。10.3 10.3 串口应用实例串口应用实例-手机短信发送手机短信发送手机是目前使

12、用最广泛的通信设备之一,许多手机都提手机是目前使用最广泛的通信设备之一,许多手机都提供了与供了与PC互联的功能,其中最重要的一个接口就是串口互联的功能,其中最重要的一个接口就是串口(一些提供(一些提供USB接口的手机指令收发是把接口的手机指令收发是把USB设备虚拟一个设备虚拟一个串口设备进行通信的)。在串口设备进行通信的)。在GSM(全球数字移动电话网络)(全球数字移动电话网络)协议中规定了一组协议中规定了一组AT指令用于手机与其他设备通信,其中指令用于手机与其他设备通信,其中提供了发送短信的方法。本节讲解如何利用手机发送短信并提供了发送短信的方法。本节讲解如何利用手机发送短信并且给出了实例。

13、且给出了实例。10.3.1 PC10.3.1 PC与手机连接发送短信的物理结构与手机连接发送短信的物理结构在进行本章的试验之前需要建立一个手机和在进行本章的试验之前需要建立一个手机和PC机之间机之间的连接。的连接。10.3.2 AT10.3.2 AT指令介绍指令介绍AT指令集是指令集是GSM网络中网络设备之间发送控制信息的网络中网络设备之间发送控制信息的标准指令集。标准指令集。GSM网络终端设备(网络终端设备(TE)或者数据终端设备)或者数据终端设备(DTE)可以向终端适配器()可以向终端适配器(TA)发送)发送AT指令。使用指令。使用AT指令,指令,用户可以控制用户可以控制DTE发送短信息、

14、呼叫电话、读写电话本、发发送短信息、呼叫电话、读写电话本、发送传真等。送传真等。AT指令由手机制造商诺基亚、爱立信、摩托罗拉等共指令由手机制造商诺基亚、爱立信、摩托罗拉等共同研制,其中包括了短消息(同研制,其中包括了短消息(SMS)控制功能。对)控制功能。对SMS的控的控制有制有Block模式、文本模式和协议数据(模式、文本模式和协议数据(PDU)模式三种。目)模式三种。目前主要使用前主要使用PDU模式,其它两种模式逐步被淘汰。模式,其它两种模式逐步被淘汰。10.3.3 GSM AT10.3.3 GSM AT指令集指令集GSM07.05协议中定义了一组与协议中定义了一组与SMS(短消息)有关的

15、指(短消息)有关的指令。令。AT指令指令功能功能AT+CMGC向DTE发送一条短消息AT+CMGD删除存储在SIM卡中指定的短消息AT+CMGF发送短消息模式:0-PDU模式;1-文本模式AT+CMGL打印存储在SIM卡中的短消息AT+CMGR读取短消息内容AT+CMGS发送短消息AT+CMGW把准备发送的短消息存储在SIM卡AT+CMSS发送存储在SIM卡的短消息AT+CNMI显示接收到的短消息AT+CPMS短消息存储设备选择AT+CSCA设置短消息中心号码AT+CSCB使用蜂窝广播消息AT+CSMP设置文本模式参数AT+CSMS选择短消息服务方式10.3.4 PDU10.3.4 PDU编码

16、方式编码方式通常发送短信使用通常发送短信使用PDU模式,在模式,在GSM协议中对协议中对PDU模模式发送短信的数据做了规范。使用式发送短信的数据做了规范。使用PDU模式发送短信需要接模式发送短信需要接收号码、短消息中心号码和短消息内容三个数据。这三个数收号码、短消息中心号码和短消息内容三个数据。这三个数据的定义方法如下:据的定义方法如下:1接收号码生成方法2短消息中心号码生成方法3短消息内容生成方法4组合成完整的消息格式10.3.5 10.3.5 建立与手机的连接建立与手机的连接PC与手机通过串口进行连接,早期的手机提供了数据与手机通过串口进行连接,早期的手机提供了数据线。手机串口数据线一端连

17、接到手机上,另一端可以直接连线。手机串口数据线一端连接到手机上,另一端可以直接连接到接到PC的串口,这种方式不需要额外的驱动。最近几年生的串口,这种方式不需要额外的驱动。最近几年生产的手机大多数都提供了产的手机大多数都提供了USB接口,通过手机的接口,通过手机的USB驱动程驱动程序在手机与序在手机与PC之间建立一个虚拟的串口设备。通常手机厂之间建立一个虚拟的串口设备。通常手机厂商提供的是适合商提供的是适合Windows系统的驱动程序,系统的驱动程序,Linux系统可以系统可以使用一个名为使用一个名为Gnokii的手机驱动软件。本节以的手机驱动软件。本节以NOKIA6300手机为例,讲解在手机为

18、例,讲解在Linux下如何对手机编程发送短消息。下如何对手机编程发送短消息。提示:提示:NOKIA6300使用使用S40系统,提供系统,提供USB接口,其他接口,其他使用类似系统的手机也可以采用采用类似的方法驱动手机。使用类似系统的手机也可以采用采用类似的方法驱动手机。NOKIA早期的有些手机(比如早期的有些手机(比如NOKIA1110)提供了串口数)提供了串口数据线,可以直接操作。据线,可以直接操作。10.3.6 10.3.6 使用使用ATAT指令发送短信指令发送短信10.3.4节讲解如何生成节讲解如何生成PDU模式的数据,在生成符合模式的数据,在生成符合PDU模式的数据后,可以通过模式的数

19、据后,可以通过AT+CMGF指令和指令和AT+CMGS指令发送一条短信。以指令发送一条短信。以10.3.4节的内容为例,使用节的内容为例,使用AT指令发指令发送短消息过程如下:送短消息过程如下:AT+CMGF=0OKAT+CMGS=msg_lenentire_msg10.4 10.4 小结小结本章讲解串口组成和工作原理、编程方法,并在最后给本章讲解串口组成和工作原理、编程方法,并在最后给出一个操作手机发送短信的实例。串口的工作原理简单,是出一个操作手机发送短信的实例。串口的工作原理简单,是两台计算机设备之间传递数据的简单方式。串口编程入门比两台计算机设备之间传递数据的简单方式。串口编程入门比较容易,读者可以在自己的计算机上进行串口编程试验。第较容易,读者可以在自己的计算机上进行串口编程试验。第11章介绍章介绍Linux嵌入式系统的图形界面开发。嵌入式系统的图形界面开发。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁