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

Вернуться   Форум Микро-Чип > Продукция MICROCHIP

Продукция MICROCHIP Технические вопросы по всей продукции Microchip

Ответ
 
Опции темы Опции просмотра
Старый 27.10.2017, 13:17   #1
NSS
Senior Member
 
Аватар для NSS
 
Регистрация: 25.02.2007
Возраст: 47
Сообщений: 882
Вес репутации: 414/52
NSS is just really niceNSS is just really niceNSS is just really niceNSS is just really niceNSS is just really nice
По умолчанию p24hj64gp502 SPI

Всем привет. Даже не знаю как и вопрос то задать... Может я туплю, но ткните меня носом в то место в дейташите на сабж, где написано - какие ноги отданы SPI1 и SPI2... Всё (вроде) перерыл - не нашёл.
__________________
"Ignoramus et ignorabimus..."
NSS вне форума   Ответить с цитированием
Старый 27.10.2017, 13:36   #2
besogon
Senior Member
 
Регистрация: 12.07.2012
Возраст: 30
Сообщений: 1,501
Вес репутации: 3061/65
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: p24hj64gp502 SPI

NSS
11.6
глава 11 (I/O ports), пункт 6.
peripheral pin select. там все написано.
besogon вне форума   Ответить с цитированием
Старый 27.10.2017, 14:16   #3
NSS
Senior Member
 
Аватар для NSS
 
Регистрация: 25.02.2007
Возраст: 47
Сообщений: 882
Вес репутации: 414/52
NSS is just really niceNSS is just really niceNSS is just really niceNSS is just really niceNSS is just really nice
По умолчанию Re: p24hj64gp502 SPI

Ух ты, спасибо. Это мой первый "двадцать четвёртый", поэтому сразу и не понял где искать. Искал в самом начале шита, на третьей странице...

Р.S. "О, сколько нам открытий чудных..."©А.С. Пушкин
__________________
"Ignoramus et ignorabimus..."
NSS вне форума   Ответить с цитированием
Старый 27.10.2017, 14:55   #4
NSS
Senior Member
 
Аватар для NSS
 
Регистрация: 25.02.2007
Возраст: 47
Сообщений: 882
Вес репутации: 414/52
NSS is just really niceNSS is just really niceNSS is just really niceNSS is just really niceNSS is just really nice
По умолчанию Re: p24hj64gp502 SPI

Что то я не всё понял с lock и unlock в PPS. Как это работает?
__________________
"Ignoramus et ignorabimus..."
NSS вне форума   Ответить с цитированием
Старый 27.10.2017, 16:41   #5
besogon
Senior Member
 
Регистрация: 12.07.2012
Возраст: 30
Сообщений: 1,501
Вес репутации: 3061/65
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: p24hj64gp502 SPI

NSS
в pic24 нет режима ядра или механизмов защиты памяти.
вместо этого есть lock/unlock костыль.
костыль lock/unlock запрещает/разрешает настройку pin mapping.

в некоторых случаях предусматривается однократная настройка пинов - определение возможности однократной/многократной сделано через configuration bits.

если не ошибаюсь, где-то есть развернутый документ по функциональности.
besogon вне форума   Ответить с цитированием
Старый 27.10.2017, 16:52   #6
NSS
Senior Member
 
Аватар для NSS
 
Регистрация: 25.02.2007
Возраст: 47
Сообщений: 882
Вес репутации: 414/52
NSS is just really niceNSS is just really niceNSS is just really niceNSS is just really niceNSS is just really nice
По умолчанию Re: p24hj64gp502 SPI

В общем то понятно, но чтобы не накосячить, хотелось бы разобраться в этой системе более полно.
__________________
"Ignoramus et ignorabimus..."
NSS вне форума   Ответить с цитированием
Старый 27.10.2017, 18:23   #7
besogon
Senior Member
 
Регистрация: 12.07.2012
Возраст: 30
Сообщений: 1,501
Вес репутации: 3061/65
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: p24hj64gp502 SPI

NSS
что требуется-то?
у Вас в spi если master в базовом варианте есть 3 выхода и один вход.
нужен mapping вот этого вот всего на ножки.

microchip чтобы Вам навредить распихала mapping так, чтобы одновременно всю функциональность задействовать было невозможно, а расположение - плохим.

Вам нужно посмотреть, что Вам нужно и распихать функциональность по ножкам с помощью pps crossbar.

