neo333 0 15 февраля, 2012 Опубликовано 15 февраля, 2012 · Жалоба Немного прокололись с регистром на младшую часть адреса - для нашей SRAM был нужен "прозрачный" при низком Addres Valid (или как он называется у STM). Мы же вначале поставили тот, что защелкивает (и выставляет данные на выход) по положительному фронту. И словили кучу чудес. При замене на правильный регистр все взлетело. Скажите, пожалуйста, что за такая защелка? С прозрачностью на низком уровне никак не найду. Уже все перечитал: 74хх373 и 573 - прозрачность же на высоком? 74хх374 и 574 - защелкивают по положительному фронту. Остальные регистры-защелки , что нашел, - вариации первых на 16 бит и др. PS. Интерес не праздный, хочу к Discovery на STM32F407V подключить память и опасаюсь граблей с выбором правильных регистров. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 242 18 февраля, 2012 Опубликовано 18 февраля, 2012 · Жалоба А почему всё-таки не SPI? Там вроде до 40МГц обещается. Или такие большие требования к скорости потока? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Prestigio_ST 0 8 июня, 2016 Опубликовано 8 июня, 2016 · Жалоба 3) SRAM к 100-ногому цепляли. И еще три NAND'ины. Немного прокололись с регитром на младшую часть адреса - для нашей SRAM был нужен "прозрачный" при низком Addres Valid (или как он называется у STM). Мы же вначале поставили тот, что защелкивает (и выставляет данные на выход) по положительному фронту. И словили кучу чудес. При замене на правильный регистр все взлетело. 2) ИМХО, должно работать. На остальные вопросы, вроде, уже ответили. А как называется этот регистр защелка с прозрачный при низком значении защелкивающий адрес . Все 573 и 373 по высокому защелкиваются . Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 242 9 июня, 2016 Опубликовано 9 июня, 2016 · Жалоба Вот планирую освобождать FSMC к моменту появления первых данных, а со вторыми работать в промежутках. Скажите, а в других сериях STM можно работать в режиме "multimaster FSMC access"? К стати, откуда эту фразу взяли, в DataSheet'е ее не заметил? Жесть какая. Костыли. Сейчас мучаюсь с тем, что не могу выбрать какой МК использовать. Используйте что-нить из LPC. Зачем мазохизмом с этим FSMC заниматься если он такой кривой? В LPC таких проблем нет - хоть сколько мастеров с внешней памятью работают и DMA ещё параллельно - нет проблем. Есть проект на LPC1788 с кучей параллельных задач и тяжёлыми вычислениями на больших массивах во внешней SDRAM (одна задача читает/пишет через DMA во внешнюю SDRAM, другая читает через DMA из неё же, третья (декодер MP3) читает/пишет туда-же и ещё несколько задач у которых есть данные там же; и значительная часть кода в это же время выполняется из этой же SDRAM) - даже и не заморачивался никогда ни с какими проблемами доступа. Да и вообще - нужна-ли Вам реально параллельная FRAM? Может достаточно SPI-ной? Если надо быстро - можно повесить на quad-SPI. Если надо чтобы была в адресном пространстве CPU - можно повесить на SPIFI. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
esaulenka 7 9 июня, 2016 Опубликовано 9 июня, 2016 · Жалоба Используйте что-нить из LPC. Зачем мазохизмом с этим FSMC заниматься если он такой кривой? Я конечно понимаю, что у Вас с STM какие-то особо личные отношения, с технической частью вопроса никак не связанные. Но справедливости ради, "мазохизм с этим FSMC" был только на самой первой линейке этих процессоров. Уже лет 8 прошло с тех пор, можно смело использовать любую другую линейку STM. Там и другие ошибки поправили, кстати (errata на ту серию - аж на 40 с лишним страниц). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 242 9 июня, 2016 Опубликовано 9 июня, 2016 · Жалоба Уже лет 8 прошло с тех пор, можно смело использовать любую другую линейку STM. Сорри, не распознал некропостера. Посмотрел только на дату последнего :laughing: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SapegoAL 0 10 июня, 2016 Опубликовано 10 июня, 2016 · Жалоба В stm32f407 есть BackUp память. Там 4 килобайта от батарейки часовой. +1 мкА при отключенном питании. Вполне приемлемо. Я для сохранения контекста использую FLASH память. Работал двумя способами. 1. Свал питания. а) Завожу сигнал входного питания, (отделяю диодом от входного накопительного кондёра) на АЦП. Благо в АЦП есть режим типа компаратора, с прерыванием б) В одном устройстве делал даже динамическое определение начала свала (если входное напряжение может меняться в значительных пределах. Например +12/ +24) в) По прерыванию о свале питания, останавливаю работу, отключаю потребляющие цепи (например подсветку дисплея), завершаю незаконченные текущие транзакции по флэш памяти. г) Сохраняю текущее состояние важных переменных (областей памяти) С контрольной суммой. д) Повисаю до выключения / либо рестарта. 2. Текущая работа. а) периодически сохраняю файловым способом важные данные, указывая текущее время сохранки ... б) по свалу (PVD) сохраняю время выключения. в) при подаче питания, ищу последнюю актуальную запись, и восстанавливаюсь по ней. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 242 10 июня, 2016 Опубликовано 10 июня, 2016 · Жалоба В stm32f407 есть BackUp память. Там 4 килобайта от батарейки часовой. +1 мкА при отключенном питании. Вполне приемлемо. Я для сохранения контекста использую FLASH память. Работал двумя способами. 1. Свал питания. а) Завожу сигнал входного питания, (отделяю диодом от входного накопительного кондёра) на АЦП. Благо в АЦП есть режим типа компаратора, с прерыванием ... Пытались как-то делать мы подобным образом (думали отказаться от FRAM). В реальной эксплуатации выявились проблемы: иногда стали происходить потери данных (т.е. вроде была перезагрузка, но сохранения данных не было, так как не было сигнала срабатывания монитора питания). То ли это были перезагрузки из-за каких-то багов в ПО, то ли срабатывания сторожевика, то-ли возникали сигналы сброса из-за аппаратных помех (срабатывания супервизора питания по низкой части (сигнал монитора формировался высокой частью - +12 или +24В, после которого стоял вторичный понижающий DC-DC до 3.3В с супервизором)) то ли ещё чего. Так и не разобрались, так как происходило это очень редко и на столе не проявлялось, а только на реальном объекте. В общем - если будут причины формирования сброса после высоковольтной части, то будут потери данных. В результате отказались от такого решения и вернулись к надёжному решению на FRAM. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SapegoAL 0 10 июня, 2016 Опубликовано 10 июня, 2016 · Жалоба В текущей версии у меня и вариант 1 и вариант 2. Данные восстановятся даже если произойдёт рестарт процессора. Более того, будет осуществлён "догон" на время выключенного состояния, по последним значениям. Диагностируется причина (выключение питания/ рестарт) и выводится сообщение об этом. Прибор выходит из любых висов. Определяю даже количество и частоту рестартов. Мониторю сети, статистику собираю. Пока существенных проблем не наблюдал. Пару лет выпускается. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться