当前位置:首页 > 日记 > 正文

c语言控制电脑串口 | c语言串口通信编程

c语言控制电脑串口 | c语言串口通信编程

1. c语言串口通信编程

串口通信最重要的参数是波特率、数据位、停止位和奇偶校验。对于两个进行通信的端口,这些参数必须匹配。串行通信a,波特率:这是一个衡量符号传输速率的参数。指的是信号被调制以后在单位时间内的变化,即单位时间内载波参数变化的次数,如每秒钟传送240个字符,而每个字符格式包含10位(1个起始位,1个停止位,8个数据位),这时的波特率为240Bd,比特率为10位*240个/秒=2400bps。一般调制速率大于波特率,比如曼彻斯特编码)。

通常电话线的波特率为14400,28800和36600。波特率可以远远大于这些值,但是波特率和距离成反比。

高波特率常常用于放置的很近的仪器间的通信,典型的例子就是GPIB设备的通信。

b,数据位:这是衡量通信中实际数据位的参数。当计算机发送一个信息包,实际的数据往往不会是8位的,标准的值是6、7和8位。如何设置取决于你想传送的信息。比如,标准的ASCII码是0~127(7位)。扩展的ASCII码是0~255(8位)。

如果数据使用简单的文本(标准 ASCII码),那么每个数据包使用7位数据。每个包是指一个字节,包括开始/停止位,数据位和奇偶校验位。由于实际数据位取决于通信协议的选取,术语“包”指任何通信的情况。[1]c,停止位:用于表示单个包的最后一位。典型的值为1,1.5和2位。由于数据是在传输线上定时的,并且每一个设备有其自己的时钟,很可能在通信中两台设备间出现了小小的不同步。

因此停止位不仅仅是表示传输的结束,并且提供计算机校正时钟同步的机会。

适用于停止位的位数越多,不同时钟同步的容忍程度越大,但是数据传输率同时也越慢。

d,奇偶校验位:在串口通信中一种简单的检错方式。有四种检错方式:

2. c语言串口通信函数

Spcomm串口通信控件的基本属性、方法和事件说明如下:

CommName属性:计算机串口端口号的名字,COM1、COM2……等,在打开串口前,必须填写好此值。

Parity属性:校验位 None、Odd、Even、Mark、Space等。

BaudRate:设定支持串口通信用的波特率9600,4800等,根据实际需要来定,在串口打开后也可更改波特率,实际波特率随之更改。

ByteSize属性:表示一个字节中,使用多少个数据位收发数据,根据具体情况设定5、6、7、8等。

StopBits属性:表示一个字节中,使用停止位的位数,根据具体情况设定1、1.5、2等。

SendDataEmpty属性:布尔属性,为True时表示发送缓存为空,或者发送队列里没有信息;为False时表示表示发送缓存不为空,或者发送队列里有信息。

StartComm方法:用来打开通信串口,开始通信。如果失败,则会导致串行口错误。错误类型大致分为串行口己处于打开状态,所以不能打开串行口,不能创建读写进程,不能建立串行口缓冲区等。

StopComm方法:用来停止通信串行口的所有进程,关闭串口。

WriteCommData(pDataToWrite:PChar;dwSizeofDataToWrite:Word)方法是带有布尔型返回值 的函数,其中参量pDataToWrite是要写入串行口的字符串,dwSizeofDataToWrite是要写入的字符串的长度。该函数通过一个写线程向串行口输出缓冲区发送数据。发送操作将在后台默认执行。如果写线程 PostMessage成功,则返回值是True,若写线程失败,返回值是False。

OnReceiveData(Buffer:Pointer;BufferLength:Word),其中Buffer是指向输入缓冲区的指针。BufferLength是从缓冲区收到的数据长度。当输入缓冲区收到数据时,该事件被触发。当输入缓存有数据时将触发该事件,对从串口收到的数据进行处理。

3. c语言串口协议代码

只有1种。RS-485协议是一个串口协议,只定义传输的电压、阻抗等,不对软件协议给予定义。RS-485协议串行通讯标准是RS232和RS485。

  RS-485接口的最大传输距离标准值为4000英尺,实际上可达 3000米(理论上的数据,在实际操作中,极限距离仅达1200米左右),另外RS-232-C接口在总线上只允许连接1个收发器,即单站能力。而RS-485接口在总线上是允许连接多达128个收发器。即具有多站能力,这样用户可以利用单一的RS-485接口方便地建立起设备网络。

4. C语言串口通信编程例子详解

汇编语言,以前是必须要学习的。

但是,在MicroPython出来了之后,汇编成了可选项。特别是你的开发目标,是完成自己的奇思妙想时,更是如此。

