ser 0 11 февраля, 2013 Опубликовано 11 февраля, 2013 · Жалоба Доброго времени суток! Возникла следующая проблема готовый проект написаный и отлаженный под xmega256a3 понадобилось перенести на xmega256a3u. При этом перестал работать USARTD0, используется только на выход, порт PD3. Отключив USART было выяснено, что прямое управление портом вообще не работает, он глухо в лог.0, единственное на что он реагирует это инвертирование выходного сигнала. Есть подозрение что это может быть из-за модуля USB, но он пока не нужен... В еррате вообще тишина, все документы атмела говорят, что просто записывайте проект даже без перекомпиляции под a3u и все должно работать, хотя и с перекомпиляцей не работает. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ILYAUL 0 11 февраля, 2013 Опубликовано 11 февраля, 2013 · Жалоба Цитата from Atmel AVR1020: Migration from ATxmega256A3/192A3/128A3/64A3 to ATxmega256A3U/192A3U/128A3U/64A3U Introduction This application note is a guide to assist users of Atmel ATxmega256A3/192A3/128A3/64A3 in converting designs to Atmel ATxmega256A3U/192A3U/128A3U/64A3U. For complete device details, always refer to the most recent version of the ATxmega256A3U/192A3U/128A3U/64A3U datasheet and the Atmel® AVR® XMEGA® AU manual. Errata differences between ATxmega256A3/192A3/128A3/64A3 and ATxmega256A3U/192A3U/128A3U/64A3U are not listed in this document, only in the device datasheet. In addition to the differences described in this document, other typical characteristics could be different. Please check the latest datasheet for details. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ser 0 11 февраля, 2013 Опубликовано 11 февраля, 2013 · Жалоба Цитата from Atmel AVR1020: Migration from ATxmega256A3/192A3/128A3/64A3 to ATxmega256A3U/192A3U/128A3U/64A3U к сожалению в даташитах не было найдено ответа на данный вопрос, адреса у регистров не менялись, модули атмел на данный порт не добавлял, на нем возможен выход двух модулей TCD0.OC0D и USARTD0, и это не объясняет почему не работает управление именно PD3, а остальные 50 выводов работают, в том числе и другие модули и без особенностей Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Артём__ 0 11 февраля, 2013 Опубликовано 11 февраля, 2013 · Жалоба Цитата from Atmel AVR1020: Migration from ATxmega256A3/192A3/128A3/64A3 to ATxmega256A3U/192A3U/128A3U/64A3U Кроме опции: Pin mapping of all USART0 can optionally be moved to high nibble of port. различий для usart-ов не видно. Но с чего бы usart0 заремапился в другое место? По умолчанию ремап выключен. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ser 0 11 февраля, 2013 Опубликовано 11 февраля, 2013 · Жалоба да, по умолчанию все ремапы выключены 13.13.14 REMAP – Pin Remap register The pin remap functionality is available for PORTC - PORTF only. Bit 4 – USART0: USART0 Remap Setting this bit to one will move the pin location of USART0 from Px[3:0] to Px[7:4]. но мне кажется что это проблема не модуля, по какой то причине не работает сам порт на который должен выйти усарт. различий REMAP регистр тоже не делает если бы он влиял половина бы не работала Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Артём__ 0 11 февраля, 2013 Опубликовано 11 февраля, 2013 · Жалоба но мне кажется что это проблема не модуля, по какой то причине не работает сам порт на который должен выйти усарт. Может проблема не в xmega, а в плате? Например порт не может 1 выставить на выходе. различий REMAP регистр тоже не делает если бы он влиял половина бы не работала Почему половина? У каждого порта свой ремап. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ser 0 11 февраля, 2013 Опубликовано 11 февраля, 2013 · Жалоба собрано две платы макетных результат на обоих одинаковый, замыканий на землю и на соседние проводники нет, да и лог.1 на порту можно выставить PORTD_PIN3CTRL = PORT_INVEN_bm; но прямая запись в порт значения не работает Почему половина? У каждого порта свой ремап. имею ввиду если бы дефолтное значение влияло на работу то не работал бы еще один уарт например если же рассматривать структурную схему порта то выходная защелка отделена от элемента инвертирующего выход еще одним элементом на который приходит сигнал "OUT Override Enable" он видимо и не дает работать порту 13.8 Alternate Port Functions Most port pins have alternate pin functions in addition to being a general purpose I/O pin. When an alternate function is enabled, it might override the normal port pin function or pin value. This happens when other peripherals that require pins are enabled or configured to use pins. If and how a peripheral will override and use pins is described in the section for that peripheral. но модулей которые могут выйти на это пин всего два и оба отключены, да и структурная схема портов у 256a3 и 256a3u абсолютно одинаковая, как впринципе и основная часть даташита Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
zombi 0 11 февраля, 2013 Опубликовано 11 февраля, 2013 · Жалоба ... говорят, что просто записывайте проект даже без перекомпиляции под a3u и все должно работать, хотя и с перекомпиляцей не работает. C A3 не работал (сразу с A3U начну), а на A1-A1U у меня всё работает и с перекомпиляцией и без оной. Эта програмища формирует на всех пинах порта D моей Xmega256A3U-AU меандр частотой 250kHz. ;begin ser R16 sts (1632),R16 sts (1639),R16 rjmp PC-2 ;end Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ser 0 13 февраля, 2013 Опубликовано 13 февраля, 2013 · Жалоба Проблема решена, все дело оказалось в маленьком различии USART A3 и A3U, ну и невнимательности конечно... XMEGA A MANUAL 21.6.2 Disabling the Transmitter A disabling of the Transmitter will not become effective until ongoing and pending transmissionsare completed, i.e. when the Transmit Shift Register and Transmit Buffer Register do not contain data to be transmitted. When Transmitter is disabled it will no longer override the TxDn pin and the pin direction is set as input. XMEGA AU MANUAL 23.6.2 Disabling the Transmitter A disabling of the transmitter will not become effective until ongoing and pending transmissions are completed; i.e., when the transmit shift register and transmit buffer register do not contain data to be transmitted. When the transmitter is disabled, it will no longer override the TxDn pin, and the pin direction is set as input automatically by hardware, even if it was configured as output by the user. всем спасибо Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ILYAUL 0 13 февраля, 2013 Опубликовано 13 февраля, 2013 · Жалоба Холосо получилось. Класиво. Я с жирного шрифта начал , Вы им и закончили. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
zombi 0 13 февраля, 2013 Опубликовано 13 февраля, 2013 · Жалоба Проблема решена, все дело оказалось в маленьком различии USART A3 и A3U, ну и невнимательности конечно... Дык чего PD3 не работал ??? Обьясни по русски, пожалуйста. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ser 0 14 февраля, 2013 Опубликовано 14 февраля, 2013 · Жалоба Холосо получилось. Класиво. Я с жирного шрифта начал , Вы им и закончили. а я вот ничего холосего и класивого не вижу, если продолжить цитировать тот документ, что Вы начали: Цитата from Atmel AVR1020: Migration from ATxmega256A3/192A3/128A3/64A3 to ATxmega256A3U/192A3U/128A3U/64A3U ATxmega256A3U/192A3U/128A3U/64A3U also includes new configuration options and functions. As far as possible these are implemented as a superset of existing ATxmega256A3/192A3/128A3/64A3 functions, so existing code for these devices will work on the new devices without changing existing configuration or enabling new functions. The new options and functions are listed in the application note for customers who in addition to a pure migration also wish to see an overview to consider use of the new functions. Дык чего PD3 не работал ??? Обьясни по русски, пожалуйста. т.к. программа писалась относительно давно, то немного подзабылось, что она еще и сама управляет этим передатчиком USART, соответственно когда я отключал USART на PD3 при конфигурировании, в остальной программе ничего не менялось... она так же выключала уже выключенный при конфигурировании UART, при этом даже если PD3 был сконфигурирован на выход он становился на вход, со всеми вытекающими... небольшая особенность a3u... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться