串口接受的十六进制数据如何赋值给int型的变量呢

问题描述

串口接受的十六进制数据如何赋值给int型的变量呢

我定义一个int变量 int h=0;接受的一个串口数据为WPARAM ch,我想把这个ch赋值给h,h=(int)ch;这样为什么不可以呢,也就是我想要把接受到的00变为int型的0,01变为1 应该怎么转换呢

解决方案

你用的什么编译器?我用vc2010编译可以通过。

解决方案二:

我也觉得可以,你输出下wparam,是不是没有获取到值

解决方案三:

试试sprintf()函数

解决方案四:

通过串口,你最好先将数字转成字符串,如 0 转成字符串“0”再发送。
接收方,收到到字符串“0”后,使用 atoi 再转成数字后,赋值给 h .

时间: 2024-09-08 11:50:34

串口接受的十六进制数据如何赋值给int型的变量呢的相关文章

sql server-菜鸟请教:bigint类型数据赋值给int型时出现溢出

问题描述 菜鸟请教:bigint类型数据赋值给int型时出现溢出 最近在做sqlserver存储过程,其中有这样一段查询,将bigint型数据oid赋值给@ID时出现溢出.已经看了好几天,怎么改都是溢出,都转换为字符串会有其他错误,,求解答.本人新手上路,希望多多指教. 如图所示,蓝图部分,曾试过convert和cast函数, 解决方案 是不是实际的值已经超过int的最大值了.我测试如果值没操作,不会有问题,比如 下面将@i就是int的最大值,再加一就会出错了 DECLARE @i BIGINT

关于串口接受数据并实时绘制波形的疑问

问题描述 关于串口接受数据并实时绘制波形的疑问 想用单片机采集心电数据,并通过串口将数据实时传输给上位机并显示心电波形,用VC++编写界面. 问题1:假设单片机设置采样率为250Hz,串口通信需要时间,1s内通过串口助手接受的数据小于250个,这是不是不能保证数据的实时性呢? 问题2:数据传输间隔比较短,来一个数据就画一次图,波形是不是变化很快?看了网上的例子,通过定时器定时取串口接收的数据并画图,画的数据不是该时刻串口接收数据,而且不是所有串口接收的数据都能画出来,这样是不是就会造成波形失真呢

内存-我把串口接受的数据放到数组里面进行处理,

问题描述 我把串口接受的数据放到数组里面进行处理, 现在遇到一个问题,这个串口可能会不停工作,工作一天以上,这样的话这个数组应该怎么动态申请内存呢 解决方案 new或者malloc,但是也可以不动态申请,固定一个缓冲区.就你的需求,没必要动态申请 解决方案二: 申请多少内容,不是根据工作多少时间,无是根据接收到多少数据量! 如果数据量不大,就可以一次完成内存申请:如果数据量不确定,就必须采用动态分配 ralloc & reralloc 的方法.

我用一个COM口,但是我的上位机要显示的是一个温度和一个湿度的,但是我串口发过来的数据是一串串的,我怎么能把发过来的字符串分开,同时赋值给这两个温度计?

问题描述 我用一个COM口,但是我的上位机要显示的是一个温度和一个湿度的,但是我串口发过来的数据是一串串的,我怎么能把发过来的字符串分开,同时赋值给这两个标签. 解决方案 解决方案二:你是如何读懂"一串串数据"的,就用程序读出来.你先要把数据格式的文档看明白,然后写解析程序.解决方案三:不懂啊我是个新人解决方案四:都会串口通讯了,还不会解析数据?解决方案五:引用2楼wang1209056635的回复: 不懂啊我是个新人 那就忘掉它.学习别的去.解决方案六:如果你的领导给你布置任务但是不

按钮-使用mscomm控件发送十六进制数据的写法

问题描述 使用mscomm控件发送十六进制数据的写法 我需要单击一个按钮时发送一个十六进制字符串例如"01 03 00" 解决方案 先将16进制转换成byte[]不知道什么语言,如果是C#可以写string[] hexstr = s.Split(' ');byte[] data = new byte[hexstr.Count()];for (int i = 0; i < hexstr.Count(); i++){ data[i] = Convert.ToByte(hexstr[i

数据显示-如何将串口接收到的数据返回给主线程并显示在编辑框中?

问题描述 如何将串口接收到的数据返回给主线程并显示在编辑框中? 小弟用的是serialPort,MFC,怎么才能把串口接收到的数据返回给主线程显示在编辑框中?求大侠帮助! void CRBAS_ODBCView::OnButtonSurveyStart() { /**************发数据*********************************/ SerialPort^ _serialPort = gcnew SerialPort("COM3", 38400, Par

单片机-蓝牙串口问题,手机数据不接收

问题描述 蓝牙串口问题,手机数据不接收 我用的是51单片机上的教程 输入 字符X 会显示 I GET X. 然后我用单片机和电脑相连 输入1 串口助手会显示i get 1 . 我再用蓝牙模块直接和电脑相连 手机连接蓝牙,手机输入1串口助手显示1.证明手机发数据蓝牙能接收. 我再将单片机和蓝牙模块相连,手机连上蓝牙,手机输入1,电脑串口助手没反应,求解这是什么问题呀! 谢谢大家!STC89C52 #include #define uchar unsigned char #define uint u

如何将mysql中读取的数据赋值到一个jsp的变量中

问题描述 如何将mysql中读取的数据赋值到一个jsp的变量中 我希望将更新的数据库中的数据赋值到一个jsp变量中然后传输到jsp内部的js程序中,请问怎么才能 把数据库中的值赋给一个jsp变量中. 解决方案 request.setCharacterEncoding("utf-8"); Class.forName("com.mysql.jdbc.Driver"); Connection conn= DriverManager.getConnection("

串口通信-C# 如何过滤串口接收到的数据

问题描述 C# 如何过滤串口接收到的数据 我在已经做了一个串口调试工具 接收GPS接收机上的各项数据 我想过滤调一些不必要的数据 请问怎么在输出前给过滤掉再输入到文本框中 例如:接收到的数据(如下) 我只想输出$GPGGA 然后过滤掉$GNGSA $GPGST $GPGSV $GPGGA,024830.00,2307.3027560,N,11221.9341760,E,7,23,0.6,28.4880,M,-6.652,M,99,AAAA*7C $GNGSA,M,3,23,31,19,03,13