|
2 страниц
1 2 >
|
 |
Ответов
(1 - 19)
|
Jun 29 2015, 06:46
|
Участник

Группа: Участник
Сообщений: 32
Регистрация: 18-11-12
Пользователь №: 74 448

|
Цитата(zombi @ Jun 26 2015, 16:47)  В подробности не вдавался, но судя по картинке Figure 10-1. The clock system, clock sources and clock distribution on page 23. XTAL1 вообще не поступает на RTCSRC. Да нет, поступает. Сравнивал datasheet на A1U, A3U и на всю линейку AU. Разницы не увидел. Например, по Вашей ссылке. Страница 24, пункт 10.3.7 10.3.7 External Clock Sources The XTAL1 and XTAL2 pins can be used to drive an external oscillator, either a quartz crystal or a ceramic resonator. XTAL1 can be used as input for an external clock signal. The TOSC1 and TOSC2 pins is dedicated to driving a 32.768kHz crystal oscillator.
Еще одна ссылка. Страница 7 (там же), Figure 3-1. TOSC идет на Clock Generator. Цитата(zombi @ Jun 26 2015, 16:47)  А TOSCSEL вроде как нету ни у A1U ни у A3U. IAR другого мнения. ;-) Цитата(zombi @ Jun 26 2015, 16:47)  Гораздо интереснее узнать почему работает XMEGA128A1U, а не почему XMEGA256A3U не работает. Да нет. У меня как раз мнение, что A1U работает так, как и описано. А вот A3U работать не хочет.
|
|
|
|
|
Jun 29 2015, 07:41
|
Участник

Группа: Участник
Сообщений: 32
Регистрация: 18-11-12
Пользователь №: 74 448

|
Цитата(zombi @ Jun 29 2015, 09:25)  Что Вам нужно? Запустить проц от TOSC1 или его RTC от XTAL1? Мне нужно запустить RTC от внешнего такта, подключенного к XTAL1. При подключении к PE7 все работает, но в этом случае я не могу использовать SPI с порта Е. А A3U и так имеет всего 3 SPI (в отличие от 6 на A1U), из которых все заняты. PS. Основная проблема отражена на Вашей аватарке.  А переход на A3U - вынужденная мера.
Сообщение отредактировал beard42 - Jun 29 2015, 07:45
|
|
|
|
|
Jun 29 2015, 08:56
|
Участник

Группа: Участник
Сообщений: 32
Регистрация: 18-11-12
Пользователь №: 74 448

|
Цитата(zombi @ Jun 29 2015, 10:01)  не вижу что источником клока для RTC может быть XTAL1. Ну правильно. Источником для RTC может быть TOSC1, который в свою очередь, в зависимости от установленноего TOSCSEL fuse (стр. 31, таблица 4-2) может находиться на XTAL1 или на отдельных пинах (в случае с A3U это PE7/PE6). Как я уже говорил, на A1U все работает и при изменении TOSCSEL RTC либо работает, либо нет. На A3U в независимости от установки TOSCSEL работатет только от PE7. Цитата(zombi @ Jun 29 2015, 10:01)  Я уже смирился и даже не надеюсь на решение проблемы  Судя по последним версиям описаний для A1U, больше 128 в этом корпусе и не будет
|
|
|
|
|
Jun 29 2015, 09:52
|
Участник

Группа: Участник
Сообщений: 32
Регистрация: 18-11-12
Пользователь №: 74 448

|
Цитата(zombi @ Jun 29 2015, 11:10)  У A1U и A3U эти контакты общие по умолчанию? АХЕЗ. Сравниваю DS от A1U и A3U. A1U, стр. 61, Table 33-10. Port Q, TOSC1 на PQ0. Стр. 62, Table 33-11. Port R, XTAL1 на PR1. Никаких сносок/примечаний нет. Единственное место, где TOSC1 и XTAL1 упоминаются вместе это пункт 10.3.7 (стр. 21). 10.3.7 External Clock The XTAL1 and XTAL2 pins can be used to drive an external oscillator, either a quartz crystal or a ceramic resonator. XTAL1 can be used as input for an external clock signal. The TOSC1 and TOSC2 pins is dedicated to driving a 32.768kHz crystal oscillator.
Та же ситуация и с A3U, с той лишь разницей, что порты у A3U другие. PE7 для TOSC1. Пункт 10.3.7 (стр. 24) в точности повторяет A1U. А вот у A4U XTAL1 и TOSC1 изначально расположены на одних и тех же ножках, но стоит примечание (стр. 59) TOSC pins can optionally be moved to PE2/PE3.
При этом в описании порта E никаких упоминаний о TOSC нет. Пункт 10.3.7 (стр. 22) снова идентичен. В общем, я в растерянности. ЗЫ. Кстати, на A4U внешний clock на XTAL1 тоже работатет. С переключением TOSCSEL на A4U я еще не игрался. Если интересно, то могу проверить.
|
|
|
|
|
Jun 29 2015, 11:48
|
Участник

Группа: Участник
Сообщений: 32
Регистрация: 18-11-12
Пользователь №: 74 448

|
Продолжаем. Протестировано ATxmega128A4U. Все работает, как и должно. В AtmelStudio после переключания TOSCSEL на ALTERNATE перестает работать RTC. На другой плате с ATxmega128A3U вне зависимости от установленного TOSCSEL работает только, если внешний clock подключен на PE7. Похоже на проблему именно у A3U. В Errata ничего по этому поводу нет. Попробую на AVRfreaks написать, но с моим английским... Google на нем и то лучше говорит.
|
|
|
|
|
Jun 29 2015, 14:45
|

Гуру
     
Группа: Свой
Сообщений: 2 076
Регистрация: 10-09-08
Пользователь №: 40 106

|
Уж не знаю поможет это Вам или нет, но напишу: Использую xmega128A1U. CPU тактируется от 32 MHz Int. c разрешённым DFLL от ( 32.768kHz crystal oscillator connected to the TOSC pins). Ноги порта PR0 и PR1 (пины 91,92) никуда не подключены. К порту PQ0 и PQ1 (пины 85,86) физически подключен часовой кварц. Какое бы значение бита TOSCSEL в FUSEBYTE2 я не указал иксмега работает штатно часы работают на порту Q. Т.о. я делаю вывод что бита TOSCSEL у нее не существует. Если бы было иначе то мне пришлось бы при одном из состояний TOSCSEL ещё и часовой кварц перепаивать с порта Q на R. Цитата(beard42 @ Jun 26 2015, 13:24)  На XMEGA128A1U тот же код нормально отрабатывает. А не идёт ли случайно у Вас внешний clock от RTC (RV3029) параллельно и на XTAL1 и на TOSC1 при тесте A1U?
|
|
|
|
|
Jun 30 2015, 06:53
|
Участник

Группа: Участник
Сообщений: 32
Регистрация: 18-11-12
Пользователь №: 74 448

|
Цитата(zombi @ Jun 29 2015, 16:45)  А не идёт ли случайно у Вас внешний clock от RTC (RV3029) параллельно и на XTAL1 и на TOSC1 при тесте A1U? Штатно на плате внешний clock от RTC подключен к XTAL1. При тестировании если я переключаю TOSCSEL на ALTERNATE (в IAR или AtmelStudio - без разницы), то часы не инициализируются (ожидает на строке while (RTC_STATUS&RTC_SYNCBUSY_bm)). При переключении назад на XTAL все работает. На A4U и на A3U кроме переключения фьюза, так же перекидывал и соединение. На A4U все работает, как и положено. На A3U только на PE7 ане зависимости от установки TOSCSEL.
|
|
|
|
|
Jun 30 2015, 09:53
|
Участник

Группа: Участник
Сообщений: 32
Регистрация: 18-11-12
Пользователь №: 74 448

