• Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.

    Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.

    Если вы у нас впервые, загляните на страницу о форуме и правила – там коротко описано, как задать вопрос так, чтобы быстро получить ответ. Чтобы создавать темы и писать сообщения, сначала зарегистрируйтесь, а затем войдите под своим логином.

    Не знаете, с чего начать? Создайте тему с описанием проблемы – подскажем и при необходимости перенесём её в подходящий раздел.
    Задать вопрос Новые сообщения Как правильно спросить
    Если пришли по старой ссылке со старого Tehnari.ru – вы на нужном месте, просто продолжайте обсуждение.

Попытка передать дамп i2c на Андроид-устройство

Dreamsuefer

Ученик
Регистрация
21 Июл 2018
Сообщения
4
Реакции
0
Баллы
0
Попытка передать дамп i2c на Андроид-устройство

Всем привет!
В своём авто убрал FVD дисплей за торпедо, а на его место примерил андроид планшет.
+ Теперь есть мп3 и навигатор вкупе с андроидом
- не видно как работает климат, расход, выводимые на vfd дисплей.
Опыта в электронике скорее почти нет.
Понимаю немного в программировании.

Сначала я пробовал поставить carpc. Не прижилось. Прицеливал аналоговую камеру на этот vfd и выводил на ЖК экран. Но тоже не прижилось.

Разобрал vfd дисплей. На плате две микросхемы pcf8576ch -драйверы жкд. Почитал про них даташит. Узрел там описание адресации и формирования команд инициализации режима работы и заполнения таблицы в памяти по i2c. Паралельно, ради общего познания, почитывал про Ардуино. И родилась мысль, передать на андроид поток i2c, а уже после дешифрации отрисовать подобный экран на планшете. Осталось проверить.

Приобрел Ардуино мега, нашел код i2c снифера.(github: i2c-sniffer-100kBaud-Arduino-Mega)
Подправил чуть код, чтобы данные шли на блутуз сериал.
Подпаялся к линии sda sdl gnd(vss).
Данные пошли, но скрипт не обнаружил начал и концов передач, засыпало нулями в терминале на телефоне. Я в ступпоре. Что то пропустил или не вник.
Как можно на шине где мастера и слейвы, послушать траффик? Может частота не совпала?
 
Может перерезать дорожки i2c, поставить. А на Ардуино отказаться от сложного кода снифера, использовать библиотеку wire, назначить Ардуино i2c адрес такой же как и у одного из драйверов. И вот сидеть, попробовать получить данные.
 
Авто случаем не опель? А вообще надо сначала глянуть мануал не на контроллер а на vfd на моем коне там все тупо идет подтягиванием + на определенную ногу.
 
Авто случаем не опель? А вообще надо сначала глянуть мануал не на контроллер а на vfd на моем коне там все тупо идет подтягиванием + на определенную ногу.

Спасибо за ответ!
Машина альмера n16.
Думаешь есть шанс найти даташит на экран?
экран вот такой:

Читаем - http://www.tehnari.ru/f8/t32642/
 
Решил переписать снифер. Сторонний собирает данные в кучу, причем данные в один цикл могут задблированными идти, как оно работает - хз.
Нашел временные параметры столбиков сигналов, старт стоп все передачи, функции задержки в мкс. Впервые, с 13 битовые манипуляции использую. Вот для чего нужны конъюнкции и дизюнкции)) Уж не знаю получится ли. Ардино микруха 16мгц, а шина i2c 100кгц. Запас как бы есть, стараюсь без прерываний делать. Данные удалось получить из стороннего снифира, но мусором, раскоментировав строки с raw дата.
Второй вариант, попробовать встать с таким же адресом как и микросхема, но тут сложность - их две. Может быть вариант решения это прижимать линию в 0 тогда все будут ждать, менять адрес на второй и отпускать линию. Но это теория. Как будут себя вести два слейва с одним адресом - это не известно да и не совсем корректно.
Так что, остаётся описать чтение двух первых битов порта Port_c. Он аналоговый и я ещё не знаю, способен ли он работать на 100кгц.
Я уже пробовал собрать байт слово. Но из за косяка в упорядочивании и определении начала передачи - криво вышло.
Думаю пока это самый правильный путь. Собрать слово или несколько, если приходит бит конца передачи - прижимать линию в 0 и прерываться на отправку в блутуз.
 
Назад
Сверху