- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
第七章嵌入式Linux下的通信应用;主要内容:
一、串口简介
二、串口编程;随着计算机系统的应用和微机网络的发展,通信功能显得越来越重要。串口作为计算机一种常用的接口,具有连接线少、通信简单的优点,因此得到广泛应用。特别是在嵌入式系统的开发和应用中,经常需要使用宿主机实现目标机的调试及现场数据的采集和控制,从而通过串口线连接宿主机和目标机,达到通信的目的。
现在的PC机一般有两个串行口:COM1和COM2,我们可以选择任何一个进行连接,然后在操作系统上面进行正确的配置。Windows操作系统和Linux操作系统都能够很好地支持串口,特别是在Linux环境下可以对串口通信简单地进行编程,下面就来介绍串口编程。;在Linux系统环境下的所有设备都提供了相应的设备文件供用户访问,设备文件都位于/dev目录下。COM1和COM2对应的文件分别为/dev目录下的ttyS0和ttyS1,我们可以通过打开并读写这两个文件来对串口进行操作。使用open()函数打开串口的例子如下:
intfd;
/*以读写方式打开串口*/
fd=open(/dev/ttyS0,O_RDWR);
if(-1==fd){
/*不能打开串口一*/
perror(提示错误!);
}
;Termios的结构如下:
Structtermios{
tcflag_tc_iflag;//输入模式
tcflag_tc_oiflag;//输出模式
tcflag_tc_cflag;/控制模式
tcflag_tc_lflag;//局部模式
cc_tc_cc[NCCS];//特殊控制字符
}
在上面的结构体成员中,c_cflag是最常用的,它用于控制串口的波特率、奇偶校验、停止位等。
在c_cflag成员中,选项CLOCAL和CREAD是必须的,即本地和接收使能。例如,下面的代码将波特率设为115200、数据位为8位、偶校验并且停止位为1位:
options.c_cflag|=B115200|CLOCAL|CREAD|CS8|PARENB;
options.c_cflag=~PARODD;
options.c_cflag=CSTOPB;;所有对串口的操作都是通过结构体termios和几个函数实现的,其中最常用的两个函数是tcgetattr()和tcsetattr()。在一般情况下,程序通过tcgetattr()函数获取设备当前的设置,然后修改这些设置,最后用tcsetattr()使这些设置生效。我们也可以用tcgetattr()函数保存设备的配置,最后在程序结束前用函数tcsetattr()恢复设备的配置。
常用的操作结构体termios的函数如下:
inttcgetattr(intfd,structtermios*t)
该函数用于获得文件描述符fd所表示设备的当前设置值,并将此设置值写入指针t内。若成功,函数返回0,否则返回-1。
inttcsetattr(intfd,intoptions,structtermios*t)
tcsetattr()函数用来将termios结构指针t内的设置值赋给当前用文件描述符fd表示的设备终端。参数options决定什么时候改变生效;intcfsetispeed(structtermios*t,speed_tspeed);
intcfsetospeed(structtermios*t,speed_tspeed)
上面的两个函数分别用来设置设备的输入和输出速度,通过结构体t分别将设备的输入输出速度设为speed。它们只是设置了termios结构体的速度,若要修改设备的速度还需要调用tcsetattr()函数。
intcfgetispeed(structtermios*t);
intcfgetospeed(structtermios*t);
上面两个函数分别用来获得设备的输入和输出速度。
inttcflush(intfd,intqueue);
丢弃写入要引用的对象,其中参数fd为要处理的串口。;主要内容:
一、网络通信
二、Socket简介
三、网络编程;随着网络的发展,需要解决网络间不同主机进程间的相互通信问题。为此,首先要解决网络上不同进程的标识问题。在同一主机上,采用唯一的进程号(processID)来标识不同的进程,但是对于网络上的不同主机,可以用相同的进程号来
您可能关注的文档
- 2022年电子商务安全技术.ppt
- 2022年特色小镇产业大数据项目建设方案完整版.pptx
- 2022年大学计算机复习提纲.ppt
- 2022年可编程控制器应用系统设计2.ppt
- 2022年单片机控制系统概述.ppt
- 2022年单片机应用系统设计与开发1.ppt
- 2022年单元认识公路CAD.ppt
- 2022年利用第方软件进行网络管理.ppt
- 2022年关系数据库标准语言SQL.ppt
- 2022年串行口及串行通信技术.ppt
- 2025年护理资格考试讲题题库及答案.doc
- 公司无线电监测员岗位职业健康、安全、环保操作规程.docx
- 高考数学精练第3章专题2 抽象函数问题.pptx
- 财务成本管理与财务报表分析(一).pdf
- 西北政法大学2024-2025学年《计算机应用基础》期末考试试卷(A卷)附参考答案.docx
- 2025符号学考研真题及答案.doc
- 甘肃省白银市靖远县第四中学2025—2026学年度高二上学期期中考试历史试题(含答案).docx
- 公司司磅工岗位设备操作规程.docx
- 西北政法大学2024-2025学年《计算机应用基础》期末考试试卷(B卷)附参考答案.docx
- 福建省福州第一中学2025—2026学年度高二上学期期中考试历史试题(含答案).docx
有哪些信誉好的足球投注网站


文档评论(0)