Международный форум любителей Мазда5/Премаси (Семейный автомобиль, минивэн): Нештатная информация на штатный дисплей - Международный форум любителей Мазда5/Премаси (Семейный автомобиль, минивэн)

Перейти к содержимому

  • (17 Страниц)
  • +
  • « Первая
  • 15
  • 16
  • 17
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

Нештатная информация на штатный дисплей

#321 Пользователь офлайн   ustas 

  • Участник
  • PipPip
  • Группа: Маздаводы
  • Сообщений: 139
  • Регистрация: 19 April 14

Отправлено 26 May 2017 - 23:29

Чуть более сложный пример (работающий на 100%). Работает с двумя CAN-контроллерами, подключенными к однму МК (думаю, догадаешься, как поправить, чтобы был один):

Код
// demo: CAN-BUS Shield, send data
#include <mcp_can.h>
#include <SPI.h>

#define ID_PART0  0x28F
#define ID_PART1  0x290
#define ID_PART2  0x291

MCP_CAN CANcar(10);  
MCP_CAN CANdsp(9);  

// Set CS to pin 10

void setup()
{
    Serial.begin(115200);
/*
START_INIT:

    if(CAN_OK == CAN.begin(CAN_125KBPS))                   // init can bus : baudrate = 500k
    {
        Serial.println("CAN BUS Shield init ok!");
    }
    else
    {
        Serial.println("CAN BUS Shield init fail");
        Serial.println("Init CAN BUS Shield again");
        delay(100);
        goto START_INIT;
    }
    
    */
    CANcar.begin(CAN_125KBPS);
    CANdsp.begin(CAN_125KBPS);
}

unsigned char myStr1[8] = {
  0xC0, 'H', 'e', 'l', 'l', 'o', ' ', 'c'};
unsigned char myStr2[8] = {
  0x87, 'a', 'r', ' ', ' ', ' ', ' ', ' '};
unsigned char myStr3[8] = {
  0xC0, 'H', 'e', 'l', 'l', 'o', ' ', 'd'};
unsigned char myStr4[8] = {
  0x87, 'i', 's', 'p', ' ', ' ', ' ', ' '};

unsigned char stmp[8] = {0xD1, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x01};
void loop()
{
    // send data:  id = 0x00, standrad flame, data len = 8, stmp: data buf
    CANdsp.sendMsgBuf(ID_PART0, 0, 8, stmp);
    CANdsp.sendMsgBuf(ID_PART1, 0, 8, myStr3);
    CANdsp.sendMsgBuf(ID_PART2, 0, 8, myStr4);
    CANcar.sendMsgBuf(ID_PART0, 0, 8, stmp);
    CANcar.sendMsgBuf(ID_PART1, 0, 8, myStr1);
    CANcar.sendMsgBuf(ID_PART2, 0, 8, myStr2);
    delay(100);                       // send data per 100ms
}


Удачи!

P.S. "на столе" резистор в 120Ом к дисплею подключать обязательно (без него не заведется). Ну и проверить, что подключаешься именно к CAN-шине дисплея (и не путаешь полярность). "Земли" должны быть общие + еще два провода на CAN.

Сообщение отредактировал ustas: 26 May 2017 - 23:31

0

#322 Пользователь офлайн   Antoshka_Su 

  • Активный участник
  • PipPipPip
  • Группа: Маздаводы
  • Сообщений: 270
  • Регистрация: 19 August 16

Отправлено 27 May 2017 - 06:07

Попробовал ваш пример - не работает, дисплей только время показывает. В принципе в примере настройки CAN-шины, адреса, пакеты сообщений все те же самые, что и у меня, только несколько синтаксис другой.
120 Ом на CAN-шине есть. Полярность CAN уже по-разному пробовал подключать.
Ардуинку и дисплей запитал от одного источника 12В, так что земля у них общая.
По-поводу подключения дисплея. У меня к дисплею подключено сейчас 4 провода. Распиновку нашел на стр. 208 электросхем (0922-3):
B - питание
H - земля
L - CAN-L
J - CAN-H
В этой теме вы выкладывали фото какие провода резать в жгуте около дисплея, сравнил - я подключаюсь к тем же контактам.
Попробую за выходные непосредственно в машине посидеть, поотправлять сообщения и почитать CAN-шину.
Возможно у меня просто CAN-модуль дохлый и не отправляет сообщения по CAN-шине.
0

#323 Пользователь офлайн   Antoshka_Su 

  • Активный участник
  • PipPipPip
  • Группа: Маздаводы
  • Сообщений: 270
  • Регистрация: 19 August 16

Отправлено 27 May 2017 - 20:39

В общем сегодня подцепил информационный дисплей на место.
Ардуинку через CAN-адаптер подцепил к разъему OBDII (6 и 14 контакты). Результат все тот же - центральная часть дисплея ничего не показывает. Заливал как скетчи, которые должны что-то отправлять на дисплей, так и скетчи, которые должны слушать CAN-шину. Подключал как с резистором 120 Ом, так и без него. Менял местами контакты идущие к CAN-шине.
Думаю, что очень вероятно у меня CAN-адаптер дохлый, хотя сообщение "CAN BUS Shield init ok!" исправно выдает (и перестает выдавать, если отключить один из провод идущий к адаптеру). В понедельник на работу с собой Ардуинку возьму, посмотрю на осциллографе идут ли какие-нибудь сигналы с CAN-разъемов адаптера.
0

#324 Пользователь офлайн   Antoshka_Su 

  • Активный участник
  • PipPipPip
  • Группа: Маздаводы
  • Сообщений: 270
  • Регистрация: 19 August 16

Отправлено 30 May 2017 - 18:58

Ардуину с шилдом на работе проверил. Подключал CAN-адаптер к осциллографу. На выходе микросхемы 2515 (ноги 1 и 2) тишина (постоянный уровень сигнала, не помню 0 или 1). На входах SCK, SI, CS красивые пачки импульсов (биты информации). А вот на входе SO — мусор какой-то (нет четкого уровня "0", зазубрины, какие-то всплески, которые намного короче импульсов на трех предыдущих контактах).
Ну и соответственно на выходе микросхемы TJA1050 тоже тишина.
Попробовал пропаять плату, но результата не дало.
В общем придется заказывать новый адаптер.
0

#325 Пользователь офлайн   Malishok1452 

  • Участник
  • PipPip
  • Группа: Маздаводы
  • Сообщений: 56
  • Регистрация: 06 June 16

Отправлено 13 June 2017 - 09:30

Какой кварц на вашем шилде стоит?

В вашем скетче стоит 8Мгц. Если речь про TJA то чую что у вас 8 МГц как и на моем тестовом. Взяли ли вы соответствующую библиотеку, которая поддерживает настройку под частоту кристалла.
В примере ustas 16 Мгц.

Попробуйте для начала чтение данных с шины настроить. В частности дисплей постоянно флудит по адресу 0х401. так можно проверить и полярность и все остальное.

Отсутствие сигнала на выходе TJA1050 ничего не значит. Если MCP2515 не инициализирована или инициализирована неправильно то она в первую очередь сваливается в ошибку и ничего не шлет на TJA.

Если есть интерес полезть дальше то можно обойти библиотеку и работать с 2515 напрямую по spi, там можно смотреть более подробно что не так и живой ли ваш шилд. Из практики убить 2515 почти нереально, я по криворукости "пытался" но не получилось.

Примеров в инете масса. <noindex>Если интересно мои наработки</noindex> могу ответить по ним. И конечно если кто увидит явные косяки буду рад исправить их с вашей помощью.

Там же находится текущая версия платы под которую и пишется прошивка. (Плата 3.1 имеет ошибки, так что если что 3.2 на подходе).


По своей наработке пока борюсь с помехами при подключению аудио модуля для передачи звука по блютусу, уже 2 платы сгорело sad.gif а они медленно идут с али.

Сообщение отредактировал Malishok1452: 13 June 2017 - 10:59

0

#326 Пользователь офлайн   Antoshka_Su 

  • Активный участник
  • PipPipPip
  • Группа: Маздаводы
  • Сообщений: 270
  • Регистрация: 19 August 16

Отправлено 13 June 2017 - 21:09

Кварц действительно на 8 МГц, но я качал и соответствующую библиотеку.
Монитор порта в Ардуино IDE показывает соединение с шилдом ("CAN BUS Shield init ok!").
Как писал выше, на входе SO — мусор какой-то (нет четкого уровня "0", зазубрины, какие-то всплески, которые намного короче импульсов на трех предыдущих контактах).
Прикрепленный файл  AKIP0023_SO_5.jpg (72.32К)
Количество загрузок:: 18
Я считаю такого быть не должно.
На чтение данных тоже шилд настраивал, результат тот же - тишина.
В общем нужно новый шилд заказать с Китая, все руки пока никак не доходят. Просто хочу сделать сразу крупный заказ позиций на 10 у какого-нибудь одного продавца, пока выбираю.
0

#327 Пользователь офлайн   Sanseyis 

  • Новичок
  • Pip
  • Группа: Маздаводы
  • Сообщений: 6
  • Регистрация: 25 December 18

Отправлено 25 February 2019 - 21:43

Всем привет, тема с выводом информации на дисплей ещё актуальна?
0

#328 Пользователь офлайн   ustas 

  • Участник
  • PipPip
  • Группа: Маздаводы
  • Сообщений: 139
  • Регистрация: 19 April 14

Отправлено 25 February 2019 - 22:43

А что именно интересует? wink.gif у меня в машине как поставил - так и работает
0

#329 Пользователь офлайн   alex_new_2030 

  • Новичок
  • Pip
  • Группа: Маздаводы
  • Сообщений: 18
  • Регистрация: 25 September 19

Отправлено 04 November 2019 - 17:23

Приветствую всех!
С недавних пор стал обладателем мазды 5. До этого ездил на прадо 95. С паяльником и программированием МК (pic) дружу, правда не на таком уровне как автор топика. К сожалению дел с avr не имел. В своей мазде уже переделал подсветку щитка и центральной консоли. В прадик собирал себе часы (на OLED дисплее) с функцией напоминания о прохождении очередного ОТ, страховки, тех осмотра. Там я брал информацию о пройденном пробеге на щитке, считал импульсы с датчика скорости. Хочу сделать нечто подобное и на мазде. Но столкнулся с проблемой что сигнала скорости (импульсного) как такового нет. Щиток получает скорость по кан от абс. Читая форум натолкнулся на эту интересную тему. Вот зародилась мысль считывать информацию о пройденном пробеге из CAN шины, а отображать информацию на информационный экран как в этом проекте. Я не на столько хорошо знаком с кан шиной, что бы самостоятельно создать такой проект. Вот хотелось бы немного информационной помощи. Есть ли в кан шине среднескоростной информация о пройденом расстоянии и в каком эта информация виде? Ну если бы уважаемый Ustas поделился бы наработками в этом направлении, то это было бы вообще супер!
0

#330 Пользователь офлайн   ustas 

  • Участник
  • PipPip
  • Группа: Маздаводы
  • Сообщений: 139
  • Регистрация: 19 April 14

Отправлено 17 November 2019 - 17:16

Цитата(alex_new_2030 @ 4.11.2019, 19:23) <{POST_SNAPBACK}>
информацию о пройденном пробеге из CAN шины

Я такую информацию в шине не нашел.

Цитата(alex_new_2030 @ 4.11.2019, 19:23) <{POST_SNAPBACK}>
Ну если бы уважаемый Ustas поделился бы наработками в этом направлении, то это было бы вообще супер!


Прошивку раскрывать не собираюсь, все что хотел рассказать об этом проекте - уже рассказал на этом форуме и на хабре. Больше деталей раскрывать не буду (на самом деле, все исходные данные - есть в этой теме и в статье).

Для себя этот проект официально считаю "закрытым": Мазда5 уехала с новым хозяином.

P.S. осталась ПОСЛЕДНЯЯ плата (держал для себя, как резервную, но не пригодилось).
0

  • (17 Страниц)
  • +
  • « Первая
  • 15
  • 16
  • 17
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

1 человек читают эту тему
0 пользователей, 1 гостей, 0 скрытых пользователей