реклама на сайте
подробности

 
 
4 страниц V  « < 2 3 4  
Reply to this topicStart new topic
> Контроллеры SiliconLabs, итересуюсь мнением тех, кто пользовался.
O.L.
сообщение May 11 2011, 07:24
Сообщение #46


Частый гость
**

Группа: Свой
Сообщений: 96
Регистрация: 10-06-05
Из: Новосибирск
Пользователь №: 5 890



Цитата(max_ @ May 11 2011, 03:37) *
кристаллы ревизии старше D....

У меня куплена партия кристаллов f930 ревизии с1 и есть немного e3. С точки зрения "подвисания" во время нахождения в sleep разницы не заметил.

Цитата(max_ @ May 11 2011, 03:37) *
спит неделями и ничего при пробуждении не переписываю и непереинициализирую...

Если не секрет, как Вы выполняете переход в sleep? С отключением crossbar-а или нет? Для минимизации потребления в sleep это принципиально. Во всяком случае для меня.
Go to the top of the page
 
+Quote Post
max_
сообщение May 11 2011, 08:28
Сообщение #47


Участник
*

Группа: Свой
Сообщений: 51
Регистрация: 21-07-04
Из: Таганрог
Пользователь №: 348



согласно выше приведенному примеру, кроссбар не трогаю...
Go to the top of the page
 
+Quote Post
Ygrec
сообщение May 11 2011, 10:38
Сообщение #48





Группа: Новичок
Сообщений: 4
Регистрация: 23-11-09
Пользователь №: 53 810



Всем добрый день. Используемый режим работы:
Спящий режим не более 5 минут, затем работа с различной периферией (в зависимости от текущей задачи), снова сон.
Проблема (зависание МК) возникает через время от 2 до 10...14 дней стабильно для контроллеров начиная с ревизии С, и на сейчас используемой ревизии Е. Эррата прочитана и учтена.
Как нюанс - в процессе работы использую различные тактовые сигналы.
Еще успел заметить, что потребление в "нормальном" спящем режиме отличается от потребления при зависании (15 и 30 мкА соотв.)
Go to the top of the page
 
+Quote Post
Harbinger
сообщение May 12 2011, 18:06
Сообщение #49


старший лаборант
******

Группа: Свой
Сообщений: 2 702
Регистрация: 30-09-05
Из: ЮЗЖД
Пользователь №: 9 097



Замечание и парочка вопросов по C8051F99x.
Есть такая программа для облегчения конфигурации периферии силабсов, называется Configuration Wizard. Так вот: порождённому ей (версии 2.90, новее вроде пока нет) коду для конфигурации встроенного прецизионного RC-генератора (регистр OSCICN) верить нельзя. В даташите прописано, что младшие 5 бит этого регистра зарезервированы (явно не указано, для чего), а визард выдаёт OSCICN = 0x8F, т.е. устанавливает 4 младших из них. Последствие - тактовая частота вместо положенных 24,5 МГц составит около 26,25 МГц (установлено экспериментально). Потому - эти биты не трогать: OSCICN |= 0x80.

Теперь пара вопросов. Просьба сильно не пинать, если уже было, просто ткнуть носом - поиск здесь не совсем совершенный.
1. По SmaRTClock. Хоть тресни, не выходит на прерывание по ALARM. Если у кого есть рабочий код инициализации, был бы признателен. Свой, если понадобится, выложу, пока не хочу загромождать. Временно забил на RTC, приспособив таймер 2 для генерации секундных интервалов, но оно некрасиво как-то.
2. По CS0. В даташите явных указаний на эту беду нет, есть только упоминание насчёт того, что начальное значение измеренной ёмкости не равно нулю и зависит от паразитной ёмкости монтажа и т.п. (ну логично). Так вот, при минимальном усилении (CS0MD1=0) оно таки равно нулю, а при максимальном (CS0MD1=7) тоже не совсем правдоподобно; расчётное значение, исходя из топологии платы, около 1,5 пФ, а отдаётся почти 7 пФ. Прямой пропорциональности относительно значения CS0MD1 нет, а вроде ж должна быть... опять же, код выдам, если кто заинтересуется.


--------------------
Китайская комплектация - европейское качество! ;)
Go to the top of the page
 
+Quote Post
zovsilab
сообщение May 13 2011, 06:31
Сообщение #50


Участник
*

Группа: Участник
Сообщений: 17
Регистрация: 3-04-09
Из: УССР
Пользователь №: 47 140



Скорей всего при настройки внутреннего генератора C8051F99x все делается верно. Вообще процесс записи в зарезервированные биты не должна влиять ни на что. Возможно другая частота получается из-за погрешности внутреннего генератора +-2%.


--------------------
Многие вещи нам непонятны не потому, что наши понятия слабы,
а лишь потому, что сии вещи не входят в круг наших понятий.
Go to the top of the page
 
+Quote Post
barabek
сообщение May 13 2011, 11:36
Сообщение #51


Знающий
****

Группа: Свой
Сообщений: 540
Регистрация: 16-08-07
Из: Владивосток
Пользователь №: 29 831



Цитата(Harbinger @ May 13 2011, 04:06) *
1. По SmaRTClock. Хоть тресни, не выходит на прерывание по ALARM. Если у кого есть рабочий код инициализации, был бы признателен. Свой, если понадобится, выложу, пока не хочу загромождать. Временно забил на RTC, приспособив таймер 2 для генерации секундных интервалов, но оно некрасиво как-то.

От 410-го не пойдет? Пробежался поверхностно - вроде модули похожи. Нет - извиняйте sm.gif (К стилю прошу не придераться, писал давно. И расту, по-тихоньку)
Прикрепленные файлы
Прикрепленный файл  RTClock.rar ( 2 килобайт ) Кол-во скачиваний: 39
 
Go to the top of the page
 
+Quote Post
Harbinger
сообщение May 13 2011, 13:23
Сообщение #52


старший лаборант
******

Группа: Свой
Сообщений: 2 702
Регистрация: 30-09-05
Из: ЮЗЖД
Пользователь №: 9 097



Похожи. Спасибо, попробую и так. В 990-х RTC всегда разлочены, записывать RTC0KEY не нужно (якобы??? я поверил и не записывал). Ну и ещё использовал short strobe вместо поллинга занятости - может, там затык.


--------------------
Китайская комплектация - европейское качество! ;)
Go to the top of the page
 
+Quote Post
AndreyS
сообщение May 13 2011, 14:56
Сообщение #53


Местный
***

Группа: Участник
Сообщений: 235
Регистрация: 28-01-05
Из: Санкт-Петербург
Пользователь №: 2 276



Цитата(Harbinger @ May 13 2011, 17:23) *
Похожи. Спасибо, попробую и так. В 990-х RTC всегда разлочены, записывать RTC0KEY не нужно (якобы??? я поверил и не записывал). Ну и ещё использовал short strobe вместо поллинга занятости - может, там затык.


Добрый день.

На всякий случай, решил добавить немного от себя (то же по опыту работы с F410).
Для ALARM прерывания необходимо разрешить работу ALARM в RTC, разрешить работу самого RTC и запустить таймер RTC. В MCU разрешить работу прерывания RTC. Обновлять регистры RTC необходимо с вычитыванием старого содержимого, а то можно выключить прерывание. И еще. Для сброса прерывания необходимо обновить значение ALARM на новое, иначе тут же выйдя из прерывания снова в него попадете (ну или вообще отрубить работу ALARM).

Удачи.


--------------------
Удачи.
Go to the top of the page
 
+Quote Post
Harbinger
сообщение May 14 2011, 02:59
Сообщение #54


старший лаборант
******

Группа: Свой
Сообщений: 2 702
Регистрация: 30-09-05
Из: ЮЗЖД
Пользователь №: 9 097



Цитата(AndreyS @ May 13 2011, 17:56) *
Обновлять регистры RTC необходимо с вычитыванием старого содержимого, а то можно выключить прерывание. И еще. Для сброса прерывания необходимо обновить значение ALARM на новое, иначе тут же выйдя из прерывания снова в него попадете (ну или вообще отрубить работу ALARM).

Вот это интересно... выходит, что т.н. Autoreset использовать в чистом виде не получится?
(Посмотрю-ка ДШ на 410, может, там подробнее... кхм. Нет там Autoreset...)

Цитата(zovsilab @ May 13 2011, 09:31) *
Вообще процесс записи в зарезервированные биты не должна влиять ни на что.

А влияет. И не совсем явное указание в даташите на это есть:
Цитата
Must perform read-modify-write.
- относительно битов 5:0 OSCICN.


--------------------
Китайская комплектация - европейское качество! ;)
Go to the top of the page
 
+Quote Post

4 страниц V  « < 2 3 4
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th July 2025 - 16:33
Рейтинг@Mail.ru


Страница сгенерированна за 0.01443 секунд с 7
ELECTRONIX ©2004-2016