Перейти к содержанию
    

Phantom_

Участник
  • Постов

    14
  • Зарегистрирован

  • Посещение

Сообщения, опубликованные Phantom_


  1. В этом МК есть аппаратный CAN интерфейс. С ним я разобрался, вот только могу пользоваться им лишь для связи с другим таким же МК.

    А мне требуется интегрироваться в сетку с протоколом CANOpen.

    Вопрос: Возможно ли такое выполнить ? И как ? Очень нужны базовые примеры и документы.

    Сам я пока лопачу документацию. Но без вашего опыта буду долго возиться.

    Уважаемое сообщество, прошу помощи.

  2. Мужики, пока вы здесь, объясните мне, непонятливому:

    В микроконтроллере есть SetAcceptanceCode ( Задаёт ID сообщения, данного буфера сообщения. Буфер сообщения исполльзуется для фильтрации сообщений входящих кадров) и SetAcceptanceMask (Задаёт регистры маски подтверждения, кажется так. Этот метод пишет подтверждающую маску напрямую в регистры маски подтверждения).

    Объясните на пальцах, в чём разница ? Они, кажется, подобны.

    Думаю, что из них использовать для фильтрации. Склоняюсь к маске.

  3. Хочу пользоваться системой CVS при написании программ на CodeWarrior.

    Пытаюсь пользоваться плагинами mwCVS и abCVS. Сервер CVS - CVSNT 2.5.04.

    Создаю в CVSNT репозиторий, настраиваю плагины в CW. А при попытке добавить проект в CVS, как и при любом действии

    вылезает мессага

    \"cvs.exe \" -w add -kb -m \"no message\" \"can.mcp\"

     

    cvs.exe add: No CVSROOT specified! Please use the `-d' option

    cvs.exe [add aborted]: or set the CVSROOT environment variable.

     

    Научите, пожалуйста, как ей пользоваться. :crying:

  4. О каких масках идёт речь? Тех, что накладываются на идентификатор?

    Идентификатор данных разбивают на поля, например: система, устройство, параметр. Если приёмный узел желает получать информацию о всех параметрах конкретного устройства конкретной системы, то маску формируют таким образом, чтобы поля идентификатора "система" и "устройство" проходили бы сквозь неё и сравнивались с установленными для приёма. Таким образом получатель принимает значения параметров нужного ему устройства, при этом не знает о том, сколько узлов сети эту информацию отправляют (оно ему и не нужно!).

     

    Благодарю, это очень многое объясняет.

     

    сейчас попытаюсь сформулировать следующий вопрос.

    То есть, если я использую 8-и битную шину, мне следует выбрать для использования 8 восьмибитных фильтров? Есть еще на выбор 4 шестнадцатибитных и 2 тридцатидвухбитных.

    Или выбор должен быть обоснован количеством параметров и устройств, которые мне необходимо впихнуть в идентификатор и создать соответсвующее кол-во масок ?

  5. Название камня привёл просто так, поскольку, думаю, что это большой роли играть не будет.

    На этом камне есть модуль CAN на борту.

    Я его инициализирую, а дальше .... не знаю как алгоритм придумать - это из-за отсутствия знаний по CAN.

    Я хочу, чтобы алгоритм обмена данными фунциклировал примерно в таком виде:

    1) Выплёвывание данных для отображения на панельке ( Вот такая панелька )

    2) Обмен данными с компьютером (чтение/запись переменных, перепрошивка МК и т.п.)

    3) Обмен данными с соседним микроконтроллером (на будущее)

     

    Вопросы:

    1) Очень нужно как можно больше информации на русском (английские доки уже устал лопатить, не могу найти того, что мне нужно) о параметрах пакета, с подробным описанием, хорошо, если примеры будут.

    2) Требуется помощь в составлении алгоритма.

    3) Не понимаю, как отправлять пакет для одного конкретного узла в сети.

    4) как работать с масками и флагами.

     

    А в целом, рад буду любой помощи, даже просто поясняющим ответам.

  6. Привет

    Есть у меня МК Freescale DSP56F805.

    На борту имеется модуль CAN. Я могу его программно включить, и пр.

     

    Однако, не могу себе представить, как написать программу, т.е. принцип обмена данными.

    Среда программирования Metrowerks CodeWarrior 5.6

     

    Мне нужно обеспечить хотя бы 3 режима работы:

    1) Из этого МК будут читаться данные для отображения на панельки;

    2) Возможность отдавать команды для МК;

    3) Обмен данными с соседними МК.

     

    Не могу разобраться, как назначить МК ID. Как послать значение другому МК или панельке.

    Помогите, тыкните носом куда смотреть, что прочесть. Рад буду увидеть огрызок функции/алгоритма послать/принять.

  7. Кстати, всё, что у них с буквами DSP, имеет один общий недостаток - очень сильно воспринимают помехи. Лучше те, что имеют в названии буквы MC. Я, например, остановился на МC56F8037. Ну это такая вещь. Демо-плата пришла с программой и USB-программатором. Правда, есть недостаток - не работает с 8-битовыми числами. У "DSP" такого недостатка нет. Насчёт CANа не знаю, кажись, нужно что-то отдельное.

     

    Про помехи верно. Руку к плате подношу, начинается неконтроллируемый ресет.

  8. Здравствуйте.

    Понадобилось проработать CAN в упомянутом в теме МК. Ковыряю доки.

    Не могли бы вы бросить в меня простеньким тестовым проектом "Послать/Прочитать" значение ?

    От простенького тестового проекта я хочу понять принцип работы с CAN. Что нужно сперва сделать, что после, что подстроить и т.п.

     

    Второй вопрос:

    какая лицензия нужна (какая строка должна быть в license.dat) на вот такое сообщение ?

    +CAN1

    +ERROR: There is not valid licence to open the file: Drivers\56800\FreescaleCAN4CPU_56F805.drv

×
×
  • Создать...