Page 14 of 15

Re: SECU-64 - порт SECU-3 на mega-64(128)

Posted: 31 Oct 2017, 00:38
by mataor32
извини что долго - аккумулятор подвел.
блин не знаю смеяться или плакать... прошиваю бинарник через менеджер и .... фанфары.... облом, тишина...
работает только бутлоадер с перемычкой :cry:
прошиваю ревизию 1073 (предыдущую) с закомментированным VER_1_3 - менеджер работает

Re: SECU-64 - порт SECU-3 на mega-64(128)

Posted: 31 Oct 2017, 08:44
by Serj_K
Я не могу воспроизвести у себя эту проблему. Предположим, что сбивается скорость обмена или даже вообще работа с UART. А сам блок в машине работает?

Re: SECU-64 - порт SECU-3 на mega-64(128)

Posted: 31 Oct 2017, 09:26
by mataor32
хм, неподумал, сегодня тогда настрою параметры в еепром и попробую

Re: SECU-64 - порт SECU-3 на mega-64(128)

Posted: 31 Oct 2017, 18:52
by mataor32
проверил. внешне - не работает (только горит на постоянку СЕ)
пробовал с ревизией 1073 и параметрами чтобы виделась в менеджере ( вер.1.3 + аиртемп) - СЕ лампа кратковременно загорается и тухнет при подаче питания.

полноценно не получилось проверить - несколько дней назад видать подбило или лм293 или датчик, тогда вернул на ДХ трамблера, сейчас разбираюсь. дожди задолбали

Re: SECU-64 - порт SECU-3 на mega-64(128)

Posted: 04 Dec 2017, 10:57
by mataor32
сорри за такое долгое пропадание - никак не получается пока заняться и добить до конца, думаю на НГ праздниках продолжу

Re: SECU-64 - порт SECU-3 на mega-64(128)

Posted: 10 Jan 2018, 21:28
by mataor32
И снова всем привет.
вчера таки приперло добить проблему..... просидел до 2 ночи, и сегодня таки устранил.
сразу оговорюсь - вместе с поиском ошибок вычищал код от не понадобящихся мне никогда ф-ций и дефайнов - ver_1.3 по умолчанию, FUEL_INJECT, NO_DS, DUI_DNO, PHASE_SENSOR и оба типа и2ц дисплеев вырезал подчистую.
проблем было как минимум 2:
1) если скомпилить ver_1.3 без AIRTEMP_SENS то висло почти на старте программы при первых измерениях. Проблема была в разделе
case ADCI_UBAT://закончено измерение напряжения бортовой сети
ф-ции adc_is_measure_ready
пока не привел к виду

Code: Select all

  case ADCI_UBAT://закончено измерение напряжения бортовой сети
   adc.ubat_value = ADC;
   --adc.temp_cnt;
	//устанавливаем следующий вход АЦП
	if (!adc.temp_cnt) {
	  ADMUX = ADCI_TEMP;	
	  ADCSRA |= (1<<ADSC);
	} else {
		if (adc.measure_all) //
		{	//
			ADMUX = ADCI_ADD_AN1;	//ADCI_KNOCK;	
			ADCSRA |= (1<<ADSC);
		} else {
			ADMUX = ADCI_MAP;	
			adc.sensors_ready = 1;
		}
	}
   break;
то затыкался и не выходил из цикла измерения. Да, переменные АЦП вернул как в оригинале - volatile в структуре.

2. по поводу ошибок по ДПКВ - перепроверил ckps.c с оригиналом. проблема была или с запретом/разрешением прерываний, или же бит флага где-то неправильно выставлялся(сорри что не могу сказать точнее, вначале все прошерстил почти не глядя, а ток потом проверил и увидел результат). Еще в двух местах убрал проверку готовности АЦП данных - в оригинале не было.
В настройках препроцессора компилятора добавил ENABLE_BIT_DEFINITIONS для использования SETBIT/CLEARBIT и проставил с оригинала. по настройкам иара (хз повлияло на что или нет) еще менял С/С++ Сompiler -> Code -> Register utilizations выставил 2 и в настройках оптимизации количество проходов выставил как и в оригинале с 3 на 1.
Во всяком случае сейчас при выставленных резистором 2000 оборотах они плавают в пределах 20-30, а до этого на 300-500 скакало.

Re: SECU-64 - порт SECU-3 на mega-64(128)

Posted: 11 Jan 2018, 03:39
by STC
Cross call optimization лучше вообще выключить. Размер кода возрастет, но выполняться он будет быстрее.

Re: SECU-64 - порт SECU-3 на mega-64(128)

Posted: 16 Jan 2018, 18:26
by Serj_K
mataor32 wrote:2. по поводу ошибок по ДПКВ - перепроверил ckps.c с оригиналом. проблема была или с запретом/разрешением прерываний, или же бит флага где-то неправильно выставлялся(сорри что не могу сказать точнее, вначале все прошерстил почти не глядя, а ток потом проверил и увидел результат). Еще в двух местах убрал проверку готовности АЦП данных - в оригинале не было.
Выложи свой ckps.c сюда. АЦП здесь только к ДД имеет отношение.

Re: SECU-64 - порт SECU-3 на mega-64(128)

Posted: 17 Jan 2018, 09:51
by mataor32
возможно и так, что написанного после полного удаления кода ДД, вышеописанное тоже удалилось.

сегодня вечером выложу то что наворотил :D
также вернул работу шаговика с тест порта, правда отвязать от назначения на выходные ноги - руки не дошло.
по поводу текущей работы - на машине ошибка синхронизации еще ни разу не выскакивала. Полностью все окуклить пока постоянные разъезды не позволяют. Таблицы еще под себя настраивать..... Сейчас дособираю http://secu-3.org/forum/viewtopic.php?f ... &start=250 (правда на atmega328 - ардуинке) - лень корректировать под себя и делать плату....
в режиме имитации выскакивающая ошибка однозначно из-за дрожжания сигнала при работе прерываний - по осциллографу замечательно видно.

Re: SECU-64 - порт SECU-3 на mega-64(128)

Posted: 17 Jan 2018, 23:52
by mataor32
сорь что с задержкой на день, но как и обещал - http://zalil.su/9479207 - решил все файлы скинуть