不爱吃鱼 发表于 2012-9-7 16:18:19

经过几天的奋斗,nrf24l01多对一终于成功了(4对1)

将近一周时间,nrf24l01终于调好了,4对1。中间从一对一到二对一,二对一到三对一比较难做。三对一之后再扩展到6对1都一样了
我做的只是简单的。主接收控制一个led。收到不同的通道数据显示不同位置的led,主机查询接收。呵呵,谁有多对一调通的,互相交流一下吧

不爱吃鱼 发表于 2012-9-7 16:19:42

{:smile:}
刚接触nrf24l01,大多数资料网上都有,希望谁能提供一些独家资料,谢谢了

caiseyuzhou 发表于 2012-9-7 16:25:02

交流都没有资料啊

usingavr 发表于 2012-9-7 16:26:22

说说思路吧

不爱吃鱼 发表于 2012-9-7 16:29:14

不好意思,程序我还在继续优化,现在连自动应答都没敢用,怕通信失败。等优化的差不多了,一定奉献给大家

不爱吃鱼 发表于 2012-9-7 16:31:22

我是从收发一体做的,然后拆成一对一收发(一只收,一只发)。然后做了二对一,在做三对一,做过三对一之后,下边就一样了。因为有五个nrf24l01模块,就做到4对1.

不爱吃鱼 发表于 2012-9-7 16:32:16

现在程序只发一个字节,下边要继续调整,添加传感器

困境堂主 发表于 2012-9-7 17:59:23

楼主加油{:smile:}

wuyuehang 发表于 2012-9-7 18:05:15

我做的是自适应跳频,改天传上来。

不爱吃鱼 发表于 2012-9-7 19:32:02

wuyuehang 发表于 2012-9-7 18:05 static/image/common/back.gif
我做的是自适应跳频,改天传上来。

先把确定能用的接收一体程序给大家

不爱吃鱼 发表于 2012-9-7 19:33:36

先把确定能用的接收一体程序给大家,如果用这个程序调不出来,找硬件原因

不爱吃鱼 发表于 2012-9-7 19:35:44

wuyuehang 发表于 2012-9-7 18:05 static/image/common/back.gif
我做的是自适应跳频,改天传上来。

你好,可不可以说一下思路,谢谢了

wkman 发表于 2012-9-7 19:58:45

看看。手上只 有2个nrf2401

dzmcs 发表于 2012-9-7 20:02:30

wuyuehang 发表于 2012-9-7 18:05 static/image/common/back.gif
我做的是自适应跳频,改天传上来。

先谢过

nrf24l 跳频

wuyuehang 发表于 2012-9-7 20:34:17

不爱吃鱼 发表于 2012-9-7 19:32 static/image/common/back.gif
先把确定能用的接收一体程序给大家

改天单独开个帖子,写了很多歌版本,因为这几天导师手里有个项目着急完成。请大家不要着急。
nrf是7月末调的。

_yuming 发表于 2012-9-7 20:53:48

多对一很好做,建议你做到5通道,保留1通道。。

藤原拓海 发表于 2012-9-9 01:50:41

你好,能不能把你二对一的程序给我看看!!!!!!!!!!我这几天也在弄,一对一可以,但是二对一就是不行。我想问一下,两个都在发射,接收是先接收哪个通道的?

L_Hongzhen 发表于 2012-9-9 12:04:21

不爱吃鱼 发表于 2012-9-7 19:33 static/image/common/back.gif
先把确定能用的接收一体程序给大家,如果用这个程序调不出来,找硬件原因 ...

一直想找个能用的,感谢分享

不爱吃鱼 发表于 2012-9-9 14:23:23

藤原拓海 发表于 2012-9-9 01:50 static/image/common/back.gif
你好,能不能把你二对一的程序给我看看!!!!!!!!!!我这几天也在弄,一对一可以,但是二对一就是不 ...

