PCCar.ru - Ваш автомобильный компьютер

Вернуться   PCCar.ru - Ваш автомобильный компьютер > MP3Car ТехИнфа > Общение с машиной

Ответ
 
Опции темы Поиск в этой теме
Старый 21.10.2015, 17:29   #71
T_r_D
Старший Пользователь
 
Регистрация: 03.07.2015
Регион: 77, 97, 99, 177
Сообщений: 372
T_r_D is a jewel in the roughT_r_D is a jewel in the roughT_r_D is a jewel in the rough
По умолчанию

Цитата:
Сообщение от xmetal Посмотреть сообщение
Что это дает?
Склейку битов по идеи должно дать.
Только надо было не 0-4, а 4-0
T_r_D вне форума   Ответить с цитированием
Старый 21.10.2015, 17:51   #72
xmetal
Пользователь
 
Регистрация: 29.07.2015
Регион: 64
Машина: VW Tiguan
Сообщений: 89
xmetal has a brilliant futurexmetal has a brilliant futurexmetal has a brilliant futurexmetal has a brilliant futurexmetal has a brilliant futurexmetal has a brilliant futurexmetal has a brilliant futurexmetal has a brilliant futurexmetal has a brilliant futurexmetal has a brilliant futurexmetal has a brilliant future
По умолчанию

Так они и так склеены. Тебе надо только отбросить не нужное. Чтобы взять первые 5 бит нужно просто сделать следующее: AX = buf[6] & 0x1F;
xmetal вне форума   Ответить с цитированием
Старый 21.10.2015, 19:07   #73
T_r_D
Старший Пользователь
 
Регистрация: 03.07.2015
Регион: 77, 97, 99, 177
Сообщений: 372
T_r_D is a jewel in the roughT_r_D is a jewel in the roughT_r_D is a jewel in the rough
По умолчанию

Н
Цитата:
Сообщение от xmetal Посмотреть сообщение
Так они и так склеены. Тебе надо только отбросить не нужное. Чтобы взять первые 5 бит нужно просто сделать следующее: AX = buf[6] & 0x1F;
Вот! Это то, что нужно!
Спасибо
T_r_D вне форума   Ответить с цитированием
Старый 22.10.2015, 01:27   #74
T_r_D
Старший Пользователь
 
Регистрация: 03.07.2015
Регион: 77, 97, 99, 177
Сообщений: 372
T_r_D is a jewel in the roughT_r_D is a jewel in the roughT_r_D is a jewel in the rough
По умолчанию

Оттестировал.
Всё заработало нормально.
Всем спасибо!
Заработало вот так
AX = buf[6] & 0x1F;



Теперь можно дальше копать что есть к чему.
Дальше продолжу с поисков всех опций меню.
T_r_D вне форума   Ответить с цитированием
Старый 22.10.2015, 08:41   #75
GASCHE
Старший Пользователь
 
Аватар для GASCHE
 
Регистрация: 01.04.2010
Регион: 35
Сообщений: 697
GASCHE is on a distinguished road
По умолчанию

Цитата:
Сообщение от T_r_D Посмотреть сообщение
Заработало вот так
AX = buf[6] & 0x1F;
Удивительно!
GASCHE вне форума   Ответить с цитированием
Старый 22.10.2015, 16:47   #76
T_r_D
Старший Пользователь
 
Регистрация: 03.07.2015
Регион: 77, 97, 99, 177
Сообщений: 372
T_r_D is a jewel in the roughT_r_D is a jewel in the roughT_r_D is a jewel in the rough
По умолчанию

Цитата:
Сообщение от GASCHE Посмотреть сообщение
Удивительно!
Давайте без флейма
T_r_D вне форума   Ответить с цитированием
Старый 26.10.2015, 13:12   #77
T_r_D
Старший Пользователь
 
Регистрация: 03.07.2015
Регион: 77, 97, 99, 177
Сообщений: 372
T_r_D is a jewel in the roughT_r_D is a jewel in the roughT_r_D is a jewel in the rough
По умолчанию

Ещё требуется хелп, а то не соображу.
Получаю по ID 2A5 RDS:

45,69,78,69,82,71,89,45
соответствует -ENERGY- и это ASCII.

Как записать это в переменную в виде символов?
И какого она должна быть типа? String?

Последний раз редактировалось T_r_D; 26.10.2015 в 14:41.
T_r_D вне форума   Ответить с цитированием
Старый 26.10.2015, 16:23   #78
lti1
Старший Пользователь
 
Аватар для lti1
 
Регистрация: 17.01.2010
Возраст: 50
Город: Самара
Регион: 63, 163
Машина: Skoda Octavia A5 FL && Skoda Octavia Tour && ̶F̶F̶3̶
Сообщений: 457
lti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond repute
По умолчанию

Цитата:
Сообщение от T_r_D Посмотреть сообщение
Ещё требуется хелп, а то не соображу.
Получаю по ID 2A5 RDS:

45,69,78,69,82,71,89,45
соответствует -ENERGY- и это ASCII.

Как записать это в переменную в виде символов?
И какого она должна быть типа? String?
Если потом планируете передавать эти данные в винду, можно писать как число, потом отправлять с помощью Serial.write
PHP код:
for (int i=0; i <= 7; i++) Serial.write(buf[i]); 
Если в андройд, то так не подойдет.
lti1 вне форума   Ответить с цитированием
Старый 26.10.2015, 17:16   #79
T_r_D
Старший Пользователь
 
Регистрация: 03.07.2015
Регион: 77, 97, 99, 177
Сообщений: 372
T_r_D is a jewel in the roughT_r_D is a jewel in the roughT_r_D is a jewel in the rough
По умолчанию

Цитата:
Сообщение от lti1 Посмотреть сообщение
Если потом планируете передавать эти данные в винду, можно писать как число, потом отправлять с помощью Serial.write
PHP код:
for (int i=0; i <= 7; i++) Serial.write(buf[i]); 
Если в андройд, то так не подойдет.
Именно в дройд.

Да и вообще хочу в итоге все получаемые параметры записывать в строку и отправлять целой строкой.
Не одной конечно, разбить на группы.
Ну например если активно радио, то отправлять что-то типо
<RADIO 1|1|100.0|1|RDS>
что будет значить что радио включено (RADIO 1), что выбрано как источник радио (1), на частоте 100.0, банд FM1, ну и сообщение от рдс.

Таких сообщений будет несколько по типу данных.
Пока вижу так:
1 Все данные что отображались на экране трипа (пробег, средняя скорость и т.д.)
2 Данные которые отображаются на верхнем дисплее (скорость одометр и т.д)
3 Включено ли радио и если да, то его источник и в зависимости от источника данные (номер трека, время трека или РДС)
4 Если активно какое либо из меню, то данные этого меню (выбранный элемент и значение элемента)
5 Значки дисплея (LOUD, Play,Pause и т.д)
6 Нажатые кнопки. Как показала практика кнопки нажимаемые на магнитоле нужны только частично.

Собственно это позволит полностью заменить дисплей.

Вот только блин не могу ни как найти сообщения о состояние меню.
Те меню что по кнопкам отдельным открываются- понятно, они есть, а вот те меню что при нажатии на кнопку MENU не могу найти!
Да и то, то меню что по кнопке LIST открывается, открывается жутко криво.
Такое впечатление что данные выдаются только во время нажатия кнопки и естественно ардуина их поймать не всегда успевает.
Так что в последствие очень нужно будет аппаратно шилдом убрать не нужные сообщения и может быть это поможет.

Если уж совсем туго с этим всем будет, то собственно данные трипа я достал из шины, а на радио можно и забить.
Тем более что RD4 это полный шлак по приёму даже в городе. Слушать радио не возможно.
Оставлю на крайняк балалайку эту в виде усилителя и всё.
Тем более я заказал уже модуль радио. Хочу его опробовать.
Есть очень большие опасения что ардуины на всё к тому же не хватит.

Последний раз редактировалось T_r_D; 26.10.2015 в 18:43.
T_r_D вне форума   Ответить с цитированием
Старый 26.10.2015, 19:55   #80
lti1
Старший Пользователь
 