一遍情况,下位机的硬件配置比较低,需要在上位机中,开发、测试后,编译成下位机的运行代码,然后写入下位机的存储器中。为了调试,必须学习下位机的汇编语言。

MicroPython出来了之后,直接把python源代码文件,写入下位机存储器。也就无需学习下位机的汇编语言了。

而且,python对串口通信、网络通信的支持非常好。直接调库,方便快捷。

如果是为了节省产品成本,还是要编译成下位机的机器码来运行。但你可以先用MicroPython做原型,确保模型符合设计要求,然后再用c重写一遍。

5. C语言 串口

一、连接交换机和PC

首先,需要先把PC和交换机连接在一起,这样才能进行管理。可网管型交换机都附带一条串口电缆,供网管员进行本地管理。先把串口电缆的一端插在交换机背面的Console口上,同时拧好螺钉,防止接触不良。串口线的另一端插在普通PC的串口上,此时要记住电缆插在COM1还是COM2口上,以后设置会用得着。

二、设置“超级终端”

连接好后,接通交换机和电脑电源并开机。Windows 98/Me/2000都提供“超级终端”服务,如果没有可以在“添加/删除程序”中的“通讯”组内添加。你也可以使用其他符合VTY100(终端的一种标准,现在很少见)标准的终端模拟程序。

在第一次运行“超级终端”时,系统默认为通过Modem连接,会要求用户输入连接的区号,随便输入一个即可。如果你的电脑中没有安装Modem,则会提示“在连接之前必须安装调制解调器,现在就安装吗?”,这里点击[否]按钮。

程序运行之后会提示你建立一个新的连接名称,我们在这里输入“Switch”。

点击[确定]按钮后,会出现一个窗口,要求用户选择连接时使用哪一个端口。这里一定要注意,应该选择你连接的PC串口的序号。如果不太清楚,可以用“串口1”和“串口2”分别试试。

串口号后,点击[确定]按钮,会出现一个COM口属性的窗口,里面有波特率、数据位、奇偶检、停止位、流量控制等参数设置。

这么多参数,如何设置呢?其实不要紧,只要点击一下[还原默认值]按钮,就会调用最保守的参数设置。默认参数在大多数的连接状况下都能适用,这样用户就不必再花费时间研究这些参数了。

设定好连接参数后,程序就会自动执行连接交换机的命令。咦!界面怎么一片空白?不要急,按一下回车键,交换机管理主界面的庐山真面目终于出现了。

从现在开始,你就得忘记鼠标的存在,所有的控制都要通过键盘来实现。不过操作非常简单:用回车键执行命令,用“Tab”键或箭头键在选项中移动,用空格键或键盘字母键、数字键改变某项参数。登录操作系统之前,用户需要输入管理员用户名和密码。大多数设备管理员的默认用户名都以“Admin”、“Super”等有意义的英文单词命名。

有的交换机有初始口令,有的则没有,只要仔细查看交换机使用手册就可以了解这些信息。

6. c串口通信代码

RS-232-C接口(又称EIARS-232-C)是目前最常用的一种串行通讯接口。计算机串口(RS232)共有9个针脚。

RS232接线有两种方法:

1、直连接法

RS232串口线直连接法就是正常的连接:2接2,3接3(即一头的RX与另一头的RX相连,TX与另一头的TX相连)5接5。

2、交叉接法

RS232串口线交叉接法就是交叉连接:2接3、3接2(即一头的RX和另一头的TX相连,TX与另一头的RX相连)5接5。

7. c语言串口程序

串行通信接口的意思。串口有多种,像RS232C,RS485,RS422等 PC上通常所指的串口是电脑后面的9针D型串口,它符合RS232C标准。

单片机上的串口是指RXD,TXD两个串行输入、输出通信接口,是TTL电平的,要想和标准RS232C串口通信需要加一块芯片,比如MAX232C。

PLC也有串口,西门子200带485串口,松下带422串口等

8. c语言串口通信程序

大致过程就是

配置串口通信,包括串口号、波特率、校验位、停止位这些信息;

打开串口,和打开文件一样,在Linux下是这样,Windows下没试过,估计也差不多;

发送数据,即写串口,就跟写文件类似;

读取串口,用read就行。

具体的函数和配置参数可以参考一些别人的代码。

9. C语言串口编程

ctrl+C得Ascii码-->316进制-->0X03所以你用pyserial写个0x03就行了,就相当于发了个ctrl+c

相关文章

波端口设置 | 端口波特率设置啥意

波端口设置 | 端口波特率设置啥意

设置,串口,服务器,串口通信,波特率,1. 端口波特率设置啥意思在讯宝扫枪配套扫描手册中找到波特率多少的设置项,选择和电脑端口一样的波特率,扫一下,保存退出2. 串口波特率怎么设置1 串口调试助手1.1 设置串口参数:串口号:1-16波特率:600-256000,>1…