可以检测状态寄存器,
if(RX_DR==0)
{
sta=SPI_Read(READ_REG+STATUS);//读状态寄存器
delayms(1);
RX_P_NO=sta&0x0e;
switch(RX_P_NO)//判断通道
{
        case 0x00:if(K1==0) xianshi();break;
        case 0x02:if(K2==0) P0=RxBuf;break;
        case 0x04:if(K3==0) P0=RxBuf;break;
        case 0x06:if(K4==0) P0=RxBuf;break;
        default:break;
}
本人比较笨,只想到了这个方法,查询,呵呵

不爱吃鱼 发表于 2012-9-9 14:30:28

昨天宿舍聚餐,喝多了,没什么进展。现在进度是:接收主机按下不同按键,程序接收不同通道数据。通道0发送加入了DHT11温湿度传感器,数码管显示。主机P2^7通过高低电平,选择数码管显示温度还是湿度。下边是多对一的程序。
现在兑现诺言,
发给大家,
互相交流

不爱吃鱼 发表于 2012-9-9 14:31:27

大家多提提思路,指导一下。

不爱吃鱼 发表于 2012-9-9 14:32:33

藤原拓海 发表于 2012-9-9 01:50 static/image/common/back.gif
你好,能不能把你二对一的程序给我看看!!!!!!!!!!我这几天也在弄,一对一可以,但是二对一就是不 ...

有什么好思路分享一下

cute_shen 发表于 2012-9-20 14:55:13

不爱吃鱼 发表于 2012-9-9 14:32 static/image/common/back.gif
有什么好思路分享一下

您好,节点1、2、3同时发的时候,你是怎么提取出来的?它应该会有碰撞啊?还有,你有没有听说主机发广播同步信号?这样子,不发送的时候可以休眠,降低功耗。

lanzhihai118 发表于 2012-9-27 09:22:06

谢谢分享~~~

YIBAOJIA 发表于 2012-10-3 22:40:45

谢谢分享!

孤独_求败 发表于 2012-10-3 23:43:59

以前搞24l01,三对一搞得不好。。

不爱吃鱼 发表于 2012-10-6 20:08:50

cute_shen 发表于 2012-9-20 14:55 static/image/common/back.gif
您好,节点1、2、3同时发的时候,你是怎么提取出来的?它应该会有碰撞啊?还有,你有没有听说主机发广播 ...

19楼,查看通道号

pf313313 发表于 2012-11-14 22:06:44

能不能留下个qq号,我正好也做这个遇到困难了,和你交流一下

辉Se天空 发表于 2012-11-15 13:36:29

这个得好好学习一下。。。。。。。。。。。。。。

wfbaaa 发表于 2012-11-15 14:09:25

看看,得学习一下

zzz1367 发表于 2012-11-15 14:25:57

谢谢。学习下。

辉Se天空 发表于 2012-11-15 15:19:04

再看看》。。。。。

dexidz 发表于 2013-4-8 07:13:52

我用的是stc11f16xe,加收发一体程序,通讯无反应!请问楼主stc可直接用吗?要改哪里吗?谢谢

Honey_comb 发表于 2013-4-8 07:47:17

{:lol:}mark,nrf2401

goooout 发表于 2013-4-9 11:29:58

兄弟,能不能短个qq号,有问题想请教一下,多谢了

pirdoll 发表于 2013-4-12 10:35:19

楼主你好,我也在做多对一的程序,为什么“从一对一到二对一,二对一到三对一比较难做。三对一之后再扩展到6对1都一样了”?一对一到多对一不是只需要修改接收节点的EN_AA寄存器和EN_RXADDR寄存器就可以了吗?

bbssilverkey 发表于 2013-5-15 12:18:02

dexidz 发表于 2013-4-8 07:13 static/image/common/back.gif
我用的是stc11f16xe,加收发一体程序,通讯无反应!请问楼主stc可直接用吗?要改哪里吗?谢谢
...

可以的,我是STC12C5A60S2,用了收发一体,调通了
环境:11.0952MHZ
无逻辑电平转换,直接上IO

dexidz 发表于 2013-5-15 13:19:41

bbssilverkey 发表于 2013-5-15 12:18 static/image/common/back.gif
可以的,我是STC12C5A60S2,用了收发一体,调通了
环境:11.0952MHZ
无逻辑电平转换,直接上IO


谢谢,我已经也调通了。
时序上的事

mypear 发表于 2013-5-16 01:27:06

深夜学习~~~~~~~~~~~

bbssilverkey 发表于 2013-5-16 13:53:10

不爱吃鱼 发表于 2012-9-7 19:33 static/image/common/back.gif
先把确定能用的接收一体程序给大家,如果用这个程序调不出来,找硬件原因 ...

大哥,我收发一体,那个调试的时候就是LED移位,我怎么知道他接收了没有?

xiaohu1993 发表于 2013-7-10 10:17:27

我也在做一对多

Wildfire 发表于 2013-7-10 11:01:27

顶。。。。。。。。。

achieveIEEE 发表于 2013-7-10 11:25:45

是多通道?还是点对点?

mjh630 发表于 2013-7-14 17:59:00

谢谢楼主!!过段时间也要做这个模块,我们做的是要一发6收的!

xz199264 发表于 2013-7-19 12:51:59

之前在做一对一,现在想做多对一了,多谢楼主分享

xiefy21 发表于 2013-8-14 20:09:28

mark……
顶一个…

11mashengligong 发表于 2013-8-14 22:16:24

谢谢楼主{:biggrin:} 刚好在调这个

五号电池 发表于 2013-8-14 22:22:07

支持一下!!!!!!!楼主加油!!!!!

Eric-8 发表于 2013-8-17 19:31:32

本帖最后由 Eric-8 于 2013-8-17 19:36 编辑

{:cry:}{:cry:}{:cry:}我一直编译失败!!!
uchar Rx_Packet(uchar *s_temp)                //读取的数据放入s_temp中
{       
        uchar revale=0;
        uchar s_bai,s_shi,s_ge,s_yi,s_er;
        sta=SPI_Read(READ_REG+STATUS);         // 读取状态寄存其来判断数据接收状况
        if(RX_DR)                                            // 判断是否接收到数据
        {
                CE=0;                //片选使能 待机
                SPI_Read_Buf(R_RX_PLOAD,s_temp,RX_PLOAD_WIDTH);
                revale=1;       
        //        delay(1000);
        }   
               SPI_RW_Reg(WRITE_REG+STATUS,sta); //接收到数据后RX_DR,TX_DS,MAX_PT都置高为1,通过写1来清除中断标志                                                //???????????
        CSN=0;
        SPI_RW(FLUSH_RX);
        CSN=1;
        }
        return revale;
}
sta那行一直是error C141: syntax error near ';'   
实在想不通啊! 还有清除中断那里,有的用0xff,有的用sta, 求解释...

