Широкополосный лямбда контроллер из CJ125

Железо внутри ЭБу и железо снаружи ЭБУ
puff
contributor
contributor
Posts: 2961
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: Широкополосный лямбда контроллер из CJ125

Post by puff »

ха. нарыл кое-что.
тут http://d1.amobbs.com/bbs_upload782111/files_49/ourdev_707565DNEIR9.pdf
на 16-22 странице девайс на cj125 и avr камне.
оттуда есть ссылка вот сюда
https://www.elektormagazine.com/magazine/elektor-201201/19791
а на этой странице есть тычка download, в архиве файл v0.0.bas, в котором в четырёх сотнях строк весь код с комментариями на английском и именами переменных на немецком :lol:
а вообще по имени автора находится его сайт про широкополосные контроллеры, правда, больше на немецком...
Atomic-dm
contributor
contributor
Posts: 80
Joined: Thu Nov 21, 2013 2:43 pm
Location: Saint-Petersburg, Russia

Re: Широкополосный лямбда контроллер из CJ125

Post by Atomic-dm »

puff wrote: по поводу проблемы - традиционный вопрос, а не подделка ли?
может быть конечно, но ведь spi работает нормально, да и частично правильно выдает данные.... хотя конечно все может быть.
Atomic-dm
contributor
contributor
Posts: 80
Joined: Thu Nov 21, 2013 2:43 pm
Location: Saint-Petersburg, Russia

Re: Широкополосный лямбда контроллер из CJ125

Post by Atomic-dm »

puff wrote:в архиве файл v0.0.bas, в котором в четырёх сотнях строк весь код с комментариями на английском и именами переменных на немецком :lol:
хороший источник. я этот фаил уже со всех сторон выучил.

P.S. по этой микрухе даже рабочий код для ардуино есть в плане spi. я пробовал - тоже рабочий.
puff
contributor
contributor
Posts: 2961
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: Широкополосный лямбда контроллер из CJ125

Post by puff »

подмывает сказать: "протоколы испытаний в студию"!
тут вычитал у одного товарища из ефилабс про его приключения - чото там пару месяцев маялся, пока не нашел отвалившийся провод к подогреву датчика, что ли... а глючить начинало после включения прогрева. так что по сто раз перепроверять соединения...
User avatar
AndreyB
Site Admin
Posts: 14327
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Широкополосный лямбда контроллер из CJ125

Post by AndreyB »

Atomic-dm wrote:веду потихоньку разработку ШДК на этой микре. до финала еще далеко,но понимание работы есть.
делаю на stm32
А у тебя какой stm32? 407 или другой? в том смысле, что rusEfi там запуститься сразу или нет?

Я начал страдать в http://rusefi.com/forum/viewtopic.php?f=5&t=209&p=19773#p19770

У тебя как вопрос согласования SPI уровней решился? Или ты добавлял притяжек?
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
puff
contributor
contributor
Posts: 2961
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: Широкополосный лямбда контроллер из CJ125

Post by puff »

а посмотри в самом деле питание на этом cj - там по даташиту минимум 4,75 как я понял. а с дискавери у меня, к примеру, меньше выходит.
Atomic-dm
contributor
contributor
Posts: 80
Joined: Thu Nov 21, 2013 2:43 pm
Location: Saint-Petersburg, Russia

Re: Широкополосный лямбда контроллер из CJ125

Post by Atomic-dm »

Я пока ничего не делал. Чет руки не доходили.

Я делаю на stm32f103 , но а на f407 уж точно все будет работать.

Согласовывать уровни не надо. И так все работает
User avatar
AndreyB
Site Admin
Posts: 14327
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Широкополосный лямбда контроллер из CJ125

Post by AndreyB »

Atomic-dm wrote:Согласовывать уровни не надо. И так все работает
откуда такая уверенность, если у тебя пока ответа по SPI нет? что-то же у мене не работает, осталось угадать, что.
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
Atomic-dm
contributor
contributor
Posts: 80
Joined: Thu Nov 21, 2013 2:43 pm
Location: Saint-Petersburg, Russia

Re: Широкополосный лямбда контроллер из CJ125

Post by Atomic-dm »

Такое ощущение что ты мои посты через строчку читаешь. Я еще в первом посте сказал что обмен по spi я реализовал еще в мае и что сложности в этом вообще нет.
Last edited by Atomic-dm on Mon Aug 01, 2016 8:10 pm, edited 1 time in total.
Atomic-dm
contributor
contributor
Posts: 80
Joined: Thu Nov 21, 2013 2:43 pm
Location: Saint-Petersburg, Russia

Re: Широкополосный лямбда контроллер из CJ125

Post by Atomic-dm »

Я даже функцию для обмена написал. Опять же повторюсь - единственное что сделал это на линию miso резистор повесил чтобы 5в не спалить случайно ножку на stm32. Не уверен что это нужно, но работает и так и без него.
Atomic-dm
contributor
contributor
Posts: 80
Joined: Thu Nov 21, 2013 2:43 pm
Location: Saint-Petersburg, Russia

Re: Широкополосный лямбда контроллер из CJ125

Post by Atomic-dm »

Завтра настройку spi скажу
User avatar
AndreyB
Site Admin
Posts: 14327
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Широкополосный лямбда контроллер из CJ125

Post by AndreyB »

А скажи какие ты пины используешь для spi и какие для ttl? я сделаю прошивку под твой чип если ты сможешь её проверить на своей плате
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
Atomic-dm
contributor
contributor
Posts: 80
Joined: Thu Nov 21, 2013 2:43 pm
Location: Saint-Petersburg, Russia

Re: Широкополосный лямбда контроллер из CJ125

Post by Atomic-dm »

13,14,15 на порту B
12 - CS

проверить свои настройки.
У меня тоже одно время не получалось, пока SPI правильно не настроил. Проверь
Мои рабочие настройки.

Code: Select all

void spi2_ini(void)
{ 
	
	GPIO_InitTypeDef GPIO_InitStructure;
	GPIO_InitTypeDef GPIO_InitSpi;
	
	SPI_InitTypeDef  SPI_InitStructure;
	
	RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB , ENABLE);
	RCC_APB1PeriphClockCmd(RCC_APB1Periph_SPI2, ENABLE);  // SPI2
 	
	GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
	GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
	GPIO_InitStructure.GPIO_Pin = GPIO_Pin_12; 	
	GPIO_Init(GPIOB, &GPIO_InitStructure);
	GPIO_SetBits(GPIOB,GPIO_Pin_12);   // cs 1
	
	GPIO_InitSpi.GPIO_Mode=GPIO_Mode_AF_PP;
	GPIO_InitSpi.GPIO_Speed=GPIO_Speed_50MHz;
	GPIO_InitSpi.GPIO_Pin=GPIO_Pin_13|GPIO_Pin_14|GPIO_Pin_15;
	GPIO_Init(GPIOB, &GPIO_InitSpi);
	
	
	SPI_I2S_DeInit( SPI2 );                 // 
  SPI_StructInit(&SPI_InitStructure);		   
  SPI_InitStructure.SPI_Mode        = SPI_Mode_Master;// SPI Master
  SPI_InitStructure.SPI_Direction   = SPI_Direction_2Lines_FullDuplex; // 2 линии, полный дуплекс
  SPI_InitStructure.SPI_DataSize = SPI_DataSize_8b; // В посылке 8 бит
  SPI_InitStructure.SPI_CPOL = SPI_CPOL_Low; // В неактивном состоянии SCK = 0   SPI_CPOL_High
  SPI_InitStructure.SPI_CPHA = SPI_CPHA_2Edge;// Начало передачи по второму импульсу
  SPI_InitStructure.SPI_NSS = SPI_NSS_Soft;// Программный контроль NSS
	SPI_InitStructure.SPI_BaudRatePrescaler =SPI_BaudRatePrescaler_64; //72/64// Коэффициент предделителя = 2
  SPI_InitStructure.SPI_FirstBit= SPI_FirstBit_MSB;// Первым передавать старший бит
  SPI_Init(SPI2, &SPI_InitStructure);
  SPI_Cmd(SPI2, ENABLE);
	
	GPIO_ResetBits(GPIOB,GPIO_Pin_12);	// передергиваю CS
	GPIO_SetBits(GPIOB,GPIO_Pin_12);	
	
	
	//RCC_APB1Periph_SPI2 		
}

Вообще если очень надо, могу чисто под дискавери код сделать. на работе валяется одна платка, могу поэксперементировать.
User avatar
AndreyB
Site Admin
Posts: 14327
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Широкополосный лямбда контроллер из CJ125

Post by AndreyB »

Аналогично, делители попробовал разные https://svn.code.sf.net/p/rusefi/code/trunk/firmware/hw_layer/sensors/CJ125.cpp
static SPIConfig cj125spicfg = { NULL,
/* HW dependent part.*/
NULL, 0,
SPI_CR1_MSTR |
SPI_CR1_CPHA | SPI_CR1_BR_0 | SPI_CR1_BR_1 };
Atomic-dm wrote:Вообще если очень надо, могу чисто под дискавери код сделать. на работе валяется одна платка, могу поэксперементировать.
Было бы здорово - удостоверился бы, что железо работает.
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
ukr823f
Posts: 18
Joined: Tue Aug 25, 2015 7:53 pm

Re: Широкополосный лямбда контроллер из CJ125

Post by ukr823f »

Я схемотехнику набросал под контроллер ШДК на базе CJ125, надо развести плату, отдать на завод и можно писать код. впринципе все даташиты на него есть, сложного ничего нет. Главное ПИД регулятор набросать под нагреватель, и обработку данных. Насколько я наслышан в SPI там есть бред лёгкий. То ли иневертированный весь сигнал идёт, толи что то в это роде.
Atomic-dm
contributor
contributor
Posts: 80
Joined: Thu Nov 21, 2013 2:43 pm
Location: Saint-Petersburg, Russia

Re: Широкополосный лямбда контроллер из CJ125

Post by Atomic-dm »

russian wrote: Было бы здорово - удостоверился бы, что железо работает.
Тестировалась отладочной плате STM32F4DISCO (stm32f429)
Проект Keil 4
___________
SPI4
PE2 - SCK
PE5 - MISO
PE6 - MOSI
PA4 - CS
___________
USART1
PA9 -TX
PA10-RX
___________

Прошивка два раза в секунду опрашивает CJ125 посылая по SPI байт 0x48.
Если в ответ приходит 0x63 ,значит идентификация работает и SPI работает.
При этом в юарт идет посылка "Spi Good!".
Если корректный ответ не пришел, то в юарт посылается строчка "Spi Error"

У кого нет кейла,тот может просто hex взять

P.S. cj125 должен быть подключен и к 5В и к 12В. короче полностью по питанию. если пин с 12 не подключен, то spi не работает.
Attachments
cj125_stm32f429(disco)_keil_atomic.rar
(1.11 MiB) Downloaded 395 times
Atomic-dm
contributor
contributor
Posts: 80
Joined: Thu Nov 21, 2013 2:43 pm
Location: Saint-Petersburg, Russia

Re: Широкополосный лямбда контроллер из CJ125

Post by Atomic-dm »

кстати почему то долго долбался ... не хотела микруха работать на spi1 поэтому я посмотрел что на этой демоплате уж точно свободно и выбор пал на spi4
вообще что-то с stm32f4 непривычно. привык к stm32f103 :)

P.S. если уж очень надо, то постараюсь для stm32f407 сделать . просто она на работе сейчас занята одним разработчиком и не хотелось у него забирать. Но если надо могу попросить. Хотя думаю кто в теме, тот легко портирует этот проект на любой камень.
User avatar
AndreyB
Site Admin
Posts: 14327
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Широкополосный лямбда контроллер из CJ125

Post by AndreyB »

Спасибо огромное! 429 тоже есть, сейчас буду пробовать :)
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
AndreyB
Site Admin
Posts: 14327
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Широкополосный лямбда контроллер из CJ125

Post by AndreyB »

Atomic-dm wrote:P.S. cj125 должен быть подключен и к 5В и к 12В. короче полностью по питанию. если пин с 12 не подключен, то spi не работает.
у меня ощущение, что это - корень моей проблемы.

Попробовал подключить 12 вольт и схватил коротыш на своей плате - в первый редакции форм-фактор чипа был неправильный, поэтому было насилие паяльником, которое видимо повредило лак рядом. Заказываю новую версию платки, ждать три недели :(
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
Atomic-dm
contributor
contributor
Posts: 80
Joined: Thu Nov 21, 2013 2:43 pm
Location: Saint-Petersburg, Russia

Re: Широкополосный лямбда контроллер из CJ125

Post by Atomic-dm »

russian wrote: Попробовал подключить 12 вольт и схватил коротыш на своей плате
я так месяц назад убил 2 платки правда на f103 и один stlink :) я просто подключил cj-125 к 12В от отдельного источника питания . от 12В шло преобразование на 5В, потом на 3.3В и питало stm32. но дернул меня черт подрубить stlink и заодно взять массу и питание от него(которое шло с ПК). В общем произошел конфликт по питанию. вначале сгорела одна плата. потом я решил проверить еще раз и сгорела вторая плата и stlink.

мораль - надо внимательнее быть.

P.S. stlink в итоге сделал сам. еще одну плату выстановил +заказал в китае 5 шт. и кучу процов.чтоб не париться.
ukr823f
Posts: 18
Joined: Tue Aug 25, 2015 7:53 pm

Re: Широкополосный лямбда контроллер из CJ125

Post by ukr823f »

Наконец то доразвёл плату, в приципе на неделе отправлю плату в изготовление, посмотрим что из этого получиться)
Attachments
2016-08-10_185338.jpg
2016-08-10_185338.jpg (106.19 KiB) Viewed 19183 times
2016-08-10_185324.jpg
2016-08-10_185324.jpg (101.83 KiB) Viewed 19183 times
puff
contributor
contributor
Posts: 2961
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: Широкополосный лямбда контроллер из CJ125

Post by puff »

выглядит симпатично. а зачем в ней столько всего? светодиод? порт усб? кнопка, три хедера, синие штуки, столько корпусов!!! (и никаких креплений)
ukr823f
Posts: 18
Joined: Tue Aug 25, 2015 7:53 pm

Re: Широкополосный лямбда контроллер из CJ125

Post by ukr823f »

puff wrote:выглядит симпатично. а зачем в ней столько всего? светодиод? порт усб? кнопка, три хедера, синие штуки, столько корпусов!!! (и никаких креплений)
Порт USB для прямого подключения к компютеру (USB- CDC)
Светодиод для индикации работы и т.д, кнопка - тестовая, например добавиться какой то функционал - а кнопка уже есть), синие штуки - это электролитические конденсаторы. По корпусу - пока планирую сделать его из оргстекла (прозрачного) методом лазерной резки.
puff
contributor
contributor
Posts: 2961
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: Широкополосный лямбда контроллер из CJ125

Post by puff »

про корпуса - я про многоножки (я так понял, тут с двух сторон плата изображена) - а схемы нет? для лута слишком много переходных отверстий.
к компьютеру-то его с какой целью подключать? одновременно писать показания с разных приборов?
ukr823f
Posts: 18
Joined: Tue Aug 25, 2015 7:53 pm

Re: Широкополосный лямбда контроллер из CJ125

Post by ukr823f »

puff wrote:про корпуса - я про многоножки (я так понял, тут с двух сторон плата изображена) - а схемы нет? для лута слишком много переходных отверстий.
к компьютеру-то его с какой целью подключать? одновременно писать показания с разных приборов?
Ну как для какой цели. Чтобы можно было использовать данный контроллер в замен ШДК Innovate LC1 LC2... Просто много программ работает с этими контроллерами, и грех не попробовать добавить эмуляция. Плата двухсторонняя. Рисовал её, для изготовления на заводе. Из многоножек триггер Шмита 74HC04. сама CJ125, LMV358 для выдачи аналогового . Схему выложу позже, как только удостоверюсь в работоспособности и отсутствии ошибок
Abricos
contributor
contributor
Posts: 849
Joined: Mon Aug 18, 2014 12:32 am
Location: Carteret, NJ 07008

Re: Широкополосный лямбда контроллер из CJ125

Post by Abricos »

мне показалось или на плате свободное место для АтмеГи ... чипа ... и кристал (Crystal Oscillator) для записи и чтеия ЕгО ... афтономный контролер ...
ukr823f
Posts: 18
Joined: Tue Aug 25, 2015 7:53 pm

Re: Широкополосный лямбда контроллер из CJ125

Post by ukr823f »

Abricos wrote:мне показалось или на плате свободное место для АтмеГи ... чипа ... и кристал (Crystal Oscillator) для записи и чтеия ЕгО ... афтономный контролер ...
Показалось. Там как раз стоит STM32F103 и кварц к нему)
Technoman
Posts: 19
Joined: Sat Mar 08, 2014 5:44 pm

Re: Широкополосный лямбда контроллер из CJ125

Post by Technoman »

Неплохо бы на такую плату и хедер на дисплейчик развести, чтоб отдельный будильник не городить в случае надобности. :roll: А так платка красивая. :)
puff
contributor
contributor
Posts: 2961
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: Широкополосный лямбда контроллер из CJ125

Post by puff »

тогда уж хедер на esp8266 + отдельное приложение для того же андроида :-)
Abricos
contributor
contributor
Posts: 849
Joined: Mon Aug 18, 2014 12:32 am
Location: Carteret, NJ 07008

Re: Широкополосный лямбда контроллер из CJ125

Post by Abricos »

Мой совет экранчик делать ...
Телефон должен быть телефоном в отвецтвеный момент какая-нибудь сволочь обязательно позвонит ...
Post Reply