极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 25364|回复: 11

ZigBee 与 Arduino 传输数据,格式不对

[复制链接]
发表于 2015-6-5 10:12:58 | 显示全部楼层 |阅读模式
本帖最后由 shangg15 于 2015-6-5 10:26 编辑

想要从ZigBee的RX/TX端将数据给Arduino,可是运行以下程序是出现问题,跪求指导。
设置13号的led等也没有是一直亮着,为什么??我应该怎么弄开能正常像串口调试器那样显示数据?

  1. int incomingByte = 0;
  2. int ledpin=13;
  3. void setup() {  
  4.   Serial1.begin(38400);
  5. }

  6. void loop() {
  7. if(Serial1.available()>0)//如果串口有数据进入的话
  8.   {
  9.     incomingByte = Serial1.read();
  10.     digitalWrite(ledpin,HIGH);//点亮数字13 口LED
  11.     delay(500);
  12.     digitalWrite(ledpin,LOW);//灭数字13 口LED
  13.     delay(500);
  14.     Serial1.print("I received: ");
  15.     Serial1.println(incomingByte); //加了HEX也不行。
  16.   }
  17.   else{
  18.     digitalWrite(ledpin,LOW);//数字13 口LED
  19.     delay(500);
  20.     Serial1.print("I received: ");
  21.     Serial1.println("NOTHING ");
  22.   }
  23. }
复制代码

本帖子中包含更多资源

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

x
回复

使用道具 举报

发表于 2015-6-5 14:41:27 | 显示全部楼层
波特率挑一下小一点的,可能这个波特率不太适合
回复 支持 反对

使用道具 举报

发表于 2015-6-5 20:23:37 | 显示全部楼层
每个波特率都试试。。。。搞9600试试
回复 支持 反对

使用道具 举报

发表于 2015-6-6 10:43:52 | 显示全部楼层
你查查你zigbee的波特率,我之前用的都是115200
回复 支持 反对

使用道具 举报

发表于 2015-6-7 08:33:10 | 显示全部楼层
调整波特率
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-6-7 17:35:36 | 显示全部楼层
eysajan 发表于 2015-6-5 14:41
波特率挑一下小一点的,可能这个波特率不太适合

好多波特率都试了,就是都是乱码~~
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-6-7 17:37:26 | 显示全部楼层
本帖最后由 shangg15 于 2015-6-7 17:40 编辑
huozhen 发表于 2015-6-6 10:43
你查查你zigbee的波特率,我之前用的都是115200


额,说是38400的,而且串口调试助手正常显示的时候就是用38400。。

还有,程序中有: Serial1.print("I received: ");
但是串口里面没有显示,是为什么??
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-6-7 17:38:47 | 显示全部楼层
zhaoshuancheng 发表于 2015-6-5 20:23
每个波特率都试试。。。。搞9600试试

程序中有: Serial1.print("I received: ");
但是串口里面没有显示,是为什么??
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-6-7 17:39:30 | 显示全部楼层
suoma 发表于 2015-6-7 08:33
调整波特率

程序中有: Serial1.print("I received: ");
但是串口里面没有显示,是为什么??
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-6-7 17:40:23 | 显示全部楼层
eysajan 发表于 2015-6-5 14:41
波特率挑一下小一点的,可能这个波特率不太适合

还有,程序中有: Serial1.print("I received: ");
但是串口里面没有显示,是为什么??
回复 支持 反对

使用道具 举报

发表于 2015-6-8 11:55:16 | 显示全部楼层
本帖最后由 eysajan 于 2015-6-8 12:22 编辑
shangg15 发表于 2015-6-7 17:40
还有,程序中有: Serial1.print("I received: ");
但是串口里面没有显示,是为什么??


你用的是mega2560啊?如果只用一个串口的话没必要用Serial1,第一个serial是serial0,直接用Serial。
回复 支持 反对

使用道具 举报

发表于 2015-6-8 13:26:11 | 显示全部楼层
shangg15 发表于 2015-6-7 17:40
还有,程序中有: Serial1.print("I received: ");
但是串口里面没有显示,是为什么??

为什么是 Serial1.print("I received: ");?不是 Serial.print("I received: ");
回复 支持 反对

使用道具 举报

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

本版积分规则

Archiver|联系我们|极客工坊

GMT+8, 2026-6-7 19:31 , Processed in 0.051387 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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