搜索
bottom↓
回复: 64

调试51+nrf905无线模块,可以保证稳定的收发,正在完善中。。

[复制链接]

出0入0汤圆

发表于 2008-5-17 23:16:06 | 显示全部楼层 |阅读模式
这个是做实验用的,具体要做的东西可不是这样的,自己手工搭建两个电路板,一个用于收一个用于发。。两块板的电路一模一样。
等待有时间把电路板的艳照再发上来  先把晚上调的代码发上来,等待继续。。无线模块是买来的,只是稍稍改了下程序,测试收发。。看来收发是没有什么问题的。。
先把原理图发上来:

(原文件名:原理图.jpg)

阿莫论坛20周年了!感谢大家的支持与爱护!!

曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……

出0入0汤圆

 楼主| 发表于 2008-5-17 23:18:30 | 显示全部楼层
:经过晚上的测试 ,收发是没有什么太大的问题的,下一步继续测试。。。
  下面是发送部分的代码:
#include<reg51.h>
#include <ABSACC.h>
#include <intrins.h>
#include <stdio.h>


#define  uchar unsigned char
#define uint unsigned int
sbit Led1=P2^0;
sbit Led2=P2^1;
sbit Key=P3^7;
uchar count=19;
uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,
                        0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};

//----------------------------------------------------------------------------------------------------------------
#define BYTE_BIT0        0x01
#define BYTE_BIT1        0x02
#define BYTE_BIT2        0x04
#define BYTE_BIT3        0x08
#define BYTE_BIT4        0x10
#define BYTE_BIT5        0x20
#define BYTE_BIT6        0x40
#define BYTE_BIT7        0x80
//----------------------------------------------------------------------------------------------------------------

//----------------------------------------------------------------------------------------------------------------
bdata unsigned  char DATA_BUF;
#define DATA7        ((DATA_BUF&BYTE_BIT7) != 0)
#define DATA0   ((DATA_BUF&BYTE_BIT0) != 0)
sbit        flag        =DATA_BUF^7;
sbit        flag1        =DATA_BUF^0;
//---------------------------------------------------发送数据缓冲区-------------------------------------------------
#define TxRxBuf_Len 4
unsigned char TxRxBuf[TxRxBuf_Len]=
{
0x29,0x30,0x31,0x32,
};

//---------------------------------------------------配置口定义---------------------------------------------------
sbit        TXEN=P1^0;
sbit        TRX_CE=P3^2;
sbit        PWR=P1^1;
sbit        MISO=P1^6;
sbit        MOSI=P1^5;
sbit        SCK=P1^7;
sbit        CSN=P1^3;
//---------------------------------------------------NRF905状态IO----------------------------------------------------
sbit        AM=P1^4;
sbit        DR=P3^3;
sbit        CD=P1^2;
//-------------------------------------------------------nrf905控制指令-------------------------------------------
#define WC                0x00
#define RC                0x10
#define WTP                0x20
#define RTP                0x21
#define WTA                0x22
#define RTA                0x23
#define RRP                0x24

void keyscan();
//------------------------------------------------NRF905寄存器配置------------------------------------------------
unsigned char idata RFConf[11]=
{
  0x00,                             //配置命令//
  0x4c,                             //CH_NO,配置频段在423MHZ
  0x0c,                             //输出功率为10db,不重发,节电为正常模式
  0x44,                             //地址宽度设置,为4字节
  0x04,0x04,                        //接收发送有效数据长度为32字节
  0xCC,0xCC,0xCC,0xCC,              //接收地址
  0x58,                              //CRC充许,8位CRC校验,外部时钟信号不使能,16M晶振
};
bit lcdbit;
code TxAddress[4]={0xcc,0xcc,0xcc,0xcc};
//------------------------------------------------延时------------------------------------------------------------
static void Delay(uchar n)
{
        uint i;
        while(n--)
        for(i=0;i<80;i++)
        keyscan();
}
//-------------------------------------------------SPI写函数----------------------------------------------------------
void SpiWrite(unsigned char send)
{
        unsigned char i;
        DATA_BUF=send;
        for (i=0;i<8;i++)
        {
                if (DATA7)        //总是发送最高位
                {
                        MOSI=1;
                }
                else
                {
                        MOSI=0;
                }
                SCK=1;
                DATA_BUF=DATA_BUF<<1;
                SCK=0;
        }
}
//------------------------------------------------------初始化nRF905---------------------------------------------
void nRF905Init(void)
{
    CSN=1;                                                // Spi         disable
        SCK=0;                                                // Spi clock line init low
        DR=0;                                                // Init DR for input
        AM=0;                                                // Init AM for input
        CD=0;                                                // Init CD for input
        PWR=1;                                        // nRF905 power on
        TRX_CE=0;                                        // Set nRF905 in standby mode
        TXEN=0;                                        // set radio in Rx mode
}
//-----------------------------------------------------初始化寄存器-----------------------------------------------
void Config905(void)
{
        uchar i;
        CSN=0;                                                // Spi enable for write a spi command
        //SpiWrite(WC);                                // Write config command写放配置命令
        for (i=0;i<11;i++)        // Write configration words  写放配置字
        {
           SpiWrite(RFConf);
        }
        CSN=1;                                        // Disable Spi
}
//-----------------------------------------------------发送数据打包---------------------------------------------------
void TxPacket(uchar *TxRxBuf)
{
        uchar i;
        //Config905();
        CSN=0;
        SpiWrite(WTP);                                // Write payload command
        for (i=0;i<4;i++)
        {
                SpiWrite(TxRxBuf);                // Write 32 bytes Tx data
        }// Spi enable for write a spi command
        CSN=1;
        Delay(1);                                                // Spi disable
        CSN=0;                                                // Spi enable for write a spi command
        SpiWrite(WTA);                                // Write address command
        for (i=0;i<4;i++)                        // Write 4 bytes address
        {
                SpiWrite(TxAddress);
        }
        CSN=1;                                                // Spi disable
        TRX_CE=1;                                        // Set TRX_CE high,start Tx data transmission
        Delay(1);                                        // while (DR!=1);
        TRX_CE=0;                                        // Set TRX_CE low
}
//----------------------------------------------------------设置发送状态---------------------------------------------
void SetTxMode(void)
{
        TRX_CE=0;
        TXEN=1;
        Delay(1);                                         // delay for mode change(>=650us)
}
//-----------------------------------------------------------------------------------------------------------------

void delay50ms()
{
        uchar i,j;
        for(i=5;i>0;i--)
          for(j=200;j>0;j--)
          keyscan();
}
//------------用于按键销抖--------------------------------------------------------------------------------------
void delay10ms()
{
        uchar i,j;
        for(i=50;i>0;i--)
         for(j=50;j>0;j--)
         keyscan();
}
//--------------------------------显示子函数--------------------------------------------------------------------------
void display()
{
        uchar highcount,lowcount;
        highcount=count%10;
        lowcount=count/10;
        P0=table[highcount];
        Led1=1;
        Led2=0;
        delay50ms();

        P0=table[lowcount];
        Led1=0;
        Led2=1;
        delay50ms();
}
//------------------------按键扫描---------------------------------------------------
void keyscan()
{
        if(Key==0)
        {
                delay10ms();
                if(Key==0)
                {
                        count++;
                        if(count==100)
                        {count=0;}
                        while(Key==0);
                }
        }
}
//----------------主函数-------------------------------------------------
//--------------------------------------------------------------------------------------------------
void main()
{
        uchar i,j;
    nRF905Init();//初始化nRF905
    Config905();//初始化nRF905寄存器
        while(1)
        {
                keyscan();
                for(j=20;j>0;j--)
                {
                        display();
                }
                TxRxBuf[0]=count;
                TxRxBuf[1]=count;
                TxRxBuf[2]=count;
                TxRxBuf[3]=count;   
                for(i=0;i<2;i++)
                {
                        SetTxMode();// Set nRF905 in Tx mod
                        TxPacket(TxRxBuf);// Send data by nRF905
                }
        }
}

出0入0汤圆

 楼主| 发表于 2008-5-17 23:20:44 | 显示全部楼层
下面把接收部分的代码发上来:
#include <reg52.h>
#include <ABSACC.h>
#include <intrins.h>
#include <stdio.h>
#define  uchar unsigned char
#define uint unsigned int
sbit Led1=P2^0;
sbit Led2=P2^1;
sbit Key=P3^7;
uchar count;
uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,
                        0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71}; //0~~F段码

//--------------------------------------------------------------------------------------------------------------
#define BYTE_BIT0        0x01
#define BYTE_BIT1        0x02
#define BYTE_BIT2        0x04
#define BYTE_BIT3        0x08
#define BYTE_BIT4        0x10
#define BYTE_BIT5        0x20
#define BYTE_BIT6        0x40
#define BYTE_BIT7        0x80

bdata unsigned  char DATA_BUF;
#define DATA7        ((DATA_BUF&BYTE_BIT7) != 0)
#define DATA0   ((DATA_BUF&BYTE_BIT0) != 0)
sbit        flag        =DATA_BUF^7;
sbit        flag1        =DATA_BUF^0;
//--------------------------------------------------------------------------------------------------------------
#define TxRxBuf_Len 4
unsigned char TxRxBuffer[TxRxBuf_Len];
//-----------------------------------------------------NRF905端口配置-------------------------------------------
sbit        TXEN=P1^0;
sbit        TRX_CE=P3^2;
sbit        PWR=P1^1;
sbit        MISO=P1^6;
sbit        MOSI=P1^5;
sbit        SCK=P1^7;
sbit        CSN=P1^3;
sbit        AM=P1^4;
sbit        DR=P3^3;
sbit        CD=P1^2;
//----------------------------------------------------数码管位选IO---------------------------------------------
sbit        led1=P2^1;
sbit        led0=P2^0;
sbit        led2=P2^2;
sbit        led3=P2^3;
//--------------------------------------------------------------------------------------------------------------
//uchar seg[10]={0xC0,0xCF,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};         //0~~9段码
//---------------------------------------------------------------------------------------------------------------
#define WC                0x00
#define RC                0x10
#define WTP                0x20
#define RTP                0x21
#define WTA                0x22
#define RTA                0x23
#define RRP                0x24
//--------------------------------------------NRF905寄存器配置--------------------------------------------------
unsigned char idata RFConf[11]=
{
          0x00,                             //配置命令//
        0x4c,
        0x0c,
        0x44,0x04,0x04,
        0xcc,0xcc,0xcc,0xcc,
        0x58,                            //CRC充许,8位CRC校验,外部时钟信号不使能,16M晶振
};
//----------------------------------------------延时---------------------------------------------------------------
void Delay(uchar n)
{
        uint k;
        while(n--)
        for(k=0;k<8;k++);
}
//-----------------------------------------------------------------------------------------------------------------
void delay1(uint i)
{
        for(;i>0;i--);   
}
//---------------------------------------------------SPI读函数-----------------------------------------------------
unsigned char SpiRead(void)
{
        unsigned char j;
        for (j=0;j<8;j++)
        {
        DATA_BUF=DATA_BUF<<1;
                SCK=1;
                if (MISO)        //读取最高位,保存至最末尾,通过左移位完成整个字节
                {
                        DATA_BUF|=BYTE_BIT0;
                }
                else
                {
                        DATA_BUF&=~BYTE_BIT0;
                }
                SCK=0;
         }
         return DATA_BUF;
}
//---------------------------------------------------SPI写函数----------------------------------------------------
void SpiWrite(unsigned char send)
{
        unsigned char i;
        DATA_BUF=send;
        for (i=0;i<8;i++)
        {
                if (DATA7)        //总是发送最高位
                {
                        MOSI=1;
                }
                else
                {
                        MOSI=0;
                }
                SCK=1;
                DATA_BUF=DATA_BUF<<1;
                SCK=0;
        }
}
//-----------------------------------------------初始化nRF905-----------------------------------------------------
void nRF905Init(void)
{
   CSN=1;                                                // Spi         disable
        SCK=0;                                                // Spi clock line init low
        DR=0;                                                // Init DR for input
        AM=0;                                                // Init AM for input
        CD=0;                                                // Init CD for input
        PWR=1;                                        // nRF905 power on
        TRX_CE=0;                                        // Set nRF905 in standby mode
        TXEN=0;                                        // set radio in Rx mode
}
//-----------------------------------------------NRF905初始化寄存器-----------------------------------------------------
void Config905(void)
{
        uchar i;
        CSN=0;                                                // Spi enable for write a spi command
        //SpiWrite(WC);                                // Write config command写放配置命令
        for (i=0;i<11;i++)        // Write configration words  写放配置字
        {
           SpiWrite(RFConf);
        }
        CSN=1;                                        // Disable Spi
}
//-----------------------------------------------设置发送状态---------------------------------------------------
void SetRxMode(void)
{
        TXEN=0;
        TRX_CE=1;
        Delay(1);                                         // delay for mode change(>=650us)
}
//-------------------------------------------------判断数据接收状态-----------------------------------------------------
unsigned char CheckDR(void)                //检查是否有新数据传入 Data Ready
{
        if (DR=1&&TRX_CE==1 && TXEN==0)
        {
       // Delay(50)  ;
                return 1;
        }
        else
        {
                return 0;
        }
}
//----------------------------------------------------读NRF905接收数据------------------------------------------------------------
void RxPacket(void)                                               
{
        uchar i;
    Delay(1);
//        TRX_CE=0;                                        // Set nRF905 in standby mode
    Delay(100);
    TRX_CE=0;
        CSN=0;                                                // Spi enable for write a spi command
    Delay(1);
        SpiWrite(RRP);
        for (i = 0 ;i < 4 ;i++)
        {
                TxRxBuffer=SpiRead();                // Read data and save to buffer      
        }
        CSN=1;
          Delay(10);
        TRX_CE=1;                                                       
}
//--------------------------------------------------------数据接收------------------------------------------------
void  RX(void)
{
          SetRxMode();                        // Set nRF905 in Rx mode
          while (CheckDR()==0);
                  Delay(10);
                    RxPacket();
                  Delay(10);
}

//-----------------------------------------------------------------------------------------------------------------

void delay50ms()
{
        uchar i,j;
        for(i=5;i>0;i--)
          for(j=200;j>0;j--);
}

//--------------------------------显示子函数--------------------------------------------------------------------------
void display()
{
        uchar highcount,lowcount;
        highcount=count/10;
        lowcount=count%10;
        P0=table[highcount];
        Led1=1;
        Led2=0;
        delay50ms();

        P0=table[lowcount];
        Led1=0;
        Led2=1;
        delay50ms();
}

//-----------------------------------------------------------------------------------------------------------------
void main(void)
{
                uchar k;
                count=0;
        nRF905Init();
             Config905();
                while(1)
                {
                        for(k=30;k>0;k--)
                        {
                                display();
                        }
                        RX();
                        Delay(10);
                        CSN=0;         
                        if(TxRxBuffer[0])
                        {       
                                count=TxRxBuffer[0];
                                display();
                        }
                }
}

最近一直很忙没有时间测试,今晚抽时间终于测试通过,努力中。。。

出0入0汤圆

 楼主| 发表于 2008-5-19 12:14:33 | 显示全部楼层
自己做沙发!

出0入0汤圆

发表于 2008-5-19 13:51:45 | 显示全部楼层
楼主好功底   赞一个

出0入0汤圆

 楼主| 发表于 2008-5-19 17:32:29 | 显示全部楼层
刚发现原理图的复位电路画的有问题,但是实际接上了  
复位按键的左边应该接的vcc

出0入46汤圆

发表于 2008-5-19 17:34:39 | 显示全部楼层
关注!

出0入0汤圆

发表于 2008-5-21 20:45:10 | 显示全部楼层
我晕

昨天看了下

以为是9E5了

不过可以把9E5配置成905用

就是浪费点了

出0入0汤圆

 楼主| 发表于 2008-5-22 08:06:36 | 显示全部楼层
呵呵  欢迎楼上一起讨论哦,最近又没有时间做这个了,先放一放吧 !!

出0入0汤圆

发表于 2008-6-15 11:11:52 | 显示全部楼层
不错,是好东西,值得学习一下,不知道NRF贵不贵

出0入0汤圆

发表于 2008-7-31 14:43:50 | 显示全部楼层
赞......

出0入0汤圆

发表于 2008-8-4 14:57:11 | 显示全部楼层
for (i=0;i<4;i++)
   {
      SpiWrite(TxRxBuf);                // Write 32 bytes Tx data
   }

注释说是发送32字节数据,可是我看了好象是发了4字节数据啊??

出0入0汤圆

发表于 2008-8-4 15:00:50 | 显示全部楼层
//-------------------------------------------------判断数据接收状态-----------------------------------------------------
unsigned char CheckDR(void)                //检查是否有新数据传入 Data Ready
{
  if (DR=1&&TRX_CE==1 && TXEN==0)
  {
  // Delay(50)  ;
    return 1;
  }
  else
  {
    return 0;
  }
}

这里是不是应该是: "if (DR == 1 && TRX_CE == 1 && TX_EN == 0)" ?

出0入0汤圆

发表于 2008-8-5 10:58:55 | 显示全部楼层
好!!学习了!!!

出0入0汤圆

发表于 2008-8-6 11:35:36 | 显示全部楼层
好东东,谢谢分享!期待中

出0入0汤圆

发表于 2008-9-10 18:51:26 | 显示全部楼层
搂主矿大的吧,还在学校吗,nrf905的模块能不能借我,我科研训练的项目涉及无线数据传输,出pcb之前想先拿别人做好的模块学习一下使用nrf,网上买实在是太贵了。

出0入0汤圆

发表于 2008-9-20 02:33:41 | 显示全部楼层
//-------------------------------------------------判断数据接收状态-----------------------------------------------------&nbsp;

unsigned&nbsp;char&nbsp;CheckDR(void)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//检查是否有新数据传入&nbsp;Data&nbsp;Ready&nbsp;

{&nbsp;

&nbsp;&nbsp;if&nbsp;(DR=1&&TRX_CE==1&nbsp;&&&nbsp;TXEN==0)&nbsp;

&nbsp;&nbsp;{&nbsp;

&nbsp;&nbsp;//&nbsp;Delay(50)&nbsp;&nbsp;;&nbsp;

&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;1;&nbsp;

&nbsp;&nbsp;}&nbsp;

&nbsp;&nbsp;else&nbsp;

&nbsp;&nbsp;{&nbsp;

&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;0;&nbsp;

&nbsp;&nbsp;}&nbsp;

}



这里是不是应该是:&nbsp;"if&nbsp;(DR&nbsp;==&nbsp;1&nbsp;&&&nbsp;TRX_CE&nbsp;==&nbsp;1&nbsp;&&&nbsp;TX_EN&nbsp;==&nbsp;0)"&nbsp;?&nbsp;&nbsp;&nbsp;

//-------------------------------------------------------------------------------------------//



哈哈,你很细心。他的程序是错了,错误如下:



1、if(DR=1&nbsp;...)&nbsp;&nbsp;你已经发现,但不是主要错误;

2、主要错误在于,DR端口永远是1,不信你debug一下。why&nbsp;??&nbsp;动动脑筋。。。

3、出现上述错误的主要原因是程序互相抄袭,不求甚解,以为收到数据就万事大吉。虽然单一收发可以,但是进行双向通讯时,那可问题多多。

出0入0汤圆

发表于 2008-10-28 10:07:29 | 显示全部楼层
楼主好功底&nbsp;&nbsp;&nbsp;赞一个

出0入0汤圆

发表于 2008-11-22 17:13:56 | 显示全部楼层
HAO&nbsp;好

出0入0汤圆

发表于 2008-12-1 12:00:04 | 显示全部楼层
赞一个

出0入0汤圆

发表于 2009-4-8 11:40:53 | 显示全部楼层
楼主  能指导一下nRF905怎么测试模块是否好用   还有什么状态处在工作状态  谢谢
头像被屏蔽

出0入0汤圆

发表于 2009-4-8 11:55:16 | 显示全部楼层
以下蓝色文字由坛主:armok 于:2009-04-08,11:55:16 加入。
<font color=black>请发贴人注意:
本贴放在这分区不合适,即将移走
原来分区:[9999]51单片机
即将移去的分区:[3045]通信技术
移动执行时间:自本贴发表0小时后

任何的疑问或咨询,请可随时联系站长。谢谢你的支持!
</font>

出0入0汤圆

发表于 2009-4-8 12:55:01 | 显示全部楼层
顶一下

出0入0汤圆

发表于 2009-4-9 14:31:15 | 显示全部楼层
楼主能留个联系方式吗  最近调试这个模块出了点问题   不知道用什么方法解决  希望楼主指教一下

出0入0汤圆

发表于 2009-4-9 14:45:12 | 显示全部楼层
记号

出0入0汤圆

发表于 2009-5-3 12:55:17 | 显示全部楼层
呵呵~楼主要是把低功耗做出来,至少待机电流80uA以下,并且带多级路由的一个协议栈那才算小有成就~

出0入0汤圆

发表于 2010-7-2 08:06:28 | 显示全部楼层
记号!!!

出0入0汤圆

发表于 2010-8-12 13:32:57 | 显示全部楼层
这个模块看似简单,但调试时总会有问题。。

出0入0汤圆

发表于 2010-11-1 19:53:53 | 显示全部楼层
mark一下

出0入0汤圆

发表于 2010-11-14 22:15:34 | 显示全部楼层

出0入0汤圆

发表于 2010-11-14 23:50:05 | 显示全部楼层
都是大神啊

出0入0汤圆

发表于 2010-12-2 17:16:07 | 显示全部楼层
MARK

出0入0汤圆

发表于 2010-12-3 02:04:33 | 显示全部楼层
我也在研究相关技术,来一起研究吧 加Q群 5389363  注明来自ouravr

出0入0汤圆

发表于 2011-4-6 09:16:58 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-4-6 12:18:31 | 显示全部楼层
实力派

出0入0汤圆

发表于 2011-4-6 12:49:52 | 显示全部楼层
哎哟~~~不错哦~~mark~~~

出0入0汤圆

发表于 2011-5-13 20:05:37 | 显示全部楼层
顶起

出0入0汤圆

发表于 2011-5-14 07:57:28 | 显示全部楼层

出0入0汤圆

发表于 2011-6-25 17:21:10 | 显示全部楼层
而433M只是ISM的规定的第一个区域可用啊  
中国是属于第三个区域,按理是不可用的!!!?

出0入0汤圆

发表于 2011-6-27 17:27:36 | 显示全部楼层
market 收藏了

出0入0汤圆

发表于 2011-7-28 14:03:12 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-8-19 02:26:35 | 显示全部楼层
你真的成功了吗  感觉不对

出0入0汤圆

发表于 2011-8-21 11:25:35 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-9-26 11:32:52 | 显示全部楼层
这个程序有点问题就是,当执行RX();函数
单片机会一直在那里等待数据进来,"if (DR == 1 && TRX_CE == 1 && TX_EN == 0)"
如果一直没有数据发送过来。函数就永远退不出来,单片机难道不用做其它的事了。?
所以这个函数是不行的。虽然可以用,但是做为好的程序来说,是不行。

出0入0汤圆

发表于 2011-9-26 11:35:52 | 显示全部楼层
if(CheckDR()==1)                //收到新数据
                  {
                          ;//解码函数
                  }

出0入0汤圆

发表于 2011-9-26 12:47:21 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-10-23 18:26:50 | 显示全部楼层
MARK!顶!

出0入0汤圆

发表于 2011-10-23 19:35:22 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-10-23 21:19:06 | 显示全部楼层
MARK

出0入0汤圆

发表于 2011-10-28 19:05:23 | 显示全部楼层
mark!

出0入0汤圆

发表于 2011-10-30 09:26:33 | 显示全部楼层
楼主的硬件电路貌似有问题吧?单片机5V供电,905是3.3V供电,兄弟俩就直接连接到一起拉?电平貌似不匹配。容易出问题地!

出0入0汤圆

发表于 2012-8-16 20:47:39 | 显示全部楼层
楼主,你好,最近在搞nrf905,请问这模块能不能发送汉字,然后在1602显示出来?请问在程序的哪里改?小弟是菜鸟,问得不好不要见怪!如不能发汉字,那发字母呢?在程序的哪里改?谢谢

出0入0汤圆

发表于 2012-11-9 21:04:11 | 显示全部楼层
先标记下

出0入0汤圆

发表于 2012-11-9 21:50:01 | 显示全部楼层
顶!                                 

出0入0汤圆

发表于 2012-11-11 14:01:19 | 显示全部楼层
domain110 发表于 2008-9-20 02:33
**** 作者被禁止或删除 内容自动屏蔽 ****

你好,最经在测试nrf905模块,感觉您挺厉害的,想请教一下,QQ:374494848
问题具体如下:模块一发一收是好的,但是连续第二发,就收不到了,Reset发后,一发一收又OK了,想要连续发送接收,该怎么办 ?

出0入0汤圆

发表于 2012-11-11 16:58:11 | 显示全部楼层
mark~~~~~~~~~~~~~~

出0入0汤圆

发表于 2012-12-31 01:10:51 | 显示全部楼层
看看  有  现在在做相关的

出0入0汤圆

发表于 2013-4-22 21:42:16 | 显示全部楼层
谢谢楼主分享

出0入0汤圆

发表于 2013-4-23 13:43:58 | 显示全部楼层
顶一个,学习

出0入0汤圆

发表于 2013-5-1 10:50:48 | 显示全部楼层
不是说无线和单片机连接要加限流电阻吗?

出0入0汤圆

发表于 2013-5-4 20:55:43 | 显示全部楼层
wyb4993 发表于 2008-8-4 14:57
for (i=0;i

我最近也在写这个,这里应该是有错误的吧
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-8-26 03:16

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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