[an error occurred while processing this directive]
FM25L256 прикручивал к MSP430.Вот небольшой тестик.
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено VNP 15 ноября 2006 г. 15:03
В ответ на: Кто-нибудь работал с FRAM типа FM25CL64 или похожей. Никак не могу заставить ее работать. Сигналы на шине SPI правильные как в описании, но вот сигнала SO от микросхемы нет. Вообщем нет ли каких нибудь подводных камней с этими микрухами. отправлено <font color=gray>ashr</font> 15 ноября 2006 г. 11:11

// P5OUT &= ~0x1; // FS reset

//razreshit zapic
P6OUT &= ~0x08;
while ((IFG1 & UTXIFG0) == 0);
TXBUF0 = 0x06;
while ((IFG1 & UTXIFG0) == 0);
for (k = 5; k > 0; k--); //äëÿ êîððåêòíîé ðàáîòû
P6OUT |= 0x08;

for (k = 15; k > 0; k--); //pause
//zapic
P6OUT &= ~0x08;
while ((IFG1 & UTXIFG0) == 0);
TXBUF0 = 0x02;
while ((IFG1 & UTXIFG0) == 0);
TXBUF0 = 0x0F00 >> 8;
while ((IFG1 & UTXIFG0) == 0);
TXBUF0 = 0xFF;
while ((IFG1 & UTXIFG0) == 0);
TXBUF0 = 0xAA;
while ((IFG1 & UTXIFG0) == 0);
for (k = 5; k > 0; k--); //äëÿ êîððåêòíîé ðàáîòû
pointer++;
pointer &= 0x1F;
P6OUT |= 0x08;

for (k = 15; k > 0; k--); //pause
//chtenie
P6OUT &= ~0x08;
while ((IFG1 & UTXIFG0) == 0);
TXBUF0 = 0x03;
while ((IFG1 & UTXIFG0) == 0);
TXBUF0 = 0x0F00 >> 8;
while ((IFG1 & UTXIFG0) == 0);
TXBUF0 = 0xFF;
while ((IFG1 & UTXIFG0) == 0);
for (k = 5; k > 0; k--); //äëÿ êîððåêòíîé ðàáîòû
P6OUT &= ~0x04;
TXBUF0 = 0x0;


while ((IFG1 & UTXIFG0) == 0);
for (k = 5; k > 0; k--); //äëÿ êîððåêòíîé ðàáîòû
if( RXBUF0==0xAA) P6OUT &= ~0x70; else P6OUT |= 0x70;// ïðîâåðêà íà âõîäå íóëÿ Ð3.2 âêëþ÷¸í êàê îáû÷íûé âõîä ïîðòà
cha = RXBUF0;
TXBUF0 = cha;
P6OUT |= 0x08;
P6OUT |= 0x04;

Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа
Имя (обязательно): 
Пароль: 
E-mail: 

Тема (обязательно):
Сообщение:

Ссылка на URL: 
URL изображения: 


Rambler's Top100 Рейтинг@Mail.ru
Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание