реклама на сайте
подробности

 
 
> RFM01-RFM02 от Hope Microelectronics Есть несколько вопросов..., Кто нибудь включал?
Григорий2000
сообщение Feb 21 2009, 22:27
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 77
Регистрация: 13-03-06
Пользователь №: 15 210



Включил передатчик, заставил передавать периодически пакет. Пакет передается(TV -Tuner принимает что-то). С приемника снимаю сигнал RSSI в нужном виде(огибающая длительности пакета) - то есть уже близко))).
Но не могу заставить принять именно данные - не формирует сигнал прерывания по заполнению буфера. Возможно неправильно настроил параметры передатчика/приемника. Делал как в примере за исключением команд передатчика 0xD040 (так как ненашел на нее описания ) вместо нее 0xD240, и скорость взял еще ниже(0xC88F). и соответственно только скорость в приемнике.
итак RX
SendWordRF(0x0000);
SendWordRF(0x898A);//433BAND,134kHz
SendWordRF(0xA640);//434MHz
SendWordRF(0xC8С7);//2.4kbps
SendWordRF(0xC69B);//AFC setting
SendWordRF(0xC42A);//Clock recovery manual control,Digital filter,DQD=4
SendWordRF(0xC260);//output 2MHz
SendWordRF(0xC080);
SendWordRF(0xCE84);//use FIFO
SendWordRF(0xCE87);
SendWordRF(0xC081);//OPEN RX


TX
SendWordRF(0xCC00);//Status Register read command - clear last service interrupt...
SendWordRF(0x8B61);//433BAND,+-60kHz, 2MHzOut
SendWordRF(0xA640);//434MHz
SendWordRF(0xD240);//(DRate/2)-было0xD040 - max DataRate 19.2
SendWordRF(0xC88F);//2.4kbps
SendWordRF(0xC220);//enable bit sync //
SendWordRF(0xC001);//CLOSE ALL
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Григорий2000
сообщение Mar 5 2009, 22:03
Сообщение #2


Частый гость
**

Группа: Участник
Сообщений: 77
Регистрация: 13-03-06
Пользователь №: 15 210



У меня по невнимательности осталось две подпрограммы в основной функции. Одна с поллингом, вторая по инту... приемник 2 байта ловил и его та что с поллингом опрашивала и заново заряжала на прием...
Сейчас уже не скажу та-ли инициализация или нет.. щас минут через 10 кину последнюю рабочую иициализацию для обоих модулей.
и инты работают(вы точно на той что нужно ноге смотрите??)))
При работе с интом я (как и всегда) поставил срабатывание по срезу,но иногда (не понял почему) возникала ситуация когда в обработчике возникал еще один запрос, который ес-но я неловил уже и линия инта ложилась в ноль...
я кварцевый генератор не останавливал(кажется) только усилитель мощности.
я так понял кварц нужно тормозить в случае пользования wakeup (кажется так пишется), тогда он и проснется и проз может разбудить

передатчик:
Код
SendWordRF(0x0000);
    SendWordRF(0xC0E0);
    SendWordRF(0x8B83);//(0x8B61) 433BAND,+-90(ïî ìîåìó 60)kHz, 2MHzOut 0x8B67 dF=210kHz
    SendWordRF(0xC2A0);//enable bit sync //    
    SendWordRF(0xA640);//434MHz    
    SendWordRF(0xB000);
    SendWordRF(0x8B83);//(0x8B61) 433BAND,+-90(ïî ìîåìó 60)kHz, 2MHzOut 0x8B67 dF=210kHz

    SendWordRF(0xCC00);//Status Register read command - clear last service interrupt...

    SendWordRF(0xD2C0);//max DataRate 19.2
    SendWordRF(0xC800|((344828UL/19200)-1));//4.8kbps
    

    //SendWordRF(0xC001);//CLOSE ALL
    
    MCUCR &= 0xF0;
    MCUCR |= (1<<ISC01)|(0<<ISC00);
    GICR = (1<<INT0);

сами расшифруйте по даташиту(коментарии могут быть неверными)

приемник:
    SendWordRF(0x0000);
    SendWordRF(0xA000 | (unsigned int)(((434-430)/0.0025)));//434MHz
    SendWordRF(0x8978);//898A - 433BAND,167kHz; 898C - 67kHz 0x8978-200kHz

    SendWordRF(0xC800|((344828UL/19200)-1));//19200
    SendWordRF(0xC6F7);//AFC setting  
    SendWordRF(0xC42A);//autolock-off, slowmode,,Digital filter,DQD=3
    SendWordRF(0xC260);//output 2MHz
    SendWordRF(0xC008);
    SendWordRF(0xCE88);//use FIFO
    SendWordRF(0xCE8B);
    SendWordRF(0xC009);//OPEN RX
    
    
    MCUCR &= 0xF0;
    MCUCR |= (1<<ISC01)|(0<<ISC00);
    GICR = (1<<INT0);


тестовый инт передатчика
    if (BufferTX.FlagTX == 0)return;        

    if (BufferTX.BitPoint == 0)
    {
        if (BufferTX.BytePoint != 0)
        {
            BufferTX.BytePoint--;
            BufferTX.BitPoint = 7;
            if ((BufferTX.DataBufer[BufferTX.BytePoint]) & (1<<(BufferTX.BitPoint)))
                PORT_FSK = 1;
            else
                PORT_FSK = 0;
        }
        else
        {//Stop transmit
            SendWordRF(0xC001);
            BufferTX.FlagTX = 0;        
        }
    }
    else
    {
        BufferTX.BitPoint--;
        if ((BufferTX.DataBufer[BufferTX.BytePoint]) & (1<<(BufferTX.BitPoint)))
            PORT_FSK = 1;
        else
            PORT_FSK = 0;
        
    }

тестовый инт приемника:
    static unsigned char OldNumber=0;
    unsigned char Byte = ReadFIFO();
    if ( BufferTX.BytePoint == 0)
    {
        if (Byte==0x55)
        {
            BufferTX.DataBufer[BufferTX.BytePoint] = Byte;
            BufferTX.BytePoint = 1;
        }
        else
        {
            SendWordRF(0xCE88);//use FIFO
            SendWordRF(0xCE8B);
        }
    }
    else
    {
        BufferTX.DataBufer[BufferTX.BytePoint] = Byte;
        BufferTX.BytePoint= (BufferTX.BytePoint+1)&0x0F;
    
        if ((BufferTX.BytePoint) >=7)
        {
            Byte = BufferTX.DataBufer[1];
            Byte = Byte ^ BufferTX.DataBufer[2];
            Byte = Byte ^ BufferTX.DataBufer[3];
            Byte = Byte ^ BufferTX.DataBufer[4];
            Byte = Byte ^ BufferTX.DataBufer[5];

            if(Byte == BufferTX.DataBufer[6])
            {
                if (OldNumber !=  BufferTX.DataBufer[2])
                {
                    ExecutePacket.Volume= BufferTX.DataBufer[4];
                    ExecutePacket.Song= BufferTX.DataBufer[3];
                    ExecutePacket.Mode= BufferTX.DataBufer[5];
                    ExecutePacket.Flag = 1;
                    
                }
                OldNumber =  BufferTX.DataBufer[2];
            }
                

            BufferTX.BytePoint = 0;
            RFTimer = 0xF001;
            SendWordRF(0xCE88);//use FIFO
            SendWordRF(0xCE8B);
        }
    }    
    
    MCUCR |=((1<<ISC01)|(0<<ISC00));
    PORTC &= ~0x80;


Сообщение отредактировал Григорий2000 - Mar 5 2009, 22:16
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Григорий2000   RFM01-RFM02 от Hope Microelectronics Есть несколько вопросов...   Feb 21 2009, 22:27
- - Григорий2000   Вопрос снят)) Дело было не в бобине...   Feb 24 2009, 11:36
|- - Qwertty   Цитата(Григорий2000 @ Feb 24 2009, 14:36)...   Mar 5 2009, 21:54
- - Qwertty   Спасибо! У меня правда уже задышало. Обновил п...   Mar 6 2009, 00:08
- - Григорий2000   Нет непроверял еще, а антенна - кусок провода(окол...   Mar 6 2009, 05:38
- - Qwertty   Четвертьволновой штырь имеет куда большую эффектив...   Mar 6 2009, 14:00
|- - Mad-man   Всем привет, инициализирую чип RFM01 как китайско...   Jun 26 2010, 17:13
- - Mad-man   Блин, пропали все ((( Зат**ся с этим RF01 ничего н...   Jun 27 2010, 11:43
|- - Qwertty   Цитата(Mad-man @ Jun 27 2010, 15:43)...   Jun 28 2010, 09:12
|- - Mad-man   Цитата(Qwertty @ Jun 28 2010, 13:12) Не р...   Jun 28 2010, 10:38
|- - ZyBEX   Цитата(Mad-man @ Jun 28 2010, 14:38)...   Jun 29 2010, 22:56
|- - Mad-man   Цитата(ZyBEX @ Jun 30 2010, 02:56) Это не...   Jun 29 2010, 23:09
|- - Qwertty   Цитата(Mad-man @ Jun 30 2010, 03:09)...   Jun 30 2010, 10:33
|- - Mad-man   Цитата(Qwertty @ Jun 30 2010, 14:33) У ме...   Jun 30 2010, 11:45
|- - Qwertty   Цитата(Mad-man @ Jun 30 2010, 15:45)...   Jun 30 2010, 12:37
|- - Mad-man   Цитата(Qwertty @ Jun 30 2010, 16:37) Тогд...   Jun 30 2010, 13:51
|- - Qwertty   Цитата(Mad-man @ Jun 30 2010, 17:51)...   Jun 30 2010, 15:35
- - Олежик   Тогда может передатчик тоже самому сделать ? Сразу...   Jun 30 2010, 16:23
|- - Mad-man   Цитата(Олежик @ Jun 30 2010, 20:23) Тогда...   Jun 30 2010, 16:56
|- - Qwertty   Цитата(Mad-man @ Jun 30 2010, 20:56)...   Jun 30 2010, 17:45
- - нечитатель   Из восьми приёмников RFM01 один "плохо ловит...   Jul 2 2011, 06:19
- - Михаил86   Добрый день! Вот уже неделю пытаюсь соединить...   Nov 29 2012, 11:40


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 31st July 2025 - 06:48
Рейтинг@Mail.ru


Страница сгенерированна за 0.01398 секунд с 7
ELECTRONIX ©2004-2016