Аватар для lti1
 
Регистрация: 17.01.2010
Возраст: 50
Город: Самара
Регион: 63, 163
Машина: Skoda Octavia A5 FL && Skoda Octavia Tour && ̶F̶F̶3̶
Сообщений: 457
lti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond reputelti1 has a reputation beyond repute
По умолчанию

T_r_D, для андойда у меня пока реализовано так:
PHP код:
unsigned code_en[137]={0x20, 0x28, 0x29, 0x2B, 0x2C, 0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4A, 0x4B, 0x4C, 0x4D, 0x4E, 0x4F, 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5A, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7A,
                      
0x0401, 0x0410, 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, 0x0416, 0x0417, 0x0418, 0x0419, 0x041A, 0x041B, 0x041C, 0x041D, 0x041E, 0x041F, 0x0420, 0x0421, 0x0422, 0x0423, 0x0424, 0x0425, 0x0426, 0x0427, 0x0428, 0x0429, 0x042A, 0x042B, 0x042C, 0x042D, 0x042E, 0x042F, 0x0451, 0x0430, 0x0431, 0x0432, 0x0433, 0x0434, 0x0435, 0x0436, 0x0437, 0x0438, 0x0439, 0x043A, 0x043B, 0x043C, 0x043D, 0x043E, 0x043F, 0x0440, 0x0441, 0x0442, 0x0443, 0x0444, 0x0445, 0x0446, 0x0447, 0x0448, 0x0449, 0x044A, 0x044B, 0x044C, 0x044D, 0x044E, 0x044F};
char* en[137]={" ", "(", ")", "+", ",", "-", ".", "/", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", ".", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z",
              
"\u0401", "\u0410", "\u0411", "\u0412", "\u0413", "\u0414", "\u0415", "\u0416", "\u0417", "\u0418", "\u0419", "\u041A", "\u041B", "\u041C", "\u041D", "\u041E", "\u041F", "\u0420", "\u0421", "\u0422", "\u0423", "\u0424", "\u0425", "\u0426", "\u0427", "\u0428", "\u0429", "\u042A", "\u042B", "\u042C", "\u042D", "\u042E", "\u042F", "\u0451", "\u0430", "\u0431", "\u0432", "\u0433", "\u0434", "\u0435", "\u0436", "\u0437", "\u0438", "\u0439", "\u043A", "\u043B", "\u043C", "\u043D", "\u043E", "\u043F", "\u0440", "\u0441", "\u0442", "\u0443", "\u0444", "\u0445", "\u0446", "\u0447", "\u0448", "\u0449", "\u044A", "\u044B", "\u044C", "\u044D", "\u044E", "\u044F"};


for(
byte j=0; j<137; j++)
{ 
 if(
Buf[i]==code_en[j]) Serial.print(en[j]);
} 
\u0*** - это русские буквы в юникоде.
Цитата:
Сообщение от T_r_D Посмотреть сообщение
Вот только блин не могу ни как найти сообщения о состояние меню.
Те меню что по кнопкам отдельным открываются- понятно, они есть, а вот те меню что при нажатии на кнопку MENU не могу найти!
У меня похожая ситуация, только с дисплеем FF3.
Цитата:
Сообщение от T_r_D Посмотреть сообщение
Есть очень большие опасения что ардуины на всё к тому же не хватит.
Arduino Mega 2560
Цитата:
Краткие характеристики

Микроконтроллер ATmega2560
Рабочее напряжение 5В
Входное напряжение (рекомендуемое) 7-12В
Входное напряжение (предельное) 6-20В
Цифровые Входы/Выходы 54 (14 из которых могут работат также как выходы ШИМ)
Аналоговые входы 16
Постоянный ток через вход/выход 40 mA
Постоянный ток для вывода 3.3 В 50 mA
Флеш-память 256 KB (из которых 8 КB используются для загрузчика)
ОЗУ 8 KB
Энергонезависимая память 4 KB
Тактовая частота 16 MHz
lti1 вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.



Часовой пояс GMT +4, время: 17:02.


Работает на vBulletin® версия 3.8.4.
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Перевод: zCarot