пример для pic32mx
Код:
static inline __attribute__((always_inline)) void pps_init_receiver(void)
{
	/**
	 * spi1
	 * sck1		- rb14
	 * sdo1		- rb13
	 * sdi1		- rb11
	 */
	pic32mx_pps_input->sdi1r = 0b0011;
	pic32mx_pps_output->rpb13r = 0b0011;

	/*
	 * int
	 * int1		- rb10
	 * int3		- rc8
	 */
	pic32mx_pps_input->int1r = 0b0011;
	pic32mx_pps_input->int3r = 0b0110;

	/**
	 * pwm
	 * oc1		- rb7 led pwm RED
	 * oc2		- rb8 led pwm GREEN
	 * oc3		- rb9 led pwm BLUE
	 * oc4		- rb6 external indicator
	 * oc5		- rc3 vibro
	 */
	pic32mx_pps_output->rpb7r = 0b0101;
	pic32mx_pps_output->rpb8r = 0b0101;
	pic32mx_pps_output->rpb9r = 0b0101;
	pic32mx_pps_output->rpb6r = 0b0101;
	pic32mx_pps_output->rpc3r = 0b0101;

	/**
	 * spi2 i2s left-justified
	 * sck2		- rb15 (dont have pps)
	 * ss2		- rb10 LRCK
	 * sdo2		- rb11 DACDAT
	 * sdi2		- no connect
	 */
	pic32mx_pps_output->rpc9r = 0b0100;
	pic32mx_pps_output->rpa1r = 0b0100;
		\
	/**
	 * uart 
	 * rb2 - uart1 rx
	 * rb3 - uart1 tx
	 */
	pic32mx_pps_input->u1rxr = 0b0100;
	pic32mx_pps_output->rpb3r = 0b0001;

	pic32mx_porta->trisclr = 0xffffffff;
	pic32mx_portb->trisclr = 0xffffffff;
	pic32mx_portc->trisclr = 0xffffffff;
}
besogon вне форума   Ответить с цитированием
Старый 27.10.2017, 18:39   #8
NSS
Senior Member
 
Аватар для NSS
 
Регистрация: 25.02.2007
Возраст: 47
Сообщений: 882
Вес репутации: 414/52
NSS is just really niceNSS is just really niceNSS is just really niceNSS is just really niceNSS is just really nice
По умолчанию Re: p24hj64gp502 SPI

Да нет, с функциональным назначением PPS всё понятно - я познакомился с этой фичей ещё на МАСТЕРС-2011. Дело не в глобальном непонимании сути PPS, а в мелочах. Но, с помощью такой то матери и врождённой дотошности, вроде во всём разобрался. Одного до конца не понял - IOL1WAY Configuration bit блокирует IOLOCK навсегда (типа прожига) или только до перезагрузки (RESET или отключение питания)? Если до перезагрузки, то зачем такая перестраховка - один бит блокирует другой бит, который блокирует функционал PPS?
__________________
"Ignoramus et ignorabimus..."
NSS вне форума   Ответить с цитированием
Старый 27.10.2017, 21:56   #9
besogon
Senior Member
 
Регистрация: 12.07.2012
Возраст: 30
Сообщений: 1,501
Вес репутации: 3061/65
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: p24hj64gp502 SPI

NSS
я никогда не использовал IOL1WAY.
besogon вне форума   Ответить с цитированием
Старый 28.10.2017, 09:54   #10
NSS
Senior Member
 
Аватар для NSS
 
Регистрация: 25.02.2007
Возраст: 47
Сообщений: 882
Вес репутации: 414/52
NSS is just really niceNSS is just really niceNSS is just really niceNSS is just really niceNSS is just really nice
По умолчанию Re: p24hj64gp502 SPI

Понятно. Если верить дейташиту, этот бит установлен по дефолту в чистых новых камнях. То есть, если в программе надо переназначать тот или иной пин на разную периферию, надо снимать этот бит в конфиге. А если такой необходимости нет, то,чтобы исключить случайное переназначение, надо заблокировать PPS этим битом в самом начале. Вроде так...

Спасибо за терпеливые ответы.
__________________
"Ignoramus et ignorabimus..."
NSS вне форума   Ответить с цитированием
Ответ


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

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
PIC24FJ256GB410 + SPI geotox Продукция MICROCHIP 8 14.08.2016 18:56
проблемы с SPI (PIC18LFxxxx + RFM23) desperado Продукция MICROCHIP 37 27.10.2013 19:00
ENC28J60 не работает SPI k.evgeny Продукция MICROCHIP 2 01.01.2012 18:57
SPI интерфейс. PIC16F887 + CC2500 RF module. Cavalryman Вопросы начинающих 45 08.07.2010 18:59
Прерывание SPI в dsPIC33FJ33GP202 Любопытный Продукция MICROCHIP 6 28.11.2008 17:29


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


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