b、数据位:这是用来测量数据位的变量。上位机发送某个信息,标准的值是8位,7位或者5位,而现实上,发送的信息数据并不可能是8位。具体怎么配置,决定于用户想要传输的内容。比如,用户想要使用比较简易的文字,也就是信息交换标准代码,只有0到127的,那么实际使用的就会是7位数据包,如果想用扩充代码,那就是0到255的,8位数据包。包代表着字节,一个包对应的就是一个字节,包含了许多的变量。
c、停止位:停止位代表单个字节的末位。一般值为1,1。5和2位。因为每一个仪器自身所拥有的时钟都是不一样的,而且每条线上的数据的传输时间是固定的,那么在实际使用的过程中,仪器之间偶尔会出现一点不同步。所以停止位在提供给计算机校正时钟同步的机会的同时,也表示传输已经结束。随着合适的停止位的位数的变多,不一样的时钟同步的忍耐能力就变大,不过传输速率会变得更慢。
d、奇偶校验位:这是在串口进行通信时,检查错误的一个简易的方法。通常检查错误有四种方法,不过用户也可以选择不检查,也就是不需要奇偶校验位。为了保证传送出去的数据有逻辑上的高位,串口会配置一个值,这就是校验位,这样就能了解通信过程中有没有噪声,数据传收是不是同步。论文网
2。2基于QT的串口编程
QT是一个图形用户界面应用程序框架,可以跨多个平台,基于C++,它可以使对象即使在不知道对方信息的情况下,通过信号与槽的机制,也可以彼此进行合作了,由此来实现真正的构建编程。使用QT对应用程序编程一般有两种方法:(1)在QT已经存在的类中,找到自己需要使用的类,并使用类中所定义的方法来给对象彼此建立联系;(2)如果QT中没有自己需要使用的类,这时就需要使用第三方提供的类,库或者根据实际情况的需要,由用户自己定义相应的类, QtSerialPort模块是Qt5库的附加部分,为硬件和虚拟的串口提供了统一的接口并且该模块也增加了对Qt4的支持,该模块API只包括两个类:Serial和SerialPortInfo,而众多类基本上可以分为三层。为SQL接口层与具体数据库提供连接的底层桥梁是驱动层;SQL接口层的主要功能是访问数据库,其中QSqlDatabase类负责创建连接,QSqlQuery类允许使用SQL语言来与数据库实现交互,其他的类都可以支持该层;实现将窗口部件与数据库相链接的功能则交给用户接口层的几个类,它们是抽象的,更高层次的,即便使用者不熟悉SQL也可以通过它们操作数据库。只需要在QT中的项目文件,pro文件中,添加一行代码:
QT+=sql
就可以使用QtQql模块中的这些类。
2。3SQlite的特点和结构
2。3。1SQlite的特点
SQlite数据库是通过c语言编写的,开源式的嵌入式数据库,数据库最大支持的大小为2TB,每个数据库都完完全全储存于单个磁盘文件中,SQlite则根据这些文件系统,来获得使用其数据库的权限。【6】它具有以下特点:(1)体积较小, 速度快:通过优化尺寸,并且不增减其所包含的效能的状况下,SQlite数据库的内存占有量可以低于225k,在实际编译中,进一步删除一部分没有用到的特性,那么数据库的内存占有量可以到170k。 (2)功能完善:提供了对SQL92 的大多数支持:支持嵌套SQL,支持触发器,视图,多表引索事务等功能。对于事务的ACID特性,比如原子性,一致性,持久性等,SQlite都支持。所以即使发生系统崩溃或是突然断电等意外时,SQlite数据库也不会丢失数据。SQlite可以实现独立事务处理,通过数据库级上的共享锁和独占性。 (3)零配置:SQlite使用十分方便,并不需要用户去提前安装设置,不需要管理员去分配给用户权限或者创建新的数据库,不需要通过进程来配置,停止与启动。【7】