• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

JL SoC

BIOS

Active member
Вот сейчас хочу попробовать ещё раз сделать донгл, ну и помимо кода 0x16EF (USB_KEY) ещё протестить коды 0x68AF и 0x6B7C, вроде как один из них должен быть "UART_KEY", а другой видимо "ISP_KEY".
Если видется как диск - то там уарта не будет. Пробуй 0x16EF (USB_KEY)
 

BIOS

Active member
На 695 0x16EF (USB_KEY) не совсем корректно работает. Там по мимо этого еще какое то общение.
Могу скинуть снифф логик анализатором. А 696 (пробовал только 6965E) переводится в бут 0x16EF (USB_KEY).
 

ewogs30

New member
Короче, только что проверил 0x68AF и 0x6B7C, реакции на них нет вообще.
 

ewogs30

New member
Соблюдаете Power Sequence? Там тайминги оч короткие.
Вот тут как раз видимо и было дело, на AC692 у меня всё работало когда я просто вставлял USB кабель, где всегда подано питание.
А с AC696 такое не прокатило (проверял побыстрому).

А сейчас я заделал управление питанием, и теперь всё заработало. (ну тоесть 0x16EF)

AC692_AC696_dongler.jpg
 
  • Like
Реакции: BIOS

BIOS

Active member
Я пока на ардуино не доделал, так и шлю 1011011101111...
Хоть и добавил разные варианты загрузки. Я по USB использую SPDT //
B Еще нюанс - если слишком длинный кабель от донгла к чипу - то не стабильная работа гарантирована... По этому в ориг донгле - сразу штекер от донгла втыкается а прошиваемую плату.
 

ewogs30

New member
Ты код написал на есп32?
Да, на ESP32.

Я по USB использую SPDT
А у меня сигнал донгла и USB от компа (хаб на Terminus FE2.1) напрямую соеденены, всё работает. (но всё таки лучше чтобы он был, у меня там это предусмотрено)
 

SAnCHEz31

New member
Добрый вечер форумчане. Прошу помощи,если такое возможно. Принесли колонку на вот таком чипе.
Колонка сначало не переключала режимы(фм,юзб,карта) а после вообще перестала включатся.Кварц работает,напряжения на проце есть,ничего не греется.Грешу на отлет прошивки. Нашел вот такую инструкцию https://shemaforum.ru/wp-content/uploads/2021/07/proshivka-jl-soc-69xx-1.pdf решил попробовать прошить,перевел в донг ардуиной...теперь вот так в диспетчере...
Безымянный.jpg
начал загрузку по процедуре выше для чипа ас690х выдает ошибку 11 при выполнении open br17
Кто может помочь,буду очень признателен.
 

Вложения

ewogs30

New member
Ну, во первых, это вообще не относится к AC69xx (BR17/BR21/BR23/BR25/etc), здесь какой-то BT15 (что-то из AC41/46?) - поэтому просто так через SDK от AC690N врядли что сделаешь...
 

Alcest

Member
А нет ли возможности налету конфигурировать ноги обсуждаемых чипов? В AC6925A интерфейс I2C подключен к портам PC4 и PC5. В моем случае нужно сделать так, чтобы эти порты сначала работали как GPIO, а потом уже переключались в режим I2C. Такое возможно?
 

Alcest

Member
Решил было, что получится сделать необходимое включением-выключением IIC модуля в AC. Подорвался искать как он отключается, и хренушки, не нашел никаких средств для отключения. Мало того, только сейчас сообразил, что не нашел ничего такого, чем настраивалась бы скорость интерфейса. Похоже, молотит на 400 килогерц. А если потребуется подключить чип не умеющий выше 100 кГц?
 

Alcest

Member
Аха, в референс мануале нашел регистр IIC_CON0 и там бит EN. Попытаюсь через регистры включать-отключать IIC модуль.
 

Alcest

Member
Я его отключаю, а интерфейс I2C все равно работает. По-видимому, при вызове функции записи-чтения IIC бит EN всякий раз устанавливается в 1.
 

Alcest

Member
Значит так, оказалось, что ничего вообще делать не нужно. Для работы с портами как с GPIO просто пишем в них нужное или читаем. Когда надо, чтобы эти же порты стали SDA и SCL, вызываем функцию записи или чтения по I2C и порты сами настраиваются на работу в качестве последовательного интерфейса.
 

Alcest

Member
Проверил сначала с анализатором последовательных протоколов, а потом на реальном чипе с I2C. Чип неудобный, управляется по I2C и SPI, нужный интерфейс выбирается последовательностью логических уровней на SDA и Reset сразу после подачи питания. Ну вот с SDA и были сомнения, как с ним работать. Но все прокатило, сначала он у меня как GPIO работает, выдает нужные уровни сразу после включения, а при обращении к функции iic становится линией SDA интерфейса I2C.

P.S. может кому пригодится - скорость работы I2C определяется задержками в файлах iic.h и iic.c. По умолчанию выставлено delay(30000) что соответствует частоте тактового сигнала SCL около 1,3 килогерц всего.
 
Сверху Снизу