|
Цитата(zombi @ Jun 29 2015, 16:45)  Использую xmega128A1U. CPU тактируется от 32 MHz Int. c разрешённым DFLL от (32.768kHz crystal oscillator connected to the TOSC pins). Ноги порта PR0 и PR1 (пины 91,92) никуда не подключены. К порту PQ0 и PQ1 (пины 85,86) физически подключен часовой кварц. Какое бы значение бита TOSCSEL в FUSEBYTE2 я не указал иксмега работает штатно часы работают на порту Q. Т.о. я делаю вывод что бита TOSCSEL у нее не существует. Если бы было иначе то мне пришлось бы при одном из состояний TOSCSEL ещё и часовой кварц перепаивать с порта Q на R. Почитал про DFLL. Насколько я понял, не работающий "контрольный" кварц не влияет на работу. В DS на AU-серию стоит If the PLL or external clock source fails when not being used for the system clock, it is automatically disabled, and the system clock will continue to operate normally.Так что раборающие часы в данном случае - не показатель. IMHO.
|
|
|
|
|
Jul 1 2015, 06:11
|
Участник

Группа: Участник
Сообщений: 32
Регистрация: 18-11-12
Пользователь №: 74 448

|
Цитата(zombi @ Jun 30 2015, 23:35)   При любом TOSCSEL полностью работают и часы и автоподстройка системной частоты от них. Часы с настройками на внешнее тактование у мекня работают не при любом TOSCSEL (по крайней мере на A4U 100%, про A1U на 100% не уверен, но, кажетмя, тоже). Цитата(zombi @ Jun 30 2015, 23:35)  Думаю Вы нашли не неисправность A3U а интересную особенность A1U и A4U. По DS выходит немного наоборот. Либо Atmel забыл в описании A3U что-то изменить/удалить (тогда все встает на свои места). Цитата(zombi @ Jun 30 2015, 23:35)  И ещё вопрос: Вы тестируете работоспособность в реальных чипах или в эмуляторах оных? Естествнно на реальных. Через PDI с JTAG mkII. Тестировано на IAR и AtmelStudio 6.2. Причем у последней "минимальный проект", в котором все только самое необходимое, даже чип на стартовых 2 МГц работает.
|
|
|
|
|
Jul 1 2015, 07:56
|
Участник

Группа: Участник
Сообщений: 32
Регистрация: 18-11-12
Пользователь №: 74 448

|
Проверил. XMEGA128A1U, внешний такт на XTAL1. Не работает при любом значении TOSCSEL. XMEGA128A1U, внешний такт на PQ0. Работает при любом значении TOSCSEL. XMEGA128A4U, внешний такт на XTAL1. Работает в зависимости от TOSCSEL. Теперь все встало на свои места. На плате с A1U была перемычка между XTAL1 и PQ0, отсутствующая на схеме. Поэтому и работало. (тут должен быть смайлик, бьющийся об стенку). Спасибо zombi за помощь.
|
|
|
|
|
Jul 1 2015, 10:10
|
Участник

Группа: Участник
Сообщений: 32
Регистрация: 18-11-12
Пользователь №: 74 448

|
Цитата(zombi @ Jul 1 2015, 10:31)  Опупеть! А я эту перемычку нутром чувствовал. Зомби ж как ни как ...  Я за эту перемычку схемотехника чуть не убил. Это ж надо было додуматься отдавать новую плату со схемой, не соответствующей действительности. Как он до этой перемычки додумался (на обратной стороне платы), добиться не удалось. НО! Новую плату он чертил на основе старой схемы без перемычки, поэтому без зазрения совести повесил такт на XTAL1.
|
|
|
|
|
Jul 1 2015, 13:01
|
Участник

Группа: Участник
Сообщений: 32
Регистрация: 18-11-12
Пользователь №: 74 448

|
Цитата(zombi @ Jul 1 2015, 08:58)  И мне просто интересно, зачем в иксмеге запускать RTC если и так в изделии есть внешняя RV3029? Внутренний RTC генерирует короткие прерывания + используется для синхронизации с внешними устройствами.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|