串口编程补充

首先声明此文只适合我这等串口编程新手,也欢迎大神吐槽

参数转换问题:

 /// <summary>
        /// 数据转换
        /// </summary>
        /// <param name="values">要转换的byte数组</param>
        /// <param name="factor">计算因子</param>
        /// <param name="reh">高位字符</param>
        /// <returns></returns>
        private double ByteConvertDouble(byte[] values,int factor = 0, bool reh = false)
        {
            string hexStr = string.Empty;
            for (int i = 0; i < values.Length; i++)
            {
                hexStr += GetHexStr(values[i]);
            }
            if (reh)
                hexStr = hexStr.Substring(1);
            double temp = Convert.ToInt32(hexStr, 16) * Math.Pow(0.1, factor);
            if (reh)
                temp *= (-1);
            return temp;
        }
        /// <summary>
        /// byte 转十六进制字符
        /// </summary>
        /// <param name="b"></param>
        /// <returns></returns>
        private string GetHexStr(byte b)
        {
            return (b / 16).ToString("X") + (b % 16).ToString("X");
        }

取数据时要看其所占的位数

时间: 2024-10-25 13:40:41

串口编程补充的相关文章

Qt5串口编程详解【新版】

Qt5的串口比Qt4的好用得多,Qt4的貌似没有集成官方库. 之前我也写过Qt5的串口,不过有一些缺陷,这次试图改进.转载请保留链接:http://blog.csdn.net/qq363692146/article/details/26049355 本文发表于2014.5.17. 如果在linux下,记得使用root权限,可以用root权限打开可执行文件,或者用root权限打开Qt Creator.(原因是串口常常需要特权,有些串口有特权也只能度而不能写,这个可能是Qt本身的问题)[至于安卓端,

Linux 程序设计学习笔记----终端及串口编程基础之概念详解

转载请注明出处,谢谢! linux下的终端及串口的相关概念有: tty,控制台,虚拟终端,串口,console(控制台终端)详解 部分内容整理于网络. 终端/控制台 终端和控制台都不是个人电脑的概念,而是多人共用的小型中型大型计算机上的概念. 1.终端 一台主机,连很多终端,终端为主机提供了人机接口,每个人都通过终端使用主机的资源. 终端有字符哑终端和图形终端两种. 控制台是另一种人机接口, 不通过终端与主机相连, 而是通过显示卡-显示器和键盘接口分别与主机相连, 这是人控制主机的第一人机接口.

Linux下串口编程【转】

本文转载自:http://blog.csdn.net/w282529350/article/details/7378388 /************声明:本人只是见到这篇文章对我帮助很大才转载的,但是这个完整的程序里面本来有语法错误的,现在让我改过来了************/ --------------------------------------------------------- Author             :tiger-johnWebSite            :b

linux串口编程参数配置详解

1.linux串口编程需要的头文件 #include <stdio.h>         //标准输入输出定义 #include <stdlib.h>        //标准函数库定义 #include <unistd.h>       //Unix标准函数定义 #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h>          //文件控制定义 #incl

基于树莓派的Linux串口编程_实现自发自收

串口是计算机上一种非常通用设备通信的协议,常用PC机上包含的是RS232规格的串口,具有连接线少,通讯简单,得到广泛的使用. Linux对所有设备的访问是通过设备文件来进行的,串口也是这样,为了访问串口,只需打开其设备文件即可操作串口设备.在linux系统下面,每一个串口设备都有设备文件与其关联,设备文件位于系统的/dev目录下面.如linux下的/ttyS0,/ttyS1分别表示的是串口1和串口2. 树莓派UART端口的位置:见下图的GPIO14(TXD).GPIO 15(RXD) 本文是基于

Linux串口编程详解

串口本身,标准和硬件 ? 串口是计算机上的串行通讯的物理接口.计算机历史上,串口曾经被广泛用于连接计算机和终端设备和各种外部设备.虽然以太网接口和USB接口也是以一个串行流进行数据传送的,但是串口连接通常特指那些与RS-232标准兼容的硬件或者调制解调器的接口.虽然现在在很多个人计算机上,原来用以连接外部设备的串口已经广泛的被USB和Firewire替代:而原来用以连接网络的串口则被以太网替代,还有用以连接终端的串口设备则已经被MDA或者VGA取而代之.但是,一方面因为串口本身造价便宜技术成熟,

QT开发(五十)——QT串口编程基础

QT开发(五十)--QT串口编程基础 一.QtSerialPort简介 1.串口通信基础 目前使用最广泛的串口为DB9接口,适用于较近距离的通信.一般小于10米.DB9接口有9个针脚. 串口通信的主要参数如下: A.波特率:衡量通信速度的参数,表示每秒钟传送的bit的个数.例如9600波特表示每秒钟发送9600个bit. B.数据位:衡量通信中实际数据位的参数,当计算机发送一个信息包,实际包含的有效数据位个数. C.停止位:用于表示单个包的最后一位.典型的值为1和2位. D.奇偶校验位:串口通信

linux串口编程参数配置详解(转)

1.linux串口编程需要的头文件 #include <stdio.h>         //标准输入输出定义#include <stdlib.h>        //标准函数库定义#include <unistd.h>       //Unix标准函数定义#include <sys/types.h>#include <sys/stat.h>#include <fcntl.h>          //文件控制定义#include &l

使用C#数组与串口编程的应用实例

我们从两个方面向你介绍C#串口编程具体的步骤,那么我们第一要注意使用串口编程 的软件是什么?并且要注意到它的安装及环境的配置,只有这些做得到位了,我们才可以做好之后的事情,那么接下来就是我们的编程实际动手,那么如何做好每一 步呢?下面就和大家一起分享下具体内容具体可以观看.NET/C#课程[1]:初学者应掌握的C#基础教程了解: C#串口编程1.虚拟串口软件 由于手上没有串口硬件,所以在网上找了一个 VSPM 虚拟串口软件 ,据说是免费的. 刚开始也不知道怎么用,摸索了一下,终于成功. 安装以后