Протокол обмена данными
-
- Posts: 4657
- Joined: 18 Sep 2013, 01:58
- Your CAR: ВАЗ-21099 1,5л.
- SECU version: official SECU-3i TBZ
- Location: Украина, Павлоград
- Has thanked: 624 times
- Been thanked: 1020 times
- Contact:
Re: Протокол обмена данными
Последний релиз.
60-2/SECU-3iTBZ-v4.9/бенз-газ/ДПДЗ/ДТВ/УДК/ГБО-4/ВЗ.
Отчёт ГБО-4 на карбюратор с SECU-3i - http://secu-3.org/forum/viewtopic.php?f=19&t=1549
Продаю бортовой компьютер - viewtopic.php?p=47182#p47182
Отчёт ГБО-4 на карбюратор с SECU-3i - http://secu-3.org/forum/viewtopic.php?f=19&t=1549
Продаю бортовой компьютер - viewtopic.php?p=47182#p47182
-
- Posts: 4657
- Joined: 18 Sep 2013, 01:58
- Your CAR: ВАЗ-21099 1,5л.
- SECU version: official SECU-3i TBZ
- Location: Украина, Павлоград
- Has thanked: 624 times
- Been thanked: 1020 times
- Contact:
Re: Протокол обмена данными
Продолжаю разбираться как принять данные от СЕКУ.
Есть массив:
Правильно ли так искать начало пакета для датчиков и записывать пакет данных в массив?
Есть массив:
Code: Select all
uint16_t SENSOR_DAT[] = {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26};
Code: Select all
//Функция приёма данных
void USART_Transmit(void)
{
while (!(UCSRA & (1<<RXC))); // Ожидание буфера
if (UDR=0x40)
{
while (!(UCSRA & (1<<RXC))); // Ожидание обуфера
if (UDR=0x71)
{
for (int i=0;i<27;i++) // Присваиваем переменной i значение 0 и выполняем тело цикла и каждый цикл прибавляем по 1 к i
{
while (!(UCSRA & (1<<RXC))); // Ожидание буфера
uint8_t TempH=UDR; // Копируем старший байт из буфера
while (!(UCSRA & (1<<RXC))); // Ожидание буфера
uint8_t TempL=UDR; // Копируем старший байт из буфера
Temp=TempH;
Temp=Temp<<8; // Копируем первые 8 бит сдвинув их влево
Temp=TempL; // Копируем последние 8 бит
SENSOR_DAT[i]=Temp; // Копируем 2 байта (16 бит) данных в массив
}
}
}
else //игнорируем пакет
{}
}
60-2/SECU-3iTBZ-v4.9/бенз-газ/ДПДЗ/ДТВ/УДК/ГБО-4/ВЗ.
Отчёт ГБО-4 на карбюратор с SECU-3i - http://secu-3.org/forum/viewtopic.php?f=19&t=1549
Продаю бортовой компьютер - viewtopic.php?p=47182#p47182
Отчёт ГБО-4 на карбюратор с SECU-3i - http://secu-3.org/forum/viewtopic.php?f=19&t=1549
Продаю бортовой компьютер - viewtopic.php?p=47182#p47182
Re: Протокол обмена данными
Для чего у тебя эта функция, для компьютера или микропроцессора?alvikagal wrote: Правильно ли так искать начало пакета для датчиков и записывать пакет данных в массив?Code: Select all
//Функция приёма данных void USART_Transmit(void) {...
ВАЗ-21093, Солекс, зажигание SUZ v6, дроссель-конденсаторное зажигание, катушка 2111.
-
- Posts: 4657
- Joined: 18 Sep 2013, 01:58
- Your CAR: ВАЗ-21099 1,5л.
- SECU version: official SECU-3i TBZ
- Location: Украина, Павлоград
- Has thanked: 624 times
- Been thanked: 1020 times
- Contact:
Re: Протокол обмена данными
Делаю типа БК для СЕКУ, только вывод данных на экран и всё.
Связь МК-МК.
Это я копипастил из предыдущих уроков, а английский на 0 уровне у меня.
Связь МК-МК.
Это я копипастил из предыдущих уроков, а английский на 0 уровне у меня.
60-2/SECU-3iTBZ-v4.9/бенз-газ/ДПДЗ/ДТВ/УДК/ГБО-4/ВЗ.
Отчёт ГБО-4 на карбюратор с SECU-3i - http://secu-3.org/forum/viewtopic.php?f=19&t=1549
Продаю бортовой компьютер - viewtopic.php?p=47182#p47182
Отчёт ГБО-4 на карбюратор с SECU-3i - http://secu-3.org/forum/viewtopic.php?f=19&t=1549
Продаю бортовой компьютер - viewtopic.php?p=47182#p47182
Re: Протокол обмена данными
Насколько Я понимаю СИ, а Я его практически не знаю, то из функции выхода не будет пока не будет принят весь пакет данных, как мне кажется правильнее вести прием данных в фоновом режиме, и по мере их поступления обрабатывать, так больше свободного времени у МК будет.
ВАЗ-21093, Солекс, зажигание SUZ v6, дроссель-конденсаторное зажигание, катушка 2111.
- STC
- Posts: 13843
- Joined: 30 Apr 2013, 23:41
- Your CAR: AZLK 2140
- SECU version: DIY SECU-3
- Location: North Korea
- Has thanked: 2160 times
- Been thanked: 4335 times
- Contact:
Re: Протокол обмена данными
alvikagal, посмотри тот готовый пример что я скидывал на предыдущих страницам. Там уже все готово для работы в фоновом режиме.
Author of the SECU-3™ project http://SECU-3.org. An open source engine control unit / Ignition control system, (C) 2007.
Клуб проекта в Facebook https://www.facebook.com/groups/secu3club
Клуб проекта ВКонтакте https://vk.com/secu3club (вступаем!)
Клуб проекта в Facebook https://www.facebook.com/groups/secu3club
Клуб проекта ВКонтакте https://vk.com/secu3club (вступаем!)
-
- Posts: 4657
- Joined: 18 Sep 2013, 01:58
- Your CAR: ВАЗ-21099 1,5л.
- SECU version: official SECU-3i TBZ
- Location: Украина, Павлоград
- Has thanked: 624 times
- Been thanked: 1020 times
- Contact:
Re: Протокол обмена данными
Я его смотрел и сделал приём через функцию, позже можно будет и прерывание попробовать.
UART1 я понял как работает, а вот UART2 многое вообще не понял.
Мне сейчас нужно как-то сохранять полученные данные и потом их обрабатывать. Я попробовал через массив, т.к. понимаю. Моего уровня не хватает, чтобы разобраться в исходниках, т.к. не понимаю вообще некоторый код, что он делает.
Проверить полноценно написанную подпрограмму пока не смог, т.к. не получается в Протеусе создать модель Мега644, чтобы с СЕКУ получать пакет данных, а в железе ещё пока нет стенда для испытаний (собираю).
Как например сохранять полученные 8 бит, если переменная 16 бит и писать её сразу в переменную или в массив, как я это сделал?
Спасибо за помощь.
UART1 я понял как работает, а вот UART2 многое вообще не понял.
Мне сейчас нужно как-то сохранять полученные данные и потом их обрабатывать. Я попробовал через массив, т.к. понимаю. Моего уровня не хватает, чтобы разобраться в исходниках, т.к. не понимаю вообще некоторый код, что он делает.
Проверить полноценно написанную подпрограмму пока не смог, т.к. не получается в Протеусе создать модель Мега644, чтобы с СЕКУ получать пакет данных, а в железе ещё пока нет стенда для испытаний (собираю).
Как например сохранять полученные 8 бит, если переменная 16 бит и писать её сразу в переменную или в массив, как я это сделал?
Спасибо за помощь.
60-2/SECU-3iTBZ-v4.9/бенз-газ/ДПДЗ/ДТВ/УДК/ГБО-4/ВЗ.
Отчёт ГБО-4 на карбюратор с SECU-3i - http://secu-3.org/forum/viewtopic.php?f=19&t=1549
Продаю бортовой компьютер - viewtopic.php?p=47182#p47182
Отчёт ГБО-4 на карбюратор с SECU-3i - http://secu-3.org/forum/viewtopic.php?f=19&t=1549
Продаю бортовой компьютер - viewtopic.php?p=47182#p47182
-
- Posts: 279
- Joined: 10 Jul 2013, 09:41
- Your CAR: ВАЗ2106
- SECU version: DIY SECU-3T
- Location: Шебекино
- Has thanked: 1 time
- Been thanked: 123 times
Re: Протокол обмена данными
Начинал БК с графическим индикатором, создал примитив SECU в протезе.alvikagal wrote: создать модель Мега644
Тормозит страшно, вродибы и машина не слабенькая.
На втором листе проц БК на 644, на третьем SECU (на 32) и иммитатор ДПКВ.
Будет от чего оттолкнуться.
- Attachments
-
- 12864.rar
- (165.07 KiB) Downloaded 185 times
ВАЗ 2106 -1.6, 60-2, SECU3-T rev6 mega644 + УВЗ, МЗ 2112-3705010, Солекс-21053-20.
-
- Posts: 4657
- Joined: 18 Sep 2013, 01:58
- Your CAR: ВАЗ-21099 1,5л.
- SECU version: official SECU-3i TBZ
- Location: Украина, Павлоград
- Has thanked: 624 times
- Been thanked: 1020 times
- Contact:
Re: Протокол обмена данными
Полученные данные ГД и ВЗ:
Что с ними нужно сделать? Умножить на шаг 0,5, чтобы получить проценты?
Code: Select all
uint8_t choke_pos;
uint8_t gasdose_pos;
Что с ними нужно сделать? Умножить на шаг 0,5, чтобы получить проценты?
60-2/SECU-3iTBZ-v4.9/бенз-газ/ДПДЗ/ДТВ/УДК/ГБО-4/ВЗ.
Отчёт ГБО-4 на карбюратор с SECU-3i - http://secu-3.org/forum/viewtopic.php?f=19&t=1549
Продаю бортовой компьютер - viewtopic.php?p=47182#p47182
Отчёт ГБО-4 на карбюратор с SECU-3i - http://secu-3.org/forum/viewtopic.php?f=19&t=1549
Продаю бортовой компьютер - viewtopic.php?p=47182#p47182