虽然使用诸如 CSerialPort VC串口类,MSComm VC 串口控件等非常方便,但有时这些控件并不适合自己的特殊需求,所以有必要了解一下基于Windows API的串口编程方法,下面介绍一下API串口编程的一般步骤及相关串口API函数。
串口操作一般有四步,分别是:
1) 打开串口
2) 配置串口
3) 读写串口
4) 关闭串口
1、 打开串口
在《VC 打开串口》一文...
串口基础知识 http://www.cnblogs.com/menlsh/archive/2013/01/28/2880580.html DTU知识 http://blog.csdn.net/xutonghuang1986/article/details/16845491 http://blog.c ...
//linux c: 串口设置//串口操作无非以下几个://1 打开 //2 设置串口属性//3 read write//struct termios能够表明一切串口属性,这里不详细说明.//详见 【Linux公开课】串口属性设置 http://mp.weixin.qq.com/s?src=3&ti ...
分类:
系统相关 时间:
2016-07-01 11:53:09
阅读次数:
455
1、串口的阻塞和非阻塞
阻塞的定义:
对于read,block指当串口输入缓冲区没有数据的时候,read函数将会阻塞在这里,一直到串口输入缓冲区中有数据可读取,read读到了需要的字节数之后,返回值为读到的字节数,然后整个程序才继续运行下去;(收)
对于write,block指当串口输出缓冲区满,或剩下的空间小于将要写入的字节数,则write将阻塞,一直到串口...
分类:
系统相关 时间:
2016-06-12 02:52:13
阅读次数:
590
1、串口的介绍 串口的介绍, 串口发送的顺序; 1.空闲位:这里是连续的 1 2.起始位:低电平 3.数据位:对于传输的数据位这里是自己去设定传输位数,可以5、6、7、8位,但是我们一般设置为 8位 串口的数据是从低位开始发送 4.奇偶校验位:保证传输数据位中的 1 的个数是奇数还是偶数。奇校验;保... ...
分类:
其他好文 时间:
2016-05-19 21:24:23
阅读次数:
281
最近由于项目的需要,需要用到java串口和windows端java程序的通讯,笔者也是刚刚接触串口这一模块,在网上搜索了很多的串口编程实例之类的,几乎前篇一律吧,但是串口通讯之前的配置是非常重要的,如果配置没有成功,编程也显得没有意义。串口编程主要有两种接口,第一种是利用sun提供的comm.jar ...
分类:
编程语言 时间:
2016-04-28 09:31:49
阅读次数:
224
/*com_writer.c*/#include "uart_api.h" int main(void){ int fd; char buff[BUFFER_SIZE]; if((fd=open_port(HOST_COM_PORT))<0) /*打开串口*/ { perror("open seri ...
分类:
系统相关 时间:
2016-04-14 15:50:25
阅读次数:
270
转自:http://www.2cto.com/os/201302/189931.htmllinux串口接收不到0x11解决网上许多流行的linux串口编程的版本中都没对c_iflag(termios成员变量)这个变量进行有效的设置,这样传送ASCII码时没什么问题,但传送二进制数据时遇到0x0d,0...
分类:
系统相关 时间:
2015-11-27 17:01:34
阅读次数:
199
有时候需要编写简单的测试软件,使用VC++6.0,研究了两种方式操作串口,VC 串口编程方法分为利用 VC 串口控件(或 VC 串口类)和直接调用Windows底层API函数(我称之为VC API 串口编程)两种方法在Windows 32位以上操作系统(Win98以上)中,将串口(包括其它通信设备)...
分类:
其他好文 时间:
2015-10-15 15:49:39
阅读次数:
277
最近在玩串口编程的时候觉得用有线的方式来连接在有些情况下还是相当麻烦的,总觉得不方便,正好之前我们这边有项目用蓝牙串口模块实现了数据通讯,可惜我没参与,不过原理很简单,就是用串口--》蓝牙模块---》蓝牙模块——》电脑/手机,感觉这种方式正好是我想要的,以后调试靠这个能方便很多,在一些无法连线的场....
分类:
其他好文 时间:
2015-09-07 09:31:35
阅读次数:
188