ppt语言设置 | ppt语言设置英语改

ppt语言设置 | ppt语言设置英语改

语言,设置,中文,菜单,英语,1. ppt语言设置英语改回中文1、点击导航栏中的审阅,然后可以看到下面有一个语言功能,就是在这里进行设置的,能为PPT中的语言设置成英文,因此直接点击这里就能进行选择了。2、点击这里以后会出现一个语言首选项,直接点…

wps函数工龄计算公式 | wpsexcel计

wps函数工龄计算公式 | wpsexcel计

计算,函数,时间计算,操作,教程,1.wps excel怎么计算工龄“Excel计算员工工龄”的方法和步骤是:1、打开Excel工作表;2、由已知条件可知,C列为入职日期,也即是计算工龄的起始日期,可以以当前日期与入职日期间隔天数除以365得到整数为工龄,可以用当…

mac电脑excel指数幂 | excel幂函数

mac电脑excel指数幂 | excel幂函数

函数,拟合,曲线,输入,图像,1. excel幂函数1、打开Excel,然后以B1单元格里的指数函数为例,如下图所示:2、在B2单元格里输入如下公式"=POWER(1.89,A2)",回车就可以得到值。函数POWER(1.89,A2)中的"POWER"称为函数名,它的作用是计算乘方,如下图所示:3…

wps自动求和 | wps自动求和

wps自动求和 | wps自动求和

函数,文字,教程,表格,如何使用,1.wps如何自动求和1、打开wps中要计算的文档,在wps页面中找到求和位置区域,选中要计算的区域(A2-C2);2、求和命令,找到并点击右上方的求和命令,找到并点击执行求和命令,这时就会自动得出单元格答案;3、复制单元格格式…

wps文档表内自动排号 | WPS表格自

wps文档表内自动排号 | WPS表格自

排序,自动生成,文档,函数,自动填充,1.WPS表格如何自动排序材料/工具:wps20161、打开需要编辑的文档,如下图所示,此文档单元格数据为教程所用所编。2、打开以后点击执行排序—自定义排序按钮3、选定排序数据及方式:主要关键字,选择总分;排序方式选…

Win10系统中切换应用商店地区的方

Win10系统中切换应用商店地区的方

Win10系统中切换应用商店地区的方法,Win10,切换应用商店地区,  刚接触win10系统的朋友,还不怎么会Win10系统中切换应用商店地区,那么该怎么办呢?下面就是小编带来的Win10系统中切换应用商店地区的方法,相信对大家会有所帮助。  Win10系统中…

wps数据透视表计算字段 | excel数

wps数据透视表计算字段 | excel数

数据,计算,字段,函数,教程,1.excel数据透视表计算字段怎么使用函数操作步骤说明:在数据透视表上点击鼠标右键,选择【选项】-【公式】-【计算字段】。将默认的字段名改成“平均销售额”。在【公式】处输入等号,选择【销售额】,并点击【插入字段…

开学季学习APP安利

开学季学习APP安利

开学季学习APP安利,学习软件,英语翻译,英语单词,超级课程表,六月毕业季,九月开学季。大家马上就要开学了吧,首先恭喜要迈进大学大门的小伙伴~你们即将进入一个全新的环境,认识新的人,结交新的朋友,希望你们好好把握你们的大学生活,它可能会是你们…

手机wps换语言 | 为什么WPS手机版

手机wps换语言 | 为什么WPS手机版

中文,下载,语言,教程,英文,1.为什么WPS手机版下载到手机里就变成英文的,怎么调成中文1. 这个是软件版本问题。2. 卸载英文版,重新找中文版的。3. 重新下载一定要在官网找到正版来安装。4. 或者是关机重启手机,然后在官网找到一个旧版的WPS来…

在WPS根据前面数据排除名次 | 使用

在WPS根据前面数据排除名次 | 使用

数据,函数,等级,设置,排序,1.使用WPS表格时怎样将分数进行排名使用RANK()排名函数即可。假定,待排名数据在D列,首行为标题,降序排列(最大值排名为1),可在其他单元格中输入公式:=RANK($D2,$D:$D,0)式中:$D2 待查询数据;$D:$D 被排序数据组;0 降序排名(其…

java构造方法快捷键 | java构造方

java构造方法快捷键 | java构造方

快捷键,构造方法,方法,编程,类型,1. java构造方法快捷键有哪些构造方法是一种特殊的方法,与一般的方法不同是: 1.构造方法的名字必须与定义他的类名完全相同,没有返回类型,甚至连void也没有。 2.构造方法的调用是在创建一个对象时使用new操…