реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> ATMEL168 и AT45DB021B-SU, Идентификатор не читается
kostian296
сообщение Oct 25 2008, 07:08
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 16
Регистрация: 20-10-08
Пользователь №: 41 074



SPCR = (1 << SPE)|(1 <<MSTR)|(1 << CPOL)|(1 << CPHA);
SPSR = (1 << SPI2X); // 2x rate

// initialize PORTB for SPI
DDRB |= (1 << SPI_MOSI)|(1 << SPI_SCK)|(1 << SPI_SS);
DDRB &= ~(1 << SPI_MISO);

void SPI_Write_Byte(unsigned char cool.gif
{
SPDR = b;
while (!(SPSR & (1<<SPIF))); // wait for data transfer to be completed
}

unsigned char SPI_Read_Byte(void)
{
SPDR = 0x00;
while (!(SPSR & (1<<SPIF))); // wait for data transfer to be completed
return SPDR;
}

unsigned char at45ReadVID(void)
{
unsigned char ID;
CS_ON; //óñòàíîâèì CS äëÿ DataFlash
SPI_Write_Byte(0x9f); //ïåðåäàåì íîìåð êîìàíäû
ID=SPI_Read_Byte(); //÷èòàåì ðåãèñòð ñòàòóñà
SPI_Write_Byte(0); //÷èòàåì ðåãèñòð ñòàòóñà
SPI_Write_Byte(0); //÷èòàåì ðåãèñòð ñòàòóñà
SPI_Write_Byte(0); //÷èòàåì ðåãèñòð ñòàòóñà
CS_OFF;; //ñáðîñèì CS äëÿ DataFlash

return(ID);
}

Какие бы скорости не выставлял все время возврщает ID=0 ?
Прикрепленные файлы
Прикрепленный файл  Flash_USB.zip ( 25.01 килобайт ) Кол-во скачиваний: 18
 
Go to the top of the page
 
+Quote Post
kostian296
сообщение Oct 25 2008, 09:47
Сообщение #2


Участник
*

Группа: Новичок
Сообщений: 16
Регистрация: 20-10-08
Пользователь №: 41 074



Цитата(kostian296 @ Oct 25 2008, 10:08) *
SPCR = (1 << SPE)|(1 <<MSTR)|(1 << CPOL)|(1 << CPHA);
SPSR = (1 << SPI2X); // 2x rate

// initialize PORTB for SPI
DDRB |= (1 << SPI_MOSI)|(1 << SPI_SCK)|(1 << SPI_SS);
DDRB &= ~(1 << SPI_MISO);

void SPI_Write_Byte(unsigned char cool.gif
{
SPDR = b;
while (!(SPSR & (1<<SPIF))); // wait for data transfer to be completed
}

unsigned char SPI_Read_Byte(void)
{
SPDR = 0x00;
while (!(SPSR & (1<<SPIF))); // wait for data transfer to be completed
return SPDR;
}

unsigned char at45ReadVID(void)
{
unsigned char ID;
CS_ON; //óñòàíîâèì CS äëÿ DataFlash
SPI_Write_Byte(0x9f); //ïåðåäàåì íîìåð êîìàíäû
ID=SPI_Read_Byte(); //÷èòàåì ðåãèñòð ñòàòóñà
SPI_Write_Byte(0); //÷èòàåì ðåãèñòð ñòàòóñà
SPI_Write_Byte(0); //÷èòàåì ðåãèñòð ñòàòóñà
SPI_Write_Byte(0); //÷èòàåì ðåãèñòð ñòàòóñà
CS_OFF;; //ñáðîñèì CS äëÿ DataFlash

return(ID);
}

Какие бы скорости не выставлял все время возврщает ID=0 ?


The AT45DB161D is a 2.5-volt or 2.7-volt, serial-interface sequential access Flash
memory ideallysuited. Вся плата питается от 3.3В. Может не катит питание ?
Надо 2.7В подать на память ?
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th July 2025 - 14:32
Рейтинг@Mail.ru


Страница сгенерированна за 0.01354 секунд с 7
ELECTRONIX ©2004-2016