vesago 0 10 июня, 2017 Опубликовано 10 июня, 2017 · Жалоба Друзья, у кого есть опыт работы с данным узлом? Вроде все просто - RAM с 32 битным доступом. Но у меня, если к примеру в основном цикле постоянно читать по адресу 0, гарантированно в дата аборт уходит. IDE - IAR. В файле линкера описал соответствующий сегмент, в проекте объявил массив 32 битных слов в данном сегменте размером 2048/4. Читаю как я говорил по индексу 0. В чем может быть загвоздка? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AVI-crak 0 10 июня, 2017 Опубликовано 10 июня, 2017 · Жалоба Для этой памяти нужно отдельно запускать питание, монитор общего питания, и транслятор уровня. Потому как это очень медленная память, со своим личным стабилизатором, и с очень нежными ячейками памяти - которые мало кушают, и забиваются мусором от любого чиха на линии питания. Перед тем как проц теряет напряжение - нужно успеть отключить транслятор уровня. Иначе содержимое разрушится. Читайте доку. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vesago 0 10 июня, 2017 Опубликовано 10 июня, 2017 · Жалоба На плате батарейка подключена к VBAT. Я вроде как поправил дело. Принудительно задаю тип индекса массива - ансигнед лонг. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AVI-crak 0 10 июня, 2017 Опубликовано 10 июня, 2017 · Жалоба Подключить батарейку мало, нужно запустить стабилизатор питания, транслятор уровня, и монитор питания. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vesago 0 11 июня, 2017 Опубликовано 11 июня, 2017 · Жалоба Транслятор уровня, монитор питания - речь о внешних узлах? В мануале не нашел упоминания про такое. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AVI-crak 0 11 июня, 2017 Опубликовано 11 июня, 2017 · Жалоба UM10211.pdf Искать 4.8.11 Power domains Искать 26.9 Battery RAM Это дока общая для LPC23XX, конкретная реализация зависит от полного названия чипа. Бегло, PVD механизма контроля питания в lpc - нет. В этом случае нужно использовать внешний аппаратный монитор питания. В навороченном варианте - это отдельный чип, в простом - резисторный делитель напряжения питания до стабилизатора чипа, например 5в. Подобрать номиналы до уверенного срабатывания лог уровня на ноге чипа, использовать внешнее прерывание с максимальным приоритетом. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vesago 0 11 июня, 2017 Опубликовано 11 июня, 2017 · Жалоба Спасибо, все понятно. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
gte 6 11 июня, 2017 Опубликовано 11 июня, 2017 · Жалоба UM10211.pdf И что, там написано про "запустить стабилизатор питания, транслятор уровня, и монитор питания"? Что такое транслятор уровня? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AVI-crak 0 11 июня, 2017 Опубликовано 11 июня, 2017 · Жалоба И что, там написано про "запустить стабилизатор питания, транслятор уровня, и монитор питания"? Что такое транслятор уровня? Применимо к кортексу в целом - это запуск резервного домена питания. Домен связан с часами реального времени не только питанием, но и системной шиной. (или наоборот) В lpc это просто один бит, в stm больше движений - но и возможностей по более. Нужно смотреть документацию конкретно на этот узел от lpc, точнее под конкретный чип. Потому как BKPSRAM имеет питание 2,1в, и очень низкую частоту такта. Подать питание на память - это пол дела, транслятор уровня заметно кушает - и его не всегда держат в рабочем режиме. В данном случае транслятор уровня - это разрешение доступа к памяти. Нужен конкретный чип, без xxx. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
gte 6 11 июня, 2017 Опубликовано 11 июня, 2017 · Жалоба Применимо к кортексу в целом - это запуск резервного домена питания. Вы путаете. LPC23xx это не кортекс. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AVI-crak 0 11 июня, 2017 Опубликовано 11 июня, 2017 · Жалоба LPC23xx это не кортекс. Да это вообще не из этого мира. Часть инстала часов реального ремни. int rtc_initialize (void) { /* Enable PCLK to the RTC */ __set_PCONP(PCRTC); /* Start RTC with external XTAL */ RTC_CCR = 0x11; /* Stop PCLK to the RTC to reduce battery power consumption */ __clr_PCONP(PCRTC); return 1; } Я-ж говорил - всего один бит.... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
gte 6 12 июня, 2017 Опубликовано 12 июня, 2017 · Жалоба Я-ж говорил - всего один бит.... Пусть это будет тот самый бит. Но эту рекомендацию- Перед тем как проц теряет напряжение - нужно успеть отключить транслятор уровня. Иначе содержимое разрушится.для этого бита выполнять не надо. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться