Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Nrf905+mega48v transceiver test

Status
Not open for further replies.

shouqiang_zh

Newbie level 3
Joined
Jun 18, 2009
Messages
3
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Location
China
Activity points
1,308
nrf905

Based on the attached design schematic, I made several samples, after test, it is found they all can well receive data, but can NOT send data out, I check its DR pin status before and after transmission, it became from low to high level, but standard receiver's CD AM DR always are low level, no any response, it puzzled me several days, any one would give me some clue what maybe cause this kind of problem: nrf905 only receive data , and can not send data out ?

thank you very much

Simon
 

nrf905 433 mhz problem

Sorry, Frequency is 433Mhz.also attach my program for your reference.
by the way, may it judge that components and nrf905 hardware work properly if RF receive function work well? I want to confirm where problem is? hardware or software.
 

please view the program, I first run SetTxMode() function, then run TxPacket() to execute Nrf905 transmission.

void TxPacket(unsigned char TxBUF[4])
{
Low_nrf905_CSN; // 使能Spi,允许对nrf905进行读写操作
Delay(1);
SpiReadSpiWrite(WTP); // 写数据前先写写数据命令
for (m=0;m<4;m++)
{
SpiReadSpiWrite(TxBUF[m]); // 待发送的4字节数据
}
High_nrf905_CSN;
Delay(5); // 关闭Spi,不允许对nrf905进行读写操作
Low_nrf905_CSN; // 使能Spi
SpiReadSpiWrite(WTA); // 写地址前首先先写地址命令
for(i=0;i<4;i++) // 写 4 bytes 地址
{
SpiReadSpiWrite(TxAddress);
}
High_nrf905_CSN; // 关闭Spi
High_nrf905_TRX_CE; // Set TRX_CE high,start Tx data transmission
Delay(10); // 等待DR变高
Low_nrf905_TRX_CE; // 设置TRX_CE=0
}
//-------------------------------set transmission-----------------------------------
void SetTxMode(void)
{
Low_nrf905_TRX_CE; //
High_nrf905_TX_EN; //发送使能
Delay(10); // delay for mode change(>=650us)根据晶振不同要改变
}
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top