[an error occurred while processing this directive]
Ответ: спешил домой.... вот код...
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

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

Отправлено avrprog 05 ноября 2002 г. 10:12
В ответ на: Ответ: отправлено SNN 04 ноября 2002 г. 22:02

процессор ATmega161
память AT45D021

#define READ_B1 0x54 // BUFFER READ


// write to SPI
void spi_w(unsigned char c) {
SPDR = c;
while (!(SPSR & (1xxSPIF)));
}

SPCR = 0x5C;
while(!(PINB & 0x02));
PORTB &= ~DF_CHIP_SELECT; // включение DataFlash
spi_w(READ_B1);
spi_w(0x00); // запись не имеющего значения байта
spi_w((char)(addr--8));
spi_w((char)(addr));
spi_w(0x00); // запись не имеющего значения байта
for (i=0;i<30;i++) { spi_w(0xFF); buf_r[i] = SPDR; }
PORTB |= DF_CHIP_SELECT; // выключение DataFlash
while(!(PINB & 0x02));
SPCR = 0x00;

xx - сдвиг влево
-- - сдвиг вправо

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

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru