Jump to content

    

stm32f103c8t6 + CAN + Hard Fault

1 hour ago, kostet2010 said:

я спросил на какие пины цеплять кан-шилд  MCP2551 к  stm32f103c8t6 и как это все в STM32CubeMX красиво прорисовать.

В кубе делаете проект под свой процессор. На вкладке где схема пинов процессора включаете узел CAN и смотрите на каких пинах процессора CAN-Tx(33) Can-Rx(32). Эти выводы подключаете на ваш шилд-трансивер - в соответствии с даташитом на мс трансивера (а не маркировкой на плате, где могут быть ошибки). Пока все достаточно красиво. Далее, медленно-медленно, спускаетесь  открываете вкладку куба configuration и настраиваете инициализацию узла CAN. Лучше поищите готовый проект - пример. Вообще, вам желательно обзавестись адаптером / сниффером CAN hacker, или любым другим, если хотите разобраться с CAN.

Quote

там другая микросхема. я же спрашиваю(интересуюсь) как к stm32f103c8t6 подключить кан-шилд MCP2515 CAN шина модуль TJA1050 приемник SPI модуль для Arduino и как это все прописать в  STM32CubeMX

На любой из 2 имеющихся SPI. Кубу не интересно, что вы будете на них подключать. Он занимается только подготовкой узлов к работе.

Share this post


Link to post
Share on other sites
5 часов назад, k155la3 сказал:

В кубе делаете проект под свой процессор. На вкладке где схема пинов процессора включаете узел CAN и смотрите на каких пинах процессора CAN-Tx(33) Can-Rx(32). Эти выводы подключаете на ваш шилд-трансивер - в соответствии с даташитом на мс трансивера (а не маркировкой на плате, где могут быть ошибки). Пока все достаточно красиво. Далее, медленно-медленно, спускаетесь  открываете вкладку куба configuration и настраиваете инициализацию узла CAN. Лучше поищите готовый проект - пример. Вообще, вам желательно обзавестись адаптером / сниффером CAN hacker, или любым другим, если хотите разобраться с CAN.

На любой из 2 имеющихся SPI. Кубу не интересно, что вы будете на них подключать. Он занимается только подготовкой узлов к работе.

может я плохо объясняю. есть такая штука. ее надо подцепить к stm32f103c8t6 . На вкладке где схема пинов процессора ,разве надо включать  узел CAN.мне кажется надо только  SPI. когда нажимаешь  SPI, вылезают еще строчки. что там нужно выбирать. и на какие пины вешать CS и INT.как их обозначить?

MCP2515-CAN-Bus-Module-TJA1050-receiver-SPI-For-51-MCU-ARM-controller.jpg

Share this post


Link to post
Share on other sites
3 hours ago, kostet2010 said:

может я плохо объясняю. есть такая штука.

Ну, не очень хорошо, да.

Хотя бы потому, что на фоточке написано 2551, а в Вашем сообщении - 2515. UPD: наоборот, конечно же. Чёртов микрочип, почему они такие похожие названия сделали?

High-Speed CAN Transceiver и Stand-Alone CAN Controller with SPI Interface - штуки довольно-таки разные...

 

Ну и было бы неплохо рассказать, а что же Вы сами уже сделали? Написали "подробно объясните мне всё" ?

On 11/30/2019 at 12:21 PM, Behram said:

Думаю, сначала стоить изучить

...какой-нибудь заслуживающий уважения источник.

Потому что от фразы "мой малыш в семи известном и любимом корпусе ATMEGA8 (LQFP32)" у местных жителей может и приступ случиться. Хорошо, если приступ хохота...

Share this post


Link to post
Share on other sites

Для начала, чтобы оно реально работало и не нужно было в бубен бить, надо отказаться от калокубов всяких!

И зачем, кстати, цеплять к МК, у которого есть аппаратный CAN, какую-то приблуду на SPI?

2 hours ago, kostet2010 said:

На вкладке где схема пинов процессора ,разве надо включать  узел CAN.мне кажется надо только  SPI. когда нажимаешь  SPI, вылезают еще строчки. что там нужно выбирать. и на какие пины вешать CS и INT.как их обозначить?

Черт, как все запущенно!

Сначала надо RM на этот микроконтроллер основательно почитать. Почитать даташит. А не  тыкать мышкой наугад в надежде, что внезапно все станет хорошо.

Что за абдуринство?

Edited by Eddy_Em

Share this post


Link to post
Share on other sites

 

9 минут назад, esaulenka сказал:

Ну, не очень хорошо, да.

Хотя бы потому, что на фоточке написано 2551, а в Вашем сообщении - 2515.

High-Speed CAN Transceiver и Stand-Alone CAN Controller with SPI Interface - штуки довольно-таки разные...

 

Ну и было бы неплохо рассказать, а что же Вы сами уже сделали? Написали "подробно объясните мне всё" ?

да почти ни чего .открыл КУБУ нашел плату , на микросхеме нажал  на spi и завис. что там нужно выбирать?

Share this post


Link to post
Share on other sites

К сожалению, на таком уровне понимания - закрыть куб, открыть ютуб, посмотреть 100500 роликов "стм+куб - моргаем светодиодиком". Когда доберётесь до роликов "осваиваем SPI", и поймёте, что там делают, можно возвращаться к имеющемуся кан-контроллеру.

Не, можно, конечно, вбить в гугл "STM32 + MCP2551" (это вы тоже не делали?). Проблема только в том, что без понимания, что именно происходит, повторить даже пошаговую инструкцию будет сложно...

Share this post


Link to post
Share on other sites
10 минут назад, esaulenka сказал:

К сожалению, на таком уровне понимания - закрыть куб, открыть ютуб, посмотреть 100500 роликов "стм+куб - моргаем светодиодиком". Когда доберётесь до роликов "осваиваем SPI", и поймёте, что там делают, можно возвращаться к имеющемуся кан-контроллеру.

Не, можно, конечно, вбить в гугл "STM32 + MCP2551" (это вы тоже не делали?). Проблема только в том, что без понимания, что именно происходит, повторить даже пошаговую инструкцию будет сложно...

на это сайт я как раз через гугл и попал. понимание более менее есть.нет знания англ.языка. пошаговая инструкция меня бы очень устроила.

Share this post


Link to post
Share on other sites
3 hours ago, kostet2010 said:

может я плохо объясняю. есть такая штука. ее надо подцепить к stm32f103c8t6 . На вкладке где схема пинов процессора ,разве надо включать  узел CAN.мне кажется надо только  SPI. когда нажимаешь  SPI, вылезают еще строчки. что там нужно выбирать. и на какие пины вешать CS и INT.как их обозначить?

Еслиб вы посвятили присутствующих в ваш стратегический замысел, было бы намного проще. Ну, есть одна (?) синяя плата с STM32F103. Есть другая синяя плата-шилд с MCP2515. Все соединили, написали-залили весь софт, что дальше ? Куда подключаем синенький выход разъема CAN-шины ? Чтобы начать работать с коммуникационным узлом, надо иметь еще один такойже комплект или адаптер CAN для PC (фирменный очень дорого, какой недорого - указывалось выше), мастер-слейв, клиент-сервер, что-кому передавать-принимать-опрашивать-управлять (из-за чего собственно и весь "балет") :russian_ru:

Для самого начала я бы зашел в "злачное место" для MCP2515 - там есть хорошая базовая док. по CAN + примеры.

"Не для начала" есть такая весч как mbed, у которой есть драйверы под этот (MCP2515) девайс. В виде исходников. Можно их взять за основу ваших изысканий.

ТУТ, MBED + MCP2515 

 

ps  Злачное место MCP2515 - ТУТ

Кстати, хорошо что вы меня туда завели шас. Заодно нашел кое-что для себя :biggrin:

(вкладка "Documents", заодно посмотрите что в "Development Environment")

 

Share this post


Link to post
Share on other sites

смысл в том что я заказал каннакер3.2  .он же собран на стм32. и пока он идет я подумал собрать нечто на него похожее на STM32F103 (она есть и кан-шилд). мне нужно получить пакеты из кан-шины приборной панели.

Share this post


Link to post
Share on other sites
1 minute ago, kostet2010 said:

смысл в том что я заказал каннакер3.2  .он же собран на стм32. и пока он идет я подумал собрать нечто на него похожее на STM32F103 (она есть и кан-шилд). мне нужно получить пакеты из кан-шины приборной панели.

Понятно, вроде. Вы хотите вылавливать из шины определенные пакеты, для логирования или  отображения на дополнительной приборной панели. Не важно.

Я бы конечно, использовал встроенный в процессор контроллер. Кроме того, канхакер, вроде, выкладывался когда-то в виде исходников (но на atmega). 

Share this post


Link to post
Share on other sites

панель не дополнительная . родная панель заменена на панель приборов ВЕНАТОР ( матрица, ардуино и андроид) . эта панель работает так что от каждого датчика пришлось тянуть проводок. а сейчас я хочу перевести ее на кан-шину. еще есть ардуино уно с кан-шилдом под нее. но почему то скетчи которые в примерах не кампилятся. и ардуино наверно не подойдет к программам с которыми работает канхакер 3.2  в частности " бомбер"

есть еще микросхема MCP2551 .можно и с ней собрать. подскажите как лучше.

Edited by kostet2010

Share this post


Link to post
Share on other sites
45 minutes ago, kostet2010 said:

на STM32F103 (она есть и кан-шилд).

Еще раз повторю вопрос: зачем соединять микроконтроллер, умеющий аппаратный CAN, с SPI-конвертером?

Какой в этом великий замысел? Заставить Оккама в могиле крутиться?

Share this post


Link to post
Share on other sites
5 минут назад, Eddy_Em сказал:

Еще раз повторю вопрос: зачем соединять микроконтроллер, умеющий аппаратный CAN, с SPI-конвертером?

Какой в этом великий замысел? Заставить Оккама в могиле крутиться?

да замысла ни какого нет .можно (да видимо так будет и лучше) и с MCP2551 собрать.

Share this post


Link to post
Share on other sites
10 минут назад, kostet2010 сказал:

можно (да видимо так будет и лучше) и с MCP2551 собрать

Лучше точно не будет, ибо, изначально контролер выбран не верно.

Share this post


Link to post
Share on other sites
3 minutes ago, kostet2010 said:

да замысла ни какого нет .можно (да видимо так будет и лучше) и с MCP2551 собрать.

Более правильное решение - использовать контроллер с встроенным узлом CAN (STM32F103 - 1 CAN, у F105 - 2 CAN) + любой трансивер.

Если будете писать сами и "с нуля", то в любом случае надо будет отлаживать работу софта (да и железа, возможно, тоже).

Если используете CAN встроенный в STM32, то отладка выглядит как внос-вынос мебели через дверь. Если отлаживать будете STM32 + внешний шилд MCP2515 - то это внос-вынос мебели через форточку (мебель виртуальная). Разве что найдете хорошо отлаженный и документированный драйверный код под STM32 для работы с MCP2515. К томуже использование "набортового" CAN намного упростит/уменьшит программу и обеспечит высокое быстродействие (для внешнего шилда MCP2515 оно будет скорее всего ниже из-за работы с "форточкой" SPI). Надежность тоже легче обеспечить при "набортовом" CAN (хотя, в любом случае, все зависит от писателя).

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now