Полная версия этой страницы:
can
Женек_84
Jul 16 2010, 08:09
Друзья, подскажите как осуществить проверку на работоспособность mcp2515?
Задача просто убедиться, написав прогу простенькую, что контроллер работоспособен, то есть есть прием и ответ. Хотелось бы узнать че куда записать в какие регистры (для наших программеров) и че должны увидеть?
Схема прикреплена)
Нажмите для просмотра прикрепленного файла
схема не читаема, Выложите в лучшем качестве.
если используете mcp2551 то оптопары - лишнее. развязка там хорошая, а схема упрощается:
http://ww1.microchip.com/downloads/en/DeviceDoc/51762a.pdfа вообще вам сюда, есть даже примеры :
http://www.microchip.com/wwwproducts/Devic...ocName=en010406
Женек_84
Jul 16 2010, 08:42
у нас есть плата для проверки, но программерам нужно сказать последовательность действий: че-куда записать и че они должны увидеть для того, чтобы удостовериться, что контроллер работает
sla000
Jul 16 2010, 09:12
Не совсем понятно что нужно проверить - связь с самим контроллером CAN или связь с другим устройством на шине CAN.
Для первого случаю рекомендую записать данные в какой-нибудь read-write регистр контроллера, и потом прочитать обратно, если оно - значит ОК.
Для второго - самое верное сделать 2 железки и завязать в сеть, т.е. проверить работу непосредственно на практике. Второй вариант - не знаю насчет MCP, но у Silabs есть режим loopback - можно отправить сообщение самому себе (наружу сигнал не проходит, RX фактически закорочен на TX), все равно что пингануть localhost.
Женек_84
Jul 16 2010, 10:57
спасибо за ответы)
ща более понятно, да связь просто проверить с самим контроллером, что в него пишутся данные, читаются, что прерывание формируется. а устройства, подключаемого со стороны can ща нет так такового, то есть на шине нет ничего.
а вот насчет режима loopback я ща смотрю есть ли в этом контроллере. просто получается, что если по Tx гонится инфа, то она же на can-трансивере передается сразу и на Rx и обратно в mcp, верно? и можно при определенном режиме просто считать эти данные и путем сравнения убедиться в правильности?
не совсем: на трансивер данные не приходят, а остаются в mcp, просто перекладуются на rx
Женек_84
Jul 16 2010, 12:15
ясно, то есть в mcp получается есть режим, когда можно проверить его сам на себя? или так всегда происходит прост надо как-то отключать этот режим?
не знаю как в mcp есть режим loopback или нет, а в микрочиповских контроллерах он сделан именно так: данные никуда не вылазят. Т.е. этот режим тока для отладки, чтоб не вешать лишнюю обвязку и шину реально не делать.
На mcp глянул поверхностно - очень похожа огранизация на внутренний модуль контроллеров. Если там есть указания на режим loopback, то он должен работать именно так.
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.