Views: 5738
AVC LAN – протокол обмена данными мультимедийных систем автомобиля.
Кодирование данных.
При кодировании различаться три типа данных :
- преамбула – её назначение, это сообщение устройствам на шине, что начинается передача данных.
- бит 0 – передача данных 0
- бит 1 – передача данных 1
Преамбула.
Длительность положительного импульса может быть в пределах от 150 us до 171 us, соответственно и меняется длительность отрицательного. Длительность периода находиться в районе 193 us. Для начала измерения длительности всегда используется момент синхронизации от положительного фронта и измерение длительности положительного импульса. Логика преамбулы определения начала передачи данных – это если полученная длительность больше 150 us – то это начало передачи последовательности данных.
Бит 0.
Общая длительность в районе 39-40 us. Правила измерения те же, что и для преамбулы. Бит 0 в такой системе передачи данных является доминирующим. Он имеет приоритет при арбитраже на шине, это позволяет устройствам с меньшим адресом выигрывать арбитраж.
Бит 1.
Значение длительностей могут незначительно отличаться, так отрицательная длительность может быть 18-19 us. А длительность периода в районе до 38 us. Для декодирования можно использовать принцип если длительность положительного импульса больше 27 us значит получен “0”, если меньше “1”.
Формат передачи данных
Количество бит | Длительность us |
Назначение | Описание |
193 | стартовый бит | Задает начало синхронизации данных | |
1 | 40 | тип передачи | 0 – широковещательная передача 1-передача конкретному устройству |
12 | 40*12 | Адрес передающего устройства (ведомого) | |
1 | 40 | Бит паритета | Паритет четности данных адреса |
12 | 40*12 | Адрес приемного устройства (ведущего) | |
1 | 40 | Бит паритета | Паритет четности данных адреса |
1 | 40 | Ответ приемника о получении данных | ACK – 0, NOACK – 1; |
4 | 40*4 | Контроль | Всегда 0xF |
1 | 40 | Бит паритета | Паритет четности. Всегда 0 |
1 | 40 | Ответ приемника о получении данных | ACK – 0, NOACK – 1; |
8 | 40*8 | Количество байт данных в передачи | |
1 | 40 | Бит паритета | |
1 | 40 | Ответ приемника о получении данных | ACK – 0, NOACK – 1; |
8 | 40*8 | Байт данных | |
1 | 40 | Бит паритета | |
1 | 40 | Ответ приемника о получении данных | ACK – 0, NOACK – 1; |
* * * | |||
8 | 40*8 | Байт данных | |
1 | 40 | Бит паритета | |
1 | 40 | Ответ приемника о получении данных | ACK – 0, NOACK – 1; |
ВНИМАНИЕ далее все данные полей команд приводятся в шестнадцатеричном коде.
При широковещательной передачи передающее устройство не контролирует бит ответа от приемника, а приемные устройства его не формируют. Количество байт данных должно соответствовать байту количества передаваемых байт. Широковещательный режим используется устройствами при ответе на команду. В качестве адреса приемника, в широковещательном ответе, всегда указывается 0x1FF. Если это команда управления широковещательная, то в качестве адреса указывается 0xFFF.
Список некоторых стандартных адресов устройств.
Адрес | Имя устройства |
110 | Multi Function Display (MFD) EMV |
118 | EMVN |
120 | AVX |
128 | 1DIN TV |
140 | AVN |
144 | G-Book |
160 | Audio H/U |
178 | Navigation (NAVI) |
17C | MONET |
17D | TEL |
180 | Rr-TV |
190 | Audio H/U |
19D | BT-HF |
1A0 | DVD-Player |
1AC | Camera-C |
1B0 | Rr-TV |
1C0 | Rr-CONT |
1C2 | TV Tuner 2 |
1C4 | Panel |
1C6 | G/W |
1C8 | FM-M-LCD |
1D6 | Clock |
1D8 | CONT-SW/G/W for Trip |
1EC | Body |
1F0 | Radio Tuner |
1F1 | XM Radio |
1F2 | Sirius |
1F4 | RSA |
1F6 | RSE |
230 | TV-Tuner |
238 | DTV |
240 | CD-CH2 |
250 | DVD-CH |
280 | Camera |
360 | CD-CH1 |
3A0 | Mini-Disk CH |
17D | Telephone |
440 | DSP-Amp |
480 | Amplifier |
530 | ETC |
5C8 | MAYDAY |
Некоторые логические адреса устройств
01 | communication ctrl | 58 | navigation ECU | 80 | GPS receiver |
21 | SW | 23 | SW with name | 25 | command SW |
12 | communication | 60 | tuner | 74 | Audio amplifier |
61 | tape deck | 62 | CD | 63 | CD changer |
34 | front passenger monitor | 24 | SW converting | 85 | voice control |
E5 | Trip info | 55 | Bluetooth tel | 56 | information drawing |
5D | Climate ctrl drawing | 5E | Audio drawing | 5F | trip info drawing |
28 | beep dev in HU | 29 | beep via speakers | E0 | climate ctrl dev |
5C | camera |
Примеры команд обмена информацией
Тип команды / ответа | Адрес передатчика | Адрес приемника | Контроль | Длина данных | Данные передачи | |||||||||||||||
Широковещательные сообщения | ||||||||||||||||||||
широковещательная команда(C) | перехода в режим проверки шины | |||||||||||||||||||
0 | 160 | FFF | F | 3 | 0 | 1 | C | |||||||||||||
широковещательная команда(C) | выход из режима проверки шины | |||||||||||||||||||
0 | 160 | FFF | F | 3 | 12 | 1 | 0 | |||||||||||||
широковещательная команда(C) | шина рестарт | |||||||||||||||||||
0 | 160 | FFF | F | 3 | 12 | 1 | 1 | |||||||||||||
широковещательная команда(C) | любое устройство можно использовать | |||||||||||||||||||
0 | 160 | FFF | F | 3 | 12 | 1 | 46 | |||||||||||||
широковещательная команда(C) | ID xx=60,61,62,63… логического устройство используется | |||||||||||||||||||
0 | 160 | FFF | F | 4 | 12 | 1 | 45 | xx | ||||||||||||
широковещательный ответ(C) | хх = частота, уу = 0 – радио выключено, уу = 1 – радио включено | |||||||||||||||||||
0 | 160 | 1FF | F | D | 60 | 31 | F1 | yy | yy | 81 | xx | xx | xx | 81 | 0 | 80 | 0 | |||
широковещательный ответ(C) | AF + REG включить | |||||||||||||||||||
0 | 160 | 1FF | F | D | 60 | 31 | F1 | 1 | 1 | 81 | 0 | 1 | 1 | 81 | 10 | 80 | 0 | |||
широковещательный ответ(C) | ГРОМКОСТЬ vv=0-FF | |||||||||||||||||||
0 | 160 | 1FF | F | F | 74 | 31 | F1 | 90 | vv | 10 | 10 | 10 | 10 | 10 | 0 | 0 | 0 | 3 | 0 | |
широковещательная ответ(C) | БАСС bb=0B-15 : 0B=-5, 10=0, 15=+5 | |||||||||||||||||||
0 | 160 | 1FF | F | F | 74 | 31 | F1 | 90 | vv | 10 | 10 | bb | 10 | 10 | 0 | 0 | 0 | 3 | 0 | |
широковещательная ответ(C) | TREB tt=0B-15 : 0B=-5, 10=0, 15=+5 | |||||||||||||||||||
0 | 160 | 1FF | F | F | 74 | 31 | F1 | 90 | vv | 10 | 10 | 10 | 10 | tt | 0 | 0 | 0 | 3 | 0 | |
широковещательная ответ(C) | FADE ff=0B-15 : 0B=F5, 10=0, 15=R5 | |||||||||||||||||||
0 | 160 | 1FF | F | F | 74 | 31 | F1 | 90 | vv | 10 | ff | 10 | 10 | 10 | 0 | 0 | 0 | 3 | 0 | |
широковещательная ответ(C) | БАЛАНС bb=09-17 : 09=Left7, 10=0, 17=Right7 | |||||||||||||||||||
0 | 160 | 1FF | F | F | 74 | 31 | F1 | 90 | vv | bb | 10 | 10 | 10 | 10 | 0 | 0 | 0 | 3 | 0 | |
широковещательная ответ(C) | КАССЕТА ВСТАВЛЕНА | |||||||||||||||||||
0 | 160 | 1FF | F | 7 | 61 | 31 | F1 | 1 | 4 | 0 | 0 | |||||||||
широковещательный ответ(C) | КАССЕТА ПРОИГРЫВАЕТСЯ | |||||||||||||||||||
0 | 160 | 1FF | F | 7 | 61 | 31 | F1 | 1 | 84 | 0 | 0 | |||||||||
широковещательный ответ(C) | ДОЛБИ ВКЛЮЧЕНО | |||||||||||||||||||
0 | 160 | 1FF | F | 7 | 61 | 31 | F1 | 1 | 84 | 0 | 2 | |||||||||
широковещательный ответ(C) | ПРОПУСТИТЬ | |||||||||||||||||||
0 | 160 | 1FF | F | 7 | 61 | 31 | F1 | 1 | 84 | 40 | 0 | |||||||||
широковещательный ответ(C) | РЕВЕРС | |||||||||||||||||||
0 | 160 | 1FF | F | 7 | 61 | 31 | F1 | 1 | 89 | 0 | 0 | |||||||||
широковещательный ответ(C) | ПЕРЕМОТКА В ПЕРЕД | |||||||||||||||||||
0 | 160 | 1FF | F | 7 | 61 | 31 | F1 | 1 | 88 | 0 | 0 | |||||||||
широковещательный ответ(C) | РЕЖИМ ПОВТОРА | |||||||||||||||||||
0 | 160 | 1FF | F | 7 | 61 | 31 | F1 | 1 | 84 | 10 | 0 | |||||||||
широковещательный ответ(C) | СЛУЧАЙНОЕ ВОСПРОИЗВЕДЕНИЕ ТРЕКОВ | |||||||||||||||||||
0 | 160 | 1FF | F | 7 | 61 | 31 | F1 | 1 | 4 | 10 | 0 | |||||||||
широковещательный ответ(C) | ВЫБРОС КАССЕТЫ | |||||||||||||||||||
0 | 160 | 1FF | F | 7 | 61 | 31 | F1 | 0 | 3 | 0 | 0 | |||||||||
широковещательный ответ(C) | НЕТ КАССЕТЫ | |||||||||||||||||||
0 | 160 | 1FF | F | 7 | 61 | 31 | F1 | 0 | 0 | 0 | 0 | |||||||||
широковещательный ответ(C) | Магнитофон не готов (??) | |||||||||||||||||||
0 | 160 | 1FF | F | 4 | 61 | 31 | 9F | 0 | ||||||||||||
широковещательный ответ(C) | внутренний CD плеер не готов (??) | |||||||||||||||||||
0 | 160 | 1FF | F | B | 62 | 31 | F1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |||||
широковещательный ответ(C) | СТАТУС CD: ss=10-play, ss=80-load, ss=01-open, ss=02=err1, ss=03-wait dd-disc no, tt-track no, mm-play time min., ee-play time sec pp=0-normal, pp=2-disc rand, pp=4-rand,pp=8-disc rep.,pp=10-rep.,pp=20-disc scan, pp=40-scan |
|||||||||||||||||||
1 | 360 | 1FF | F | B | 63 | 31 | F1 | 01 | ss | dd | tt | mm | ee | pp | 80 | |||||
Команды управления конкретному устройству | ||||||||||||||||||||
устройство-устройство (P) | Запрос играть “Beep” dd = 1 – 4 продолжительность. Команда усилителю. | |||||||||||||||||||
1 | 110 | 440 | F | 5 | 0 | 5E | 29 | 60 | dd | |||||||||||
устройство-устройство (P) | Нажать на экране xx,yy – позицию xx=0-FF, yy=0-FF | |||||||||||||||||||
1 | 110 | 178 | F | 8 | 0 | 21 | 24 | 78 | xx | yy | xx | yy | ||||||||
устройство-устройство (P) | БАЛАНС перемещение d-направление d=9C верх, d=9D вниз, r=1-4 относительная позиция. | |||||||||||||||||||
1 | 190 | 440 | F | 5 | 0 | 25 | 74 | d | r | |||||||||||
устройство-устройство (P) | БАЛАНС bb=9-17 | |||||||||||||||||||
1 | 190 | 440 | F | 5 | 0 | 25 | 74 | 91 | bb | |||||||||||
устройство-устройство (P) | ФРОНТ ff=9-17 | |||||||||||||||||||
1 | 190 | 440 | F | 5 | 0 | 25 | 74 | 92 | ff | |||||||||||
устройство-устройство (P) | БАС bb=B-15 | |||||||||||||||||||
1 | 190 | 440 | F | 5 | 0 | 25 | 74 | 93 | bb | |||||||||||
устройство-устройство (P) | СРЕДНИЕ mm=B-15 | |||||||||||||||||||
1 | 190 | 440 | F | 5 | 0 | 25 | 74 | 94 | mm |
Список команд управления усилителем
Описание | Команда | Параметр | ||||||||
Воспроизвести сигнал dd=1-4 длительность | 1 | 110 | 440 | F | 5 | 00 | 5E | 29 | 60 | dd |
Баланс bl = 09 (left) to 17 (right) | 1 | 110 | 440 | F | 5 | 00 | 25 | 74 | 91 | bl |
Фронт fd = 09 (front) to 17 (back) | 1 | 110 | 440 | F | 5 | 00 | 25 | 74 | 92 | fd |
Низкие bs = 0B (min) to 15 (max) | 1 | 110 | 440 | F | 5 | 00 | 25 | 74 | 93 | bs |
Средние md = 0B (min) to 15 (max) | 1 | 110 | 440 | F | 5 | 00 | 25 | 74 | 94 | md |
Высокие tb = 0B (min) to 15 (max) | 1 | 110 | 440 | F | 5 | 00 | 25 | 74 | 95 | tb |
Громкость увеличение vu= 01(min) to 04(max) | 1 | 110 | 440 | F | 5 | 00 | 25 | 74 | 9C | vu |
Громкость уменьшение vd= 01(min) to 04(max) | 1 | 110 | 440 | F | 5 | 00 | 25 | 74 | 9D | vd |
Структура управляющих команд для аудиоусилителя
Тип команды | Адрес передатчика | Адрес приемника | Контроль | Длина данных | Логический адрес передатчика | Логический адрес приемника | Команда | Параметр | |
1 бит | 12+P бит | 12+P+ACK бит | 4+P+ACK бит | 8+P+ACK бит | 8+P+ACK бит | 8+P+ACK бит | 8+P+ACK бит | 8+P+ACK бит | 8+P+ACK бит |
1 | 190 | 440 | F | 5 | 00 | 25 | 74 | 94 | 10 |
Тип команды – 1 – обращение к конкретному устройству, 0 – широковещательная команда, Р-бит паритета формируемый передатчиком, ACK – ответ приёмника о получении данных.
Ответ аудио усилителя
Тип команды | Адрес передатчика | Адрес приемника | Контроль | Длина данных | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 |
71 | 31 | А1 | 90 | УРОВЕНЬ ГРОМКОСТИ | БАЛАНС | ПОЛОЖЕНИЕ ФРОНТА | УРОВЕНЬ НИЗКИХ | УРОВЕНЬ СРЕДНИХ | УРОВЕНЬ ВЫСОКИХ | ||||||||||
Тип команды (или ответа) определяет должен ли приемник отвечать на команду битом ACK, соответственно если передатчик посылает широковещательную команду или приемник широковещательный ответ, он не контролирует ACK .
Стандартная схема подключения драйвера к шине..
Номер вывода | Обозначение | Функция |
1 | S1 | Вход, данные для передачи в шину (логическое ИЛИ с S2) |
2 | R | Выход, данные полученные с шины |
3 | S2 | Вход, данные для передачи в шину (логическое ИЛИ с S1) |
4 | GND | Питание, общий |
5 | BUS (-) | Подключение к шине AVC lan (-) |
6 | BUS (+) | Подключение к шине AVC lan (+) |
7 | Vcc | Питание плюс 5 вольт |
8 | STB | Вход, управление пассивным уровнем сигнала R. Если 1 пассивный низкий уровень, если 0 – пассивный высокий. |
Драйвера используемые в системах HA12187, HA12240fr…
Оборудование для тестирования.
Для изучения шины AVC LAN использовались голова TOYOTA 86120-0C191/60510 и усилитель 86280-60291. Схема подключения:
В схеме указаны, только необходимые подключения для анализа шины.
Для анализа был спроектирован сканер шины на базе платы ИЛЛИССИ (описание будет ниже). Ниже приведем коды управления усилителем (все данные в шестнадцатеричном представлении):
Тип | Master | P | Slave | P | A | Control | P | A | Длина данных |
P | A | ?? | P | A | ?? | P | A | ?? | P | A | Команда | P | A | Параметр | P | A |
1 | 12 | 1 | 12 | 1 | 1 | 4 | 1 | 1 | 8 | 1 | 1 | 8 | 1 | 1 | 8 | 1 | 1 | 8 | 1 | 1 | 8 | 1 | 1 | 8 | 1 | 1 |
Увеличение громкости на 1 | ||||||||||||||||||||||||||
1 | 190 | 440 | F | 5 | 0 | 25 | 74 | 9C | 1 | |||||||||||||||||
Уменьшение громкости на 1 | ||||||||||||||||||||||||||
1 | 190 | 440 | F | 5 | 0 | 25 | 74 | 9D | 1 | |||||||||||||||||
Регулировка низких частот +/- 5 единиц, центр 0x10 | ||||||||||||||||||||||||||
1 | 190 | 440 | F | 5 | 0 | 25 | 74 | 93 | 10 | |||||||||||||||||
Регулировка средних частот +/- 5 единиц, центр 0x10 | ||||||||||||||||||||||||||
1 | 190 | 440 | F | 5 | 0 | 25 | 74 | 94 | 10 | |||||||||||||||||
Регулировка высоких частот +/- 5 единиц, центр 0x10 | ||||||||||||||||||||||||||
1 | 190 | 440 | F | 5 | 0 | 25 | 74 | 95 | 10 | |||||||||||||||||
Регулировка фронта + 7/-7 единиц, центр 0x10 | ||||||||||||||||||||||||||
1 | 190 | 440 | F | 5 | 0 | 25 | 74 | 92 | 10 | |||||||||||||||||
Регулировка баланса +7/-7 единиц, центр 0x10 | ||||||||||||||||||||||||||
1 | 190 | 440 | F | 5 | 0 | 25 | 74 | 91 | 10 |
Параметр – это управляющая величина, например, 0х10 – это значение 0, 0х11 – это значение +1, а 0х1E – это значение -1. 0х190 это физический адрес “головы”, 0х440 – это физический адрес усилителя. 0x25 и 0x74 возможно логические имена устройств соответственно.
Демо-версия сканера, (функции: индикация, перепрограммирование-обновление ПО сканера, запись потока в файл, до запись)
продолжение следует…
Это может быть интересно
- Altium Designer my Libraries, Project templates, System settings by Catcatcat V23.04Views: 227 Смотри как установить и подключить библиотеку тут. V. – 23_04 – Component Database Update. – configuration file name – DXPPreferences1.DXPPrf. – Added two projects for audio amplifier …
- Сумеречное релеViews: 1449 Реле управления освещением, датчик день-ночь – одним словом фотореле для управления освещением или формирования сигнала для системы умный дом о понижении или повышении освещенности относительно заданного уровня. Реле выполнено по классической схеме, конденсаторный блок питания, от сети переменного тока …
- Development Boards PIC18F47Q84Views: 3820 Microchip тішить новими мікроконтролерами. Особливістю цього MCU – це багата інтелектуальна периферія, що дозволяє вирішувати такі завдання на 8 бітних MCU, які неможливо реалізувати на деяких навіть 32 …
- Самый простой индикатор уровня звукового сигналаViews: 6343 Демонстрационный проект создания индикаторов уровня с использованием WS2812B. Изучив этот проект вы сможете самостоятельно изготавливать и конструировать свои индикаторы уровня звукового сигнала. Дополнительно читайте статью Бегущие огни на …
- MAX7219/21 и 8х8 LED дисплеиViews: 923 MAX7219, MAX7221 предназначены для вывода информации на 8 разрядов семисегментного индикатора, но на нем легко организовать вывод на светодиодные индикаторы 8х8. продолжение следует…. Это может быть интересно
- TDA7294 part 2Views: 525 Це друга частина проекту TDA7294, початок дивись тут. Тут ви знайдете повністю проект високоякісного підсилювача на TDA7294, схема, 3D моделі, гербер файли для виготовлення друкованої плати. І звичайно …
- Цифровой тахометр для автомобиля CH-С3300Views: 1902 Тахометр Ch-С3300 предназначен для индикации и контроля оборотов, времени работы и максимальных оборотов развиваемых двигателем во время поездки. Датчиком может использоваться как обычный контактный прерыватель или выход датчика …
- VU Meter Tower ART – part 2Views: 982 Проект – VU Meter Tower ART получил продолжение в своем развитии. Теперь можно заказать набор деталей из акрила для самостоятельной сборки. В проект корпуса внесено целый ряд доработок, …
- Часы-кухонный таймерViews: 2716 Каждая кухня должна иметь кухонный таймер, который позволяет напоминать хозяйке когда проходить определенный промежуток времени. Например, печем пирог, варим яйца… , чтобы не смотреть постоянно на часы, установим таймер и …
- Проект с использованием MCC часть 11Views: 855 Можно несколько облагородить программу вынести наши процедуры обработки нажатия кнопок в отдельные функции. Но вы должны понимать, что это хоть и не значительно, но будет тормозить общую скорость …