Форум Микро-Чип
Поиск и заказ электронных компонентов
 

Вернуться   Форум Микро-Чип > Общетехнические вопросы

Общетехнические вопросы Общие вопросы аналоговой и цифровой электроники.

Ответ
 
Опции темы Опции просмотра
Старый 02.04.2019, 23:31   #1
Marat
Senior Member
 
Аватар для Marat
 
Регистрация: 27.03.2007
Адрес: Минск
Сообщений: 835
Вес репутации: 805/63
Marat is a splendid one to beholdMarat is a splendid one to beholdMarat is a splendid one to beholdMarat is a splendid one to beholdMarat is a splendid one to beholdMarat is a splendid one to beholdMarat is a splendid one to behold
По умолчанию MRF89XA, FIFO and SPI...

Приветствую всех.
Несколько лет назад делал на модулях MRF89XAM8A некоторые поделки. Успешно всё работает до сих пор.. но вот потребовалось сделать похожую контрукцию и полез смотреть "исходники"..... и завис. Сижу второй час читаю даташиты и туплю:
Микросхема трансивера имеет один FIFO буфер 64 байта, который используется для приёма/передачи (работаю в пакетном режиме, но не суть..).
По факту наличия в буфере данных у нас есть флажок - IRQ0RXS->nFIFOEMPTY или IRQ0TXST->nFIFOEMPTY. Короче говоря, специально-обученный вывод модуля IRQ0 говорит нам о сотоянии FIFO - пуст или не пуст...
Чтение и запись буфера просходят в режиме Stand-by и выглядят одинаково (ЭТО ВАЖНО!!! Manual - page 25 ) - SCK тактирует всё это дело, MISO и MOSI соответственно гоняют данные. NSS не используется.
И вот тут я чё-то подвис конкретно ->-> для чтения данных буфера я говорю через пин nCSDAT, что буду работать с буфером и должен отправить в модуль (MOSI->MISO) какую-нибудь чепуху, например нули, чтобы начать тактировать шину SPI, а он мне назад (MISO<-MOSI) в этот момент шлёт содержимое FIFO. Но ведь если запись в буфер делается так-же, значит отправленная "чепуха" попадёт в буфер FIFO? И каждый раз считывая байт я буду загонять новый байт в буфер, то есть не вЫчитаю буфер FIFO до нуля никогда? Но этого не происходит... Я считываю нужное количество байт (которое прилетело из эфира) и флажок nFIFOEMPTY говорит о том, что буфер пуст....
Где я ошибаюсь? Почему не происходит постоянного пополнения буфера при чтении, если осциллограммы чтения и записи выглядят по сути одинаково (Manual - page 25 ) и в обоих случаях работы с буфером чип находится в режиме Stand-by/
Ведь с со стороны МКмикрочип SPI регистр SSPBUF я гружу данными, жду окончания передачи и потом читаю его-же, понимая, что это УЖЕ принятые данные (тут всё понятно и предсказуемо) . А вот на другом конце MRF89XA как понимает, что я хочу сделать? Считать накопленные в нём данные, или до-загрузить что-то для передачи? Ведь он заранее не знает, какой режим я включу после работы с буфером.... RX или TX...

http://ww1.microchip.com/downloads/e.../70000622D.pdf
__________________
RTFM.....и будет вам счастье

Последний раз редактировалось Marat; 02.04.2019 в 23:41.
Marat вне форума   Ответить с цитированием
Старый 03.04.2019, 10:21   #2
besogon
Senior Member
 
Регистрация: 12.07.2012
Возраст: 32
Сообщений: 2,171
Вес репутации: 4017/88
besogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond repute
По умолчанию Re: MRF89XA, FIFO and SPI...

Когда работал с этим радиомодулем.
Если я не ошибаюсь, у Вас нет возможности получить одновременно доступ ко всем fifo на чтение и на запись.
В зависимости от состояния, в котором находится микросхема, Вы получаете или доступ к tx fifo, или к доступ к rx fifo.

Радиомодули микрочип это ужас какой-то.
Я работал и с mrf, и rn4020, и с rn4871 - все это бездна ада.

по моему опыту cc110l гораздо лучший выбор, нежели mrf89xa.
besogon вне форума   Ответить с цитированием
Старый 03.04.2019, 17:12   #3
Marat
Senior Member
 
Аватар для Marat
 
Регистрация: 27.03.2007
Адрес: Минск
Сообщений: 835
Вес репутации: 805/63
Marat is a splendid one to beholdMarat is a splendid one to beholdMarat is a splendid one to beholdMarat is a splendid one to beholdMarat is a splendid one to beholdMarat is a splendid one to beholdMarat is a splendid one to behold
По умолчанию Re: MRF89XA, FIFO and SPI...

Я всегда был доволен стилем написания даташитов у Микрочипа. Всё что надо находится за разумное время.
А вот тут что-то глаз замылился, не могу постичь .... или и впрям - недосказали что-то...
__________________
RTFM.....и будет вам счастье
Marat вне форума   Ответить с цитированием
Старый 03.04.2019, 21:24   #4
Marat
Senior Member
 
Аватар для Marat
 
Регистрация: 27.03.2007
Адрес: Минск
Сообщений: 835
Вес репутации: 805/63
Marat is a splendid one to beholdMarat is a splendid one to beholdMarat is a splendid one to beholdMarat is a splendid one to beholdMarat is a splendid one to beholdMarat is a splendid one to beholdMarat is a splendid one to behold
По умолчанию Re: MRF89XA, FIFO and SPI...

Нашёл ответ в даташите - FRWAXS бит который определяет режим Read/Write для буфера FIFO.
Всем спасибо. Вопрос закрыт.
__________________
RTFM.....и будет вам счастье
Marat вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
SPI режим мастер + frame ampersant Продукция MICROCHIP 12 25.03.2017 21:30
PIC24FJ256GB410 + SPI geotox Продукция MICROCHIP 8 14.08.2016 18:56
SPI в PIC24F SergeyKN Продукция MICROCHIP 7 29.09.2010 17:29
SPI интерфейс. PIC16F887 + CC2500 RF module. Cavalryman Вопросы начинающих 45 08.07.2010 18:59
SPI и FIFO в Quartus II Franky Программируемая логика 0 15.12.2009 17:41


Часовой пояс GMT +3, время: 05:07.


Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd. Перевод: zCarot