Широкополосный лямбда контроллер из CJ125
Re: Широкополосный лямбда контроллер из CJ125
ха. нарыл кое-что.
тут 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, в котором в четырёх сотнях строк весь код с комментариями на английском и именами переменных на немецком
а вообще по имени автора находится его сайт про широкополосные контроллеры, правда, больше на немецком...
тут 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, в котором в четырёх сотнях строк весь код с комментариями на английском и именами переменных на немецком
а вообще по имени автора находится его сайт про широкополосные контроллеры, правда, больше на немецком...
Re: Широкополосный лямбда контроллер из CJ125
может быть конечно, но ведь spi работает нормально, да и частично правильно выдает данные.... хотя конечно все может быть.puff wrote: по поводу проблемы - традиционный вопрос, а не подделка ли?
Re: Широкополосный лямбда контроллер из CJ125
хороший источник. я этот фаил уже со всех сторон выучил.puff wrote:в архиве файл v0.0.bas, в котором в четырёх сотнях строк весь код с комментариями на английском и именами переменных на немецком
P.S. по этой микрухе даже рабочий код для ардуино есть в плане spi. я пробовал - тоже рабочий.
Re: Широкополосный лямбда контроллер из CJ125
подмывает сказать: "протоколы испытаний в студию"!
тут вычитал у одного товарища из ефилабс про его приключения - чото там пару месяцев маялся, пока не нашел отвалившийся провод к подогреву датчика, что ли... а глючить начинало после включения прогрева. так что по сто раз перепроверять соединения...
тут вычитал у одного товарища из ефилабс про его приключения - чото там пару месяцев маялся, пока не нашел отвалившийся провод к подогреву датчика, что ли... а глючить начинало после включения прогрева. так что по сто раз перепроверять соединения...
- AndreyB
- Site Admin
- Posts: 14347
- Joined: Wed Aug 28, 2013 1:28 am
- Location: Jersey City
- Github Username: rusefillc
- Slack: Andrey B
Re: Широкополосный лямбда контроллер из CJ125
А у тебя какой stm32? 407 или другой? в том смысле, что rusEfi там запуститься сразу или нет?Atomic-dm wrote:веду потихоньку разработку ШДК на этой микре. до финала еще далеко,но понимание работы есть.
делаю на stm32
Я начал страдать в 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
Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
Re: Широкополосный лямбда контроллер из CJ125
а посмотри в самом деле питание на этом cj - там по даташиту минимум 4,75 как я понял. а с дискавери у меня, к примеру, меньше выходит.
Re: Широкополосный лямбда контроллер из CJ125
Я пока ничего не делал. Чет руки не доходили.
Я делаю на stm32f103 , но а на f407 уж точно все будет работать.
Согласовывать уровни не надо. И так все работает
Я делаю на stm32f103 , но а на f407 уж точно все будет работать.
Согласовывать уровни не надо. И так все работает
- AndreyB
- Site Admin
- Posts: 14347
- Joined: Wed Aug 28, 2013 1:28 am
- Location: Jersey City
- Github Username: rusefillc
- Slack: Andrey B
Re: Широкополосный лямбда контроллер из CJ125
откуда такая уверенность, если у тебя пока ответа по SPI нет? что-то же у мене не работает, осталось угадать, что.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
Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
Re: Широкополосный лямбда контроллер из CJ125
Такое ощущение что ты мои посты через строчку читаешь. Я еще в первом посте сказал что обмен по spi я реализовал еще в мае и что сложности в этом вообще нет.
Last edited by Atomic-dm on Mon Aug 01, 2016 8:10 pm, edited 1 time in total.
Re: Широкополосный лямбда контроллер из CJ125
Я даже функцию для обмена написал. Опять же повторюсь - единственное что сделал это на линию miso резистор повесил чтобы 5в не спалить случайно ножку на stm32. Не уверен что это нужно, но работает и так и без него.
Re: Широкополосный лямбда контроллер из CJ125
Завтра настройку spi скажу
- AndreyB
- Site Admin
- Posts: 14347
- Joined: Wed Aug 28, 2013 1:28 am
- Location: Jersey City
- Github Username: rusefillc
- Slack: Andrey B
Re: Широкополосный лямбда контроллер из CJ125
А скажи какие ты пины используешь для 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
Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
Re: Широкополосный лямбда контроллер из CJ125
13,14,15 на порту B
12 - CS
проверить свои настройки.
У меня тоже одно время не получалось, пока SPI правильно не настроил. Проверь
Мои рабочие настройки.
Вообще если очень надо, могу чисто под дискавери код сделать. на работе валяется одна платка, могу поэксперементировать.
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
}
- AndreyB
- Site Admin
- Posts: 14347
- Joined: Wed Aug 28, 2013 1:28 am
- Location: Jersey City
- Github Username: rusefillc
- Slack: Andrey B
Re: Широкополосный лямбда контроллер из CJ125
Аналогично, делители попробовал разные 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
Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
Re: Широкополосный лямбда контроллер из CJ125
Я схемотехнику набросал под контроллер ШДК на базе CJ125, надо развести плату, отдать на завод и можно писать код. впринципе все даташиты на него есть, сложного ничего нет. Главное ПИД регулятор набросать под нагреватель, и обработку данных. Насколько я наслышан в SPI там есть бред лёгкий. То ли иневертированный весь сигнал идёт, толи что то в это роде.
Re: Широкополосный лямбда контроллер из CJ125
Тестировалась отладочной плате STM32F4DISCO (stm32f429)russian wrote: Было бы здорово - удостоверился бы, что железо работает.
Проект 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 398 times
Re: Широкополосный лямбда контроллер из CJ125
кстати почему то долго долбался ... не хотела микруха работать на spi1 поэтому я посмотрел что на этой демоплате уж точно свободно и выбор пал на spi4
вообще что-то с stm32f4 непривычно. привык к stm32f103
P.S. если уж очень надо, то постараюсь для stm32f407 сделать . просто она на работе сейчас занята одним разработчиком и не хотелось у него забирать. Но если надо могу попросить. Хотя думаю кто в теме, тот легко портирует этот проект на любой камень.
вообще что-то с stm32f4 непривычно. привык к stm32f103
P.S. если уж очень надо, то постараюсь для stm32f407 сделать . просто она на работе сейчас занята одним разработчиком и не хотелось у него забирать. Но если надо могу попросить. Хотя думаю кто в теме, тот легко портирует этот проект на любой камень.
- AndreyB
- Site Admin
- Posts: 14347
- Joined: Wed Aug 28, 2013 1:28 am
- Location: Jersey City
- Github Username: rusefillc
- Slack: Andrey B
Re: Широкополосный лямбда контроллер из CJ125
Спасибо огромное! 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
Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
- AndreyB
- Site Admin
- Posts: 14347
- Joined: Wed Aug 28, 2013 1:28 am
- Location: Jersey City
- Github Username: rusefillc
- Slack: Andrey B
Re: Широкополосный лямбда контроллер из CJ125
у меня ощущение, что это - корень моей проблемы.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
Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
Re: Широкополосный лямбда контроллер из CJ125
я так месяц назад убил 2 платки правда на f103 и один stlink я просто подключил cj-125 к 12В от отдельного источника питания . от 12В шло преобразование на 5В, потом на 3.3В и питало stm32. но дернул меня черт подрубить stlink и заодно взять массу и питание от него(которое шло с ПК). В общем произошел конфликт по питанию. вначале сгорела одна плата. потом я решил проверить еще раз и сгорела вторая плата и stlink.russian wrote: Попробовал подключить 12 вольт и схватил коротыш на своей плате
мораль - надо внимательнее быть.
P.S. stlink в итоге сделал сам. еще одну плату выстановил +заказал в китае 5 шт. и кучу процов.чтоб не париться.
Re: Широкополосный лямбда контроллер из CJ125
Наконец то доразвёл плату, в приципе на неделе отправлю плату в изготовление, посмотрим что из этого получиться)
- Attachments
-
- 2016-08-10_185338.jpg (106.19 KiB) Viewed 19689 times
-
- 2016-08-10_185324.jpg (101.83 KiB) Viewed 19689 times
Re: Широкополосный лямбда контроллер из CJ125
выглядит симпатично. а зачем в ней столько всего? светодиод? порт усб? кнопка, три хедера, синие штуки, столько корпусов!!! (и никаких креплений)
Re: Широкополосный лямбда контроллер из CJ125
Порт USB для прямого подключения к компютеру (USB- CDC)puff wrote:выглядит симпатично. а зачем в ней столько всего? светодиод? порт усб? кнопка, три хедера, синие штуки, столько корпусов!!! (и никаких креплений)
Светодиод для индикации работы и т.д, кнопка - тестовая, например добавиться какой то функционал - а кнопка уже есть), синие штуки - это электролитические конденсаторы. По корпусу - пока планирую сделать его из оргстекла (прозрачного) методом лазерной резки.
Re: Широкополосный лямбда контроллер из CJ125
про корпуса - я про многоножки (я так понял, тут с двух сторон плата изображена) - а схемы нет? для лута слишком много переходных отверстий.
к компьютеру-то его с какой целью подключать? одновременно писать показания с разных приборов?
к компьютеру-то его с какой целью подключать? одновременно писать показания с разных приборов?
Re: Широкополосный лямбда контроллер из CJ125
Ну как для какой цели. Чтобы можно было использовать данный контроллер в замен ШДК Innovate LC1 LC2... Просто много программ работает с этими контроллерами, и грех не попробовать добавить эмуляция. Плата двухсторонняя. Рисовал её, для изготовления на заводе. Из многоножек триггер Шмита 74HC04. сама CJ125, LMV358 для выдачи аналогового . Схему выложу позже, как только удостоверюсь в работоспособности и отсутствии ошибокpuff wrote:про корпуса - я про многоножки (я так понял, тут с двух сторон плата изображена) - а схемы нет? для лута слишком много переходных отверстий.
к компьютеру-то его с какой целью подключать? одновременно писать показания с разных приборов?
Re: Широкополосный лямбда контроллер из CJ125
мне показалось или на плате свободное место для АтмеГи ... чипа ... и кристал (Crystal Oscillator) для записи и чтеия ЕгО ... афтономный контролер ...
Re: Широкополосный лямбда контроллер из CJ125
Показалось. Там как раз стоит STM32F103 и кварц к нему)Abricos wrote:мне показалось или на плате свободное место для АтмеГи ... чипа ... и кристал (Crystal Oscillator) для записи и чтеия ЕгО ... афтономный контролер ...
Re: Широкополосный лямбда контроллер из CJ125
Неплохо бы на такую плату и хедер на дисплейчик развести, чтоб отдельный будильник не городить в случае надобности. А так платка красивая.
Re: Широкополосный лямбда контроллер из CJ125
тогда уж хедер на esp8266 + отдельное приложение для того же андроида
Re: Широкополосный лямбда контроллер из CJ125
Мой совет экранчик делать ...
Телефон должен быть телефоном в отвецтвеный момент какая-нибудь сволочь обязательно позвонит ...
Телефон должен быть телефоном в отвецтвеный момент какая-нибудь сволочь обязательно позвонит ...