极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13827|回复: 5

请教16进制指令串口输出问题

[复制链接]
发表于 2015-7-23 00:54:51 | 显示全部楼层 |阅读模式
各位前辈:
     请教一个关于16进制指令串口输出的问题,电脑串口模拟能实现,但Arduino程序怎么写也执行不了。求前辈指点!致谢!


问题:向指定串口发送文本和结束符指令命令。

例如:

文本:t1.txt="abc"
结束符:0XFF 0XFF 0XFF   //(中间有空格)

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复

使用道具 举报

发表于 2015-7-23 09:23:36 | 显示全部楼层
Arduino程序怎么写也执行不了 <- 程序沒錯的話, 又怎會執行不了.

程序怎樣, 如何執行不了也不說.........大家可以怎樣?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-7-23 13:18:44 | 显示全部楼层
Super169 发表于 2015-7-23 09:23
Arduino程序怎么写也执行不了

我就是想先发送文本在发送结束符,用Seril.print()发文本,用Seril.write()发16进制结束符,但是数组里空格怎么表示?
主要求发送这两行命令的代码。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-7-23 13:22:58 | 显示全部楼层
Super169 发表于 2015-7-23 09:23
Arduino程序怎么写也执行不了

如果这么写,空格怎么加入?用print()加也不好用。

unsigned char hexdata[3] = {0xff,0xff,0xff};
Serial.write(hexdata, 3);
回复 支持 反对

使用道具 举报

发表于 2015-7-23 14:09:41 | 显示全部楼层
你是想用串口助手發送到 arduino, 還是用 arduino 發給電腦用串口助手去接?
你的程式是想由 arduino 發給電腦吧.

空格是用文字輸出時, 方便分隔資料, 或給人看才有需要.
16 bit 數值的輸出 (例如你的 0xff), 不需要空格的.  
串口助手中的 "ff ff ff" 本來就是連續三個 ff 的意思, 當中的空格只是方便閱讀用, 並非要接收/輸出一個空格.
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-7-23 14:55:14 | 显示全部楼层
Super169 发表于 2015-7-23 14:09
你是想用串口助手發送到 arduino, 還是用 arduino 發給電腦用串口助手去接?
你的程式是想由 arduino 發給電 ...

谢谢 Super169,问题解决!有同样困惑的可以参考一下,我做电台传输数据用。

void setup() {
  // put your setup code here, to run once:
Serial.begin(9600);
}

void loop() {
  // put your main code here, to run repeatedly:
/*
*/
Serial.print("t1.txt=\"123456\"");
unsigned char hexdata[3]={0xff,0xff,0xff};
Serial.write(hexdata,3);

}
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|联系我们|极客工坊

GMT+8, 2026-6-16 22:16 , Processed in 0.045774 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表