求指点! {:2_28:}
万分感谢!!!

嗜血、世界 发表于 2013-8-18 10:17:58

最近也在搞,学习了……

Mr.luke2012 发表于 2013-8-29 22:54:07

不爱吃鱼 发表于 2012-9-9 14:32 static/image/common/back.gif
有什么好思路分享一下

mark,正好最近用得着,感谢楼主

shuishuo615 发表于 2013-12-27 21:12:15

不爱吃鱼 发表于 2012-9-9 14:23
可以检测状态寄存器,
if(RX_DR==0)
{



case那边
请问为什么是0,2,4,6,不是0,1,2,3? 设置的通道不是0,1,2,3 吗?

dammon 发表于 2014-1-3 21:43:02

楼主厉害 有人搞过不同单片机通信的吗

375601632 发表于 2014-3-18 15:52:57

支持一下

陶新成 发表于 2014-3-18 16:00:57

网址打不开啊

xiaodou 发表于 2014-3-18 19:58:06

火前线留个名再说

颜靖峰 发表于 2014-3-25 13:21:36

STC15L104W{:lol:}{:lol:}{:lol:}{:lol:}{:lol:}{:lol:}{:lol:}{:lol:}{:lol:}{:lol:}{:lol:}

sss 发表于 2014-3-25 20:59:34

谢谢楼主分享!不知楼主硬件电路是什么?

fangfei036 发表于 2014-3-31 21:54:07

淡定淡定,且行且学

mrliangg 发表于 2014-4-1 17:05:04

现在正想研究一下,请交流交流。

LK9286 发表于 2014-4-14 17:36:41

收藏了了

huangxiaowei 发表于 2014-4-15 14:39:15

帮忙顶一下

uestchina 发表于 2014-4-29 11:24:00

先下来试试我的硬件有没有问题,谢谢

jiang887786 发表于 2014-4-29 13:10:55

wozai我在磨练中,很惨!

309368 发表于 2014-5-3 10:26:11

dammon 发表于 2014-1-3 21:43
楼主厉害 有人搞过不同单片机通信的吗

不同单片机也没问题,已经调通51和stm32间的通信,简单调了一下字符串的发送接收

wangmengqiwo 发表于 2014-5-3 10:43:09

最近正在学。。。这是第二天还在看资料中。。你们是怎么做的步骤

wangmengqiwo 发表于 2014-5-3 10:59:56

亲,咱们建个群一起讨论吧,楼主建个群我们加吧,这么多小伙伴讨论方便点

dammon 发表于 2014-5-4 20:25:56

309368 发表于 2014-5-3 10:26
不同单片机也没问题,已经调通51和stm32间的通信,简单调了一下字符串的发送接收 ...

恩,不同单片机我也调试出来了,但是自己一直还有一个疑问,已经搁置很久没去解决了,现在想再提出来一下,,,就是 比如发送端按住按键发送数据,接收端接受到数据LED亮,那么我一直按住按键的时候LED确偶尔闪烁,不知道你是否知道怎么回事,能探讨一下吗?我的Q276278347

dammon 发表于 2014-5-4 20:28:54

wangmengqiwo 发表于 2014-5-3 10:59
亲,咱们建个群一起讨论吧,楼主建个群我们加吧,这么多小伙伴讨论方便点 ...

不如你建咯!!!!!!!!!!

a752109494 发表于 2014-5-9 14:41:43

我们现在项目要做个无线传感器节点,又没有学过zigbee,只好用nrf2401试试,1对4不好弄啊

KinglongLiu 发表于 2014-5-13 23:52:42

多谢楼主分享,我这几天也在做,3对1,传输3个节点的温湿度数据,感觉反应不是很灵敏~{:sad:}

光辉岁月 发表于 2014-5-26 16:21:34

学习学习

s12345 发表于 2014-5-26 22:49:21

试试,收发一体自己没调成功,不知什么原因

fun123 发表于 2014-5-28 12:49:01

正在研究中!!!

89712568 发表于 2014-8-13 11:33:53

正好有用,下载了,谢谢

白雪峰 发表于 2014-8-18 17:46:50

谢谢分享啊、。。。。学习中...

番茄酱 发表于 2014-8-27 17:21:19

赞~~~~mark

nicoe.088 发表于 2014-8-27 22:08:18

学习交流中……

muyitaozhi 发表于 2014-8-28 00:34:14

给楼主点赞!

GARY0711 发表于 2014-8-29 23:01:51

正需要看看

zynh_1020 发表于 2014-9-9 16:36:52

{:handshake:}{:handshake:}

hmzwm 发表于 2014-9-10 17:40:44

不爱吃鱼 发表于 2012-9-9 14:32
有什么好思路分享一下

好东西,收了。谢谢分享!

410023626 发表于 2014-9-14 13:25:06

来庆祝一下

yywd4 发表于 2014-9-24 23:26:16

资料全面,谢谢发帖。

kaka_1314 发表于 2014-9-24 23:49:42

mark!最近也在做这个项目!

chinazhaoyl 发表于 2014-9-24 23:52:34

谢谢分享!

kaka_1314 发表于 2014-10-29 15:23:07

太感谢你了,一对3的一直没弄好,终于解决了。

kaka_1314 发表于 2014-12-31 10:41:16

奇怪,我1对5咋不能反馈呢??{:mad:}

renxt1 发表于 2015-2-22 23:47:58

有没有汇编调通的程序?

睿翼1992 发表于 2015-3-28 16:55:48

{:smile:}{:smile:}{:smile:}{:smile:}{:smile:}

lxa0 发表于 2015-3-30 11:30:53

其实楼主在发射数据的前面
加一组地址识别码
就可以区分了

lintel 发表于 2015-3-30 11:44:26

{:smile:}{:smile:}{:smile:}{:smile:}{:smile:},关注,这个很有用,顶贴支持,看LZ大作。

FORDREAM0 发表于 2015-5-30 14:41:56

楼主 谢谢了 参考了你的4对一的程序 我完成了6对一   在配置通道2之后的通道接收地址,只能写进去一字节的地址,开始我还是像0,1一样去写5个字节地址,结果接收不到数据

kxm2008 发表于 2015-6-2 21:58:18

谢谢分享!

thyewfty 发表于 2015-8-14 18:58:48

谢啦!!☆⌒(*^-゜)v 谢谢分响,正好用的上

阿伟 发表于 2015-8-26 13:33:46

谢谢楼主,我好好研究研究您的程序。

lyc2010 发表于 2015-9-6 17:46:24

谢谢分享!

njayk 发表于 2015-9-10 22:45:07

感谢分享 分析了下你么做的原理

划时代 发表于 2015-10-16 16:17:34

谢谢分享,仔细研究一下

moypray 发表于 2015-10-18 15:17:41

谢谢楼主分享,
硬件怎么做的?直接用的收发模块还是自己搞的?
页: [1] 2
查看完整版本: 经过几天的奋斗,nrf24l01多对一终于成功了(4对1)