Linux串口编程笔记-详细课件.docxVIP

  • 2
  • 0
  • 约3.22万字
  • 约 42页
  • 2018-02-17 发布于湖北
  • 举报
Linux串口编程笔记-详细课件

storysnail的Linux串口编程笔记storysnail的Linux串口编程笔记? Author : He YiJun (storysnailat QQ:363559089) Develop Team : 7fane Team (,测试网站,到2013年11月底) Editor : Yang QiuXi Art Designer : He YiJun License : 7fane Team License 1.0 Last Update : 2013-03-26 ??? 这半个月因肺部感染而不得不暂时终止那令人生厌的中石油巡检工作,闭门在家安静的?修养。整月的工钱自然是泡汤了,可却得来了极其珍贵的个人闲暇时光,让我能淋漓尽致的?做软件方面的研究,虽是粗茶淡饭,针剂苦药,但可静心埋头于书房,却比天堂还甜美!??? 恍惚已至月末,工作单位来了音讯,让我一下子从甜美的梦中惊醒,从哪里来,回哪里?去,这种如主体思想一样可怕的思维是我挥之不去的梦魇,无奈、不知所措、病弱的身体?却不由自主的向那发声的地方靠去!??? 好了,还是不再发牢骚了,只是个人觉得这种臃肿低效的国企能够存在,本身就是对“?国富论”绝佳的嘲讽,我只能用世界是多元的来啊Q一下了!??? 切入正题,这段时间做GSM/GPRG和GPS的小东西,需要通过串口发送AT指令来控制,以前?调试一直在用串口助手和minicom之类的现成软件,可是一点都不爽,为什么不自己写个操作?串口的软件,就像在ARM和stm32上一样!??? 这文章其实只是我的一个笔记,分为两篇,一篇是《storysnail的Windows串口编程笔记》,?另一篇是《storysnail的Linux串口编程笔记》,由于网上已经有非常多的类似文章,有些长篇?大论,有些短小精悍,连我自己都思考过是否有必要再写一篇,但在Ling的鼓动下还是写了!??? 本篇是Linux串口编程笔记,详细介绍了串口通信会用到的api函数,并提供了一个示例程序,?这个示例程序是在EEEPC701的debian系统上编写测试的。一:写串口程序用到的函数?? 1:Linux与windows串口设备文件名对照?操作系统串口1 串口2 USB/RS-232转换器Windows COM1 COM2 COMX(我的系统上X=4)Linux /dev/ttyS0 /dev/ttyS1 /dev/ttyUSB0 ? 2:写串口程序用到的函数???? 串行通讯函数定义在termios.h头文件中,所以需要包含该文件。下面是要介绍的函数列表?open 打开串口close 关闭串口read 接收数据write 发送数据fcntl 设置IO为阻塞或非阻塞ioctl 实现POSIX.1 GTI控制界面所有函数功能tcgetattr 读取串口设备的当前属性,保存在termios_p所指向的结构中tcsetattr 设置串口设备的当前属性cfgetospeed 返回输出波特率cfgetispeed 返回输入波特率cfsetispeed 设定输入波特率cfsetospeed 设定输出波特率2.1?open?用途:打开串口?原型:int open( const char * pathname,int flags);?参数说明:?pathname:?? 指向欲打开的文件路径字符串?flags?????? 所能使用的标志位:???????????????? O_RDONLY?? 以只读方式打开文件???????????????? O_WRONLY?? 以只写方式打开文件???????????????? O_RDWR???? 以可读写方式打开文件。??????????????????????????? O_RDONLY、O_WRONLY、O_RDWR标志位是互斥的,不可同时使用,但可与下列的??????????????????????????? 标志位|运算组合。???????????????? O_CREAT??? 若欲打开的文件不存在则自动建立该文件。???????????????? O_EXCL???? 如果O_CREAT 也被设置,此指令会去检查文件是否存在。文件若不存在则建立该文件,??????????????????????????? 否则将导致打开文件错误。此外,若O_CREAT与O_EXCL同时设置,并且欲打开的文件为??????????????????????????? 符号连接,则会打开文件失败

文档评论(0)

1亿VIP精品文档

相关文档