Jump to content

    

RadiatoR

Свой
  • Content Count

    423
  • Joined

  • Last visited

Community Reputation

0 Обычный

About RadiatoR

  • Rank
    Местный
  • Birthday 05/17/1991

Контакты

  • Сайт
    Array
  • ICQ
    Array

Информация

  • Город
    Array

Recent Profile Visitors

2590 profile views
  1. При 1,2в почти все кондеры имеют штатную емкость
  2. Приветствую. Так меньшим или большим? Если у меньших типоразмеров резонанс будет больше...
  3. А где у Xilinx найти хардварный ли контроллер DDR у серии/чипа? В разделе Memory у них только у Zynq* подписано, что он имеет hard memory controller. Ни у одной серии больше такого нет. Или это в целом у них подход реализовывать интерфейсы софтверно? У альтеры нагляднее выглядит таблица характеристик.
  4. PS. Нашел документ AN993 от микрочипа. В нем просто лучшие (sarcasm) диаграммы: В нем видно, что MOSI поднимается незадолго до фронта клока. В моем же случае все не так радужно и MOSI отстает, а точнее идет условно одинаково с фронтом (согласно настройке): Складывается впечатление, что я выбрал староватую память... (
  5. Коллеги, приветствую. На плате установлена SPI eeprom 93LC56BT-I/OT. Не могу понять ее поведение. В ДШ есть следующая временная диаграмма: По ней не совсем ясно по фронту или спаду устанавливаются данные, но по характеристикам Tdis и Tdih кажется, что по фронту. Кроме нее более "точных" диаграмм нет. Далее в ДШ указывается: Instructions, addresses and write data are clocked into the DI pin on the rising edge of the clock. Что я перевожу как "данные защелкиваются на вход DI на фронте". С такой логикой микросхема "правильно" реагирует на запись данных. То есть укладывает DO на землю на 3,96ms в моем случае. Диаграмму не привожу, она как в ДШ. Настройки выставляю стандартные CPHA = 0; CPOL = 0. Но есть проблема - когда я читаю записанные данные у меня выходит странная картина: Я данные защелкиваю на фронте, а еепром на спаде. Из чего я предполагаю, что неправильно трактовал перевод и меняю CPHA на 1. В результате этого у меня пропадает реакция микросхемы на запись. В ДШ есть оговорка: The Start bit is detected by the device if CS and DI are both high with respect to the positive edge of CLK for the first time. Before a Start condition is detected, CS, CLK and DI may change in any combination (except to that of a Start condition), without resulting in any device operation. Это значит, что память ждет условия старта (CS, DI и CLK в 1) и после этого просыпается и начинает работать. У меня на линии с CPHA = 1 ситуация такая: Я подозреваю, что память не успевает увидеть стартовое условие, хотя оно вроде и не нужно, если защелка работает на спаде. Но, возможно, на фронте происходит сдвиг в регистр, а он не срабатывает, т.к. условие старта пропущено... Перед первым битом видно, что MOSI на 0. Пробовал перед этим без CS отправлять в порт 0xFF чтобы MOSI оставалась в 1, но это не помогает, т.к. перед новой передачей MOSI опять сбрасывается в 0. Любые другие вариации CPOL и CPHA к работоспособности не привели (ради интереса уже пробовал). Работал ли кто-нибудь с такой памятью?
  6. Такая галка стоит. Мысль уловил - сделаю принудительное включение MSI. Спасибо за наводку!
  7. Как-то замечал, что при отладке увеличивалась частота ядра/периферии, но особого значения не придал и искать не стал. Сейчас работаю с STM32L011 и наткнулся на такую же ситуацию. Оказалось, что при старте отладчика устанавливаются биты использования HSI, хотя такого в коде нет и по умолчанию я использую MSI, но скорость выставляю 4194 МГц. Поведение следующее: 1. При старте отладки HSI врубается. 2. Если просто включить устройство без включения отладки - все нормально, источник MSI, частота в норме. 3. Если после п.2 подключиться на лету, MSI останется источником. 4. Если после п.3 ресетнуть софтверно проц - установится HSI. Почему так происходит? Может в настройках проекта это где-то есть? У меня стоит MSVS + Visual GDB. Спс. PS. Если прошить без входа в отладчик тоже врубает HSI. То есть MSI остается только после холодного старта.
  8. Попробовал так: ... volatile byte x = 1; while (x) ; volatile byte z = 1; while (z) ; ... В дизасме вижу, что после вайлов код есть и сами вайлы есть. Но с while(x) До while(z) не прыгнул =(. Возможно у меня студия (MSVS + VisualGDB) так не работает. Хотя было бы очень удобно.
  9. Приветствую. А что собственно делает bkpt? И что значит В чем заключаются тормоза? А разве отладчик может перепрыгнуть условие, типа: while(1); while(1);// move to this line frome above Или я не правильно понял? ps. Попробовал -> не смог. Видать не так понял
  10. Покупаю у поставщика, как и обычно, как и остальные компоненты... Вот и сам удивляюсь. Никогда такого не было и вот опять :D...
  11. Вот и у меня 32кГц через раз стартует. То есть дело в проце, не в кварце? Что значит неудачная мелкая модель?
  12. кварцем 32МГц или 32кГц? Я на своей часто замечаю, что падает в ф-ции инициализации LSE (low speed external), стоит FC-135 32.7680KA-A. Порой меняю кварц и начинает работать. Раньше именно этот не использовал и с такого рода проблемами не сталкивался. Вот сижу и не пойму на что грешить - вроде и кварц вещь кондовая, с другой стороны может я чего не знаю? Попробую сменить на другой...
  13. А у вас самописная логика работы или на основе какого-то примера сделана? У меня сейчас есть не решенная проблема - порой не проходит инициализация BLE и процесс повисает в ожидании прихода ответа от M0, но ответ никогда не приходит. Одного конкретного места вповисания в коде нет. На 7 платах работает, на 3 не работает. Непонятно почему. В платах вроде проблем нет, искал, перепаивал - если ошибка появляется, то не пропадает. Не ясно. А код возврата из колбека может быть равен, например, "Ошибка вводимого параметра", что странно, т.к. этот же код на другой плате нормально работает.
  14. Привет. Сам сделал две платы на STM32WB55RE. В двух словах чип не получается даунгрейдить (по крайней мере у меня). Это значит, что если там установлено уже какое-то ПО или даже стек, то установить уровнем ниже не получится - выскочит ошибка. Если установлен стек, то установить можно только стек >= текущей версии. Порядок при установке на новый чип у меня по апноуту: 1.0.2 stm32wb5x_FUS_fw.bin Далее я ставлю light stack. Мне его достаточно и места поменьше. При установке FUS я убираю все галочки (first install, verify, start stack...), а уже при установке самого стека ставлю галку verify, first install. При этом галка start stack... у меня вообще неактивна. Не могу понять почему так, хотя у коллеги на компе активна. . Хотя у меня версия программера посвежее... Хз в общем. В процессе программирования никаких ошибок не вылезает. PS. У меня пляски с бубном начинаются в процессе инициализации BLE и работы с ним. Тут еще нужно порядочно копать внутрь стека, он не маленький. Возможно у меня не согласована нагрузка и чип достаточно умный чтобы это определить. Сам еще не разобрался во всех тонкостях. Проект натянул на пример HeartRate sensor. Как-то работает но от платы к плате не стабильно... =( Кстати, забыл упомянуть важную вещь - между программированием FUS или stack, короче разных файлов я делаю реконнект на программаторе (кнопкой), иначе падает в ошибки. Полагаю процу нужен банальный ресет после программирования.
  15. если емкости при приложенном напряжении будет хватать, то да. в вашем случае скорее всего да.