Проблемы с MCP2515

Do you have a question? Post it now! No Registration Necessary

Threaded View

Hi All!

Есть небольшая проблема.
Почему-то сей CAN-контроллер нехочет принимать пакеты :(
Вернее не принимает если в фильтры или в маски что-нибудь
записать. Неважно что, писал нули всеравно не принимает :(
Если отключить эти фильтры то замечательно принимается.
Облазил "весь" инет подобных заморочек не нашел, видимо
я сам себе придумал грабли :(
                                                                                
                
Подскажите как быть, что я мог неправильно сделать?

--
    Александр.

Re: Проблемы с MCP2515
Здраствуйте Alexander,
*06.04.04* *11:54:15* Вы писали в *RU.EMBEDDED*
сообщение к *All*
о *"Проблемы с MCP2515"*.

 U> Есть небольшая проблема. Почему-то сей CAN-контроллер нехочет принимать
 U> пакеты :( Вернее не принимает если в фильтры или в маски что-нибудь
 U> записать. Hеважно что, писал нули всеравно не принимает :( Если отключить
 U> эти фильтры то замечательно принимается.

Работал с MCP2510 (предшественник 2515). Hастраивал так:
RXM0*ID* = 0;
RXF0SIDL = 0b00001000;
RXB0CTRL = 0b00000100;

и принимал все поступающие пакеты.

С уважением, Den


Re: Проблемы с MCP2515

Hi Den Y. Borisov!


 U> Есть небольшая проблема. Почему-то сей CAN-контроллер нехочет принимать
 U> пакеты :( Вернее не принимает если в фильтры или в маски что-нибудь
 U> записать. Hеважно что, писал нули всеравно не принимает :( Если отключить
 U> эти фильтры то замечательно принимается.

 DYB> Работал с MCP2510 (предшественник 2515). Hастраивал так:
 DYB> RXM0*ID* = 0;
 DYB> RXF0SIDL = 0b00001000;
 DYB> RXB0CTRL = 0b00000100;

 DYB> и принимал все поступающие пакеты.

Так работает, большое спасибо.
После экспериментов выяснилось, что определяющей стала
строчка
RXF0SIDL = 0b00001000;
если туда записать 0, то ничего не работает.
Почему так я понять не смог :(


--
    Александр.

Re^2: Проблемы с MCP2515
Здраствуйте Alexander,
*08.04.04* *11:46:38* Вы писали в *RU.EMBEDDED*
сообщение к *Den Y. Borisov*
о *"Re: Проблемы с MCP2515"*.

 U> Так работает, большое спасибо. После экспериментов выяснилось, что
 U> определяющей стала строчка
 U> RXF0SIDL = 0b00001000;
 U> если туда записать 0, то
 U> ничего не работает. Почему так я понять не смог :(

Bit3 - это выбор типа фреймов, к которым применяется этот фильтр.
У меня протокол основан на Extended Frames (EF), поэтому приемник мне
нужно настраивать на прием только EF.
Может ты посылал EF и у тебя не было настроено ни одного фильтра для EF?

С уважением, Den


Site Timeline