Отговори на тема  [ 12 мнения ] 
Can bus проблем 
Автор Съобщение
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Чет Юни 25, 2009 1:01 pm
Мнения: 2251
Мнение Can bus проблем
Здравейте! Построил съм си CANbus линия с MCP2515 и SN65HVD230D. При нормални условия всичко е ОК. Проблемите започват ако няма нодове по линията. Как се установява липса на нодове?! За програмата съм използвал готова библиотека на CCS can-mcp251x. Проблемът е, че тези пичове на са доизпипали кода и когато няма други нодове, програмата забива. Вероятно буфера на MCP2515 се препълва и до там. Има ли някакъв прост начин да установя дали има други нодове по линията и да избегна тези проблеми?!
Благодаря!

ПП: Мисля си да изпращам нещо като пинг - малко заклинание, на което нодовете да отговарят. Нз обаче какво би станало ако има много нодове и тръгнат да отговарят на куп...

_________________
www.elkran.com


Сря Авг 19, 2015 10:38 am
Профил
Ранг: Ориентиран
Ранг: Ориентиран
Аватар

Регистриран на: Сря Фев 08, 2006 3:32 pm
Мнения: 253
Местоположение: Благоевград
Мнение Re: Can bus проблем
То по спецификация кана не знае дали има нодове отсреща, Праща си и си чака. Терминирана ли е линията?


Сря Авг 19, 2015 11:11 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Ное 12, 2004 3:38 pm
Мнения: 9103
Местоположение: Chicago, IL
Мнение Re: Can bus проблем
Веско, това въобще не е вярно - знае си много добре, че отсреща няма никой и то точно по спецификация. Даже can контролера трябва да има брояч на грешките от изпратени, но не получени от никой съобщения и да дава прекъсване, в което програмата да се грижи да рестартира контролера когато въпросните грешки станат 127. Сега не знам как точно са го реализирали в майкрочипския чип, но би трябвало да е нещо подобно.


Сря Авг 19, 2015 12:07 pm
Профил
Ранг: Ориентиран
Ранг: Ориентиран
Аватар

Регистриран на: Сря Фев 08, 2006 3:32 pm
Мнения: 253
Местоположение: Благоевград
Мнение Re: Can bus проблем
Това има ли го документирано някъде, да се образовам.


Сря Авг 19, 2015 1:03 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Ное 12, 2004 3:38 pm
Мнения: 9103
Местоположение: Chicago, IL
Мнение Re: Can bus проблем
Естествено - би трябвало да го има както в дейта шитовете, така и в стандарта. Става да закачиш и осцилоскоп и ще видиш как като няма никой отсреща да отгивори на акнолиджа и контролера не изпраща цялото съобщение а бичи нонстоп нещо като приамбъл и в същото време трябва да инкрементира брояча, за който споменах по-горе. CAN бъса е доста интелегентен и доста сейфти, което е естествено като се има предвид къде се ползва. Аз затова винаги го препоръчвам вместо RS-485 защото за разлика от него софтуера не трябва да се грижи за нищо на физическо и ниско ниво.


Сря Авг 19, 2015 1:35 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Чет Юни 25, 2009 1:01 pm
Мнения: 2251
Мнение Re: Can bus проблем
Въпрос! Да кажем, че намеря как да получа достъп до въпросния регистър! По принцип грешка може да възникне по ред причини - сиреч да се инкрементира регистъра. Как да различа двете неща? Кога е просто грешка и кога липса на получател?!
Поздрави!

_________________
www.elkran.com


Сря Авг 19, 2015 5:22 pm
Профил
Online
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Нед Ное 21, 2004 11:31 pm
Мнения: 10088
Мнение Re: Can bus проблем
ама ти наистина ли искаш някой да ти прочете какво пише на стр. 48 от чаршафа за MCP2515?


Сря Авг 19, 2015 6:05 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Ное 12, 2004 3:38 pm
Мнения: 9103
Местоположение: Chicago, IL
Мнение Re: Can bus проблем
Дедо, ама ти даже си отворил и чаршафа ли :)

Веско, в чиповете дето аз ползвам няма разграничаване на грешката, ама ти ако се замислиш тя е само липса на друг нод, което разбира се може да е откъсната или шортната жица. Ти толкова категорично се изказа в първия ти пост, че сега чак няма логика във въпросите ти :).


Сря Авг 19, 2015 7:39 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Пон Мар 13, 2006 1:59 pm
Мнения: 3867
Местоположение: Габрово
Мнение Re: Can bus проблем
На база на споменатите броячи контролера минава в error passive (май беше над 128 грешки) или ако продължи затъмнението стига до bus off state. Това нормалните контролери го имат като статус, като прекъсване и т.н. На МЦП-то не помня, минаха 10-тина години откак съм го ползвал.
Разпознаването дали има друг активен node на бъса е че в края на съобщението предаващия пуска един бит, който всеки активен нод е длъжен да натисне и така предаващия разбира че някой е видял съобщението и то е минало валидно по бъса.
Между другото, сега е момента да си осъвремениш платформата - SPI към CAN е загуба на време, в смисъл времето дето ще загубиш да питаш по форумите докато разбереш че е шит, ще ти стигне да си смениш платформата с такава с вграден кан.


Сря Авг 19, 2015 9:58 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Чет Юни 25, 2009 1:01 pm
Мнения: 2251
Мнение Re: Can bus проблем
Нямам под ръка удобен контролер с вграден CAN. Иначе благодаря за съветите. Утре ще видя как да осъвместя четенето на вътрешните регистри на MCP с това, което имам като код...
Поздрави!

_________________
www.elkran.com


Сря Авг 19, 2015 10:27 pm
Профил
Ранг: Новодошъл
Ранг: Новодошъл

Регистриран на: Нед Окт 31, 2004 3:42 pm
Мнения: 175
Мнение Re: Can bus проблем
gicho написа:
Между другото, сега е момента да си осъвремениш платформата - SPI към CAN е загуба на време, в смисъл времето дето ще загубиш да питаш по форумите докато разбереш че е шит, ще ти стигне да си смениш платформата с такава с вграден кан.


Ще може ли малко повече обяснение защо това е така ?

Мисля да пробвам един CAN за любителски проект и LPC-тата, които ползвам нямат вграден CAN,та мислех по SPI <-> CAN контролер с някакъв вграден transceiver.


Вто Окт 13, 2015 4:57 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Пон Мар 13, 2006 1:59 pm
Мнения: 3867
Местоположение: Габрово
Мнение Re: Can bus проблем
Майкрочипския спи кан контролер има бъгове и лимитации от дизайна. Мина много време откак го настъпих, но по спомен:
- СПИ интерфейса не държи специфицираната скорост, май го пишеха 8мбит но не ги държи
- броя мейлбокси е малък
- имаш само един интерръпт (не можеш да вържеш определени пакети да генерират по-високо приоритетно прекъсване от други)
- трябват ти микро с повече пинове - СПИ + интеръпт и ресет поне, отколкото двата на кан-а
- към момента избора на микроконтролери с вграден кан започва от цени, по-ниски от тези на едно мцп - нема кой да се занимава с него, освен китайците докато клонират някой архаичен дизайн (примерно някой диагностики за коли)
- имаше и други неща, но не помня вече - продуктът си работеше (работи) но всяка мотика удължаваше развоя и така си умря тоя дизайн (мина на микро с вграден кан)
Много по-ефективно е да го имаш вътре контролера. Със сигурност има специфични проекти, в който няма микроконтролер с всички необходими периферии - например новите ELM327 китайците ги правят с някакъв блутут чип (май ARM7 или 9 имаше вътре :rolleyes: ) и на него му закачат микрочепа. Ако си в тази ситуация има резон.


Сря Окт 14, 2015 1:57 pm
Профил
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 12 мнения ] 

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 7 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни