Форум РадиоКот https://radiokot.ru/forum/ |
|
PIC18F2525 аппаратный (MSSP)SPI https://radiokot.ru/forum/viewtopic.php?f=58&t=144504 |
Страница 1 из 1 |
Автор: | EclipsV [ Пт апр 21, 2017 02:19:17 ] |
Заголовок сообщения: | PIC18F2525 аппаратный (MSSP)SPI |
Доброго времени суток.Разбираюсь с аппаратный (MSSP)SPI, до этого использовал только программный, физику процесса знаю.Но вот с аппаратным стопор...Использую MPLAB8.92 и эмулятор MPLAB SIM. Вроде все настраиваю согласно даташиту,но вот в логическом анализаторе ничего нет. Работа в режиме Мастера. Вот сама программа. Спойлерvoid main(void){INTCON=0x00; PORTA=0x00;PORTB=0x00;PORTC=0x00; LATA=0x00;LATB=0x00;LATC=0x00; CMCON=0x07;ADCON1=0x0F; SSPCON1=0x32; TRISA=0x10;TRISB=0x06;TRISC=0x08;// RC3=CLK RC4=SDI RB2=Jm_1 RB1=Jm_2 RB3=Pele RB4=Pele SSPSTAT=0x00; while(1){_delay(3); SSPBUF=0x0F; while(BF==0){_delay(3);} __delay_us(100); } } Есть вопрос, как переключаться между прием/передача и пуск процесса? |
Автор: | КРАМ [ Пт апр 21, 2017 03:21:27 ] |
Заголовок сообщения: | Re: PIC18F2525 аппаратный (MSSP)SPI |
Пересылка в буфер модуля и есть начало передачи. Как и начало приема. Потому что прием и передача в SPI - это одно и то же. И происходят они В ОДНО И ТО ЖЕ ВРЕМЯ. Мастер от слейва отличает лишь формирование клоков. Данными они обмениваются по кольцу. |
Автор: | EclipsV [ Пт апр 21, 2017 03:53:17 ] | ||
Заголовок сообщения: | Re: PIC18F2525 аппаратный (MSSP)SPI | ||
Спасибо, это в принципе понял из даташита.Что одновременно прием и передача на рис.зеленым цветом. Для пуска передачи/приема нужно записать SSPPUF и TRIS bit, красный цвет. Почему в эмуляторе нету движения, понять не могу?...
|
Автор: | Аlex [ Пт апр 21, 2017 09:02:02 ] |
Заголовок сообщения: | Re: PIC18F2525 аппаратный (MSSP)SPI |
А почему бы в железе не проверить ? |
Автор: | КРАМ [ Пт апр 21, 2017 16:09:37 ] |
Заголовок сообщения: | Re: PIC18F2525 аппаратный (MSSP)SPI |
EclipsV писал(а): Спасибо, это в принципе понял из даташита.Что одновременно прием и передача на рис.зеленым цветом. Для пуска передачи/приема нужно записать SSPPUF и TRIS bit, красный цвет. Почему в эмуляторе нету движения, понять не могу?... TRIS должен быть сконфигурирован на клоках как ВЫХОД, то есть быть равен НУЛЮ. |
Автор: | EclipsV [ Сб апр 22, 2017 04:13:50 ] |
Заголовок сообщения: | Re: PIC18F2525 аппаратный (MSSP)SPI |
То есть TRISC и TRISB используемых MSSP сбрасываю в ноль.Хорошо...но почему, то все равно тишина. Через неделю должен новый PICkit3 подойти, в железе посмотрю.Спасибо за помощь! |
Автор: | КРАМ [ Сб апр 22, 2017 13:09:01 ] |
Заголовок сообщения: | Re: PIC18F2525 аппаратный (MSSP)SPI |
У меня такое ощущение, что Вы даташит читаете лишь там, где есть картинки. TRIS означает tri-state - третье состояние пина - отключенный ВЫХОД. Вход при этом присоединен всегда. То есть все входы должны иметь TRIS=1, чтобы их не шунтировал выходной буфер порта, а все выходы должны иметь TRIS=0. И это собственно к модулю SSP отношения не имеет. Это функции ПОРТОВ, которые, естественно, должны соответствовать функциям подключаемых модулей. Кроме того, для пинов с аналоговыми альтернативными функциями нужно отключить эти функции. |
Автор: | EclipsV [ Пн апр 24, 2017 02:16:57 ] |
Заголовок сообщения: | Re: PIC18F2525 аппаратный (MSSP)SPI |
В каком пункте описывается TRIS =>tri-state ? SPI я настраиваю согласно 17.3.3.(ENABLING SPI I/O).Для мастера TRISC(port SPI)=clear, TRISA(port SPI)=set. |
Автор: | EclipsV [ Пн апр 24, 2017 08:40:40 ] |
Заголовок сообщения: | Re: PIC18F2525 аппаратный (MSSP)SPI |
Про расшифровку TRIS, ясно.Я говорил конкретно про RA5.Конфигурацию такую пробовал и эмуляторе MPLAB SIM не работает.Хочу в железе посмотреть. Добавлено after 59 minutes 47 seconds: Спасибо за помощь!Решил освоить протэус...посмотрел в нем,все работает.Надо значит лучше читать доки по MPLAB SIM. |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |