一、字符串转16进制
这个找了好多资料,试了好多次,终于可以了,小小记录一下~
String hexString = "AB"; // 输入的十六进制字符串
unsigned int hexValue = strtol(hexString.c_str(), NULL, 16); // 将十六进制字符串转换为无符号整型数值
Serial.println(hexValue);
输出结果
![]()
10*16+11=171
二、串口输入多个字符串,转16进制
通过下面这个代码,可以实现串口输入数据到16进制电机控制指令的转化。
while (Serial.available() > 0)//判断串口是否有输入
{
received = Serial.read();//单个字符读取
if (received!=',') //每个指令以','作为结束
{
inData+= received;//组成指令字符串
}else{
/*******关于substring截取字符串说明***********/
//第一个参数为字符串截取的起始下标,第二个参数为结束位置的索引下标,注意结束位置不截取
/*******************************************/
addr=inData.substring(0,2).toInt();//获取电机编号,2位,电机1编号为01
Serial.println(addr);//输出电机编号
int order=strtol((inData.substring(2,

最低0.47元/天 解锁文章
1637

被折叠的 条评论
为什么被折叠?



