|
at91sam7x256 FM25L256 SPI, Не хочет работать |
|
|
|
Jun 2 2008, 06:53
|
Участник

Группа: Участник
Сообщений: 42
Регистрация: 22-01-08
Пользователь №: 34 302

|
Есть камень at91sam7x256 и фрамина FM25L256. Настроил SPI, смотрю асцилом клоки есть, чипселект отрабатывает как надо, MOSI есть, я вно вижу байты которые посылаю. Фрамина молчит, в чём может быть проблема?
|
|
|
|
|
 |
Ответов
|
Jun 2 2008, 07:37
|
Участник

Группа: Участник
Сообщений: 42
Регистрация: 22-01-08
Пользователь №: 34 302

|
Цитата(aaarrr @ Jun 2 2008, 11:13)  А что конкретно посылаете? Или код приведите. Так гадать можно бесконечно. Хочу просто прочесть статус регистр. Код t_error spi_write( u08 byte ) { while ( !( AT91C_BASE_SPI0->SPI_SR & AT91C_SPI_TXEMPTY ) ); AT91F_SPI_PutChar( AT91C_BASE_SPI0, ( unsigned int )byte, 3 ); return SPI_ERR_SUCCESS; }
... spi_write( 0x05 ); spi_write( 0xAA ); AT91C_BASE_SPI0->SPI_CR |= AT91C_SPI_LASTXFER; b = spi_read(); ... Цитата(shreck @ Jun 2 2008, 11:23)  Есть подозрение, что у микросхем этой серии проблемы с SPI. Я использовал FM25L64 c MSP430, сосед - ее же с at91sam7x256. Мы оба так и не смогли заставить память работать от встроенных в контроллеры модулей SPI.
Но при этом все работает, если SPI сделать программный. А вот ваш ответ меня совсем не радует. Очень не хочеться делать велосипед.
Сообщение отредактировал grishkin - Jun 2 2008, 07:39
|
|
|
|
|
Jun 2 2008, 08:04
|
Участник

Группа: Участник
Сообщений: 42
Регистрация: 22-01-08
Пользователь №: 34 302

|
Цитата(aaarrr @ Jun 2 2008, 11:49)  А где инициализация, spi_read()?
OFF: И снова AT91F_! Зачем усложнять себе и другим жизнь, а? Пожалуйста вот чего не хватает. Код t_error spi_init( void ) { AT91F_PIO_CfgPeriph( AT91C_BASE_PIOA, ((unsigned int) AT91C_PA17_SPI0_MOSI) | ((unsigned int) AT91C_PA16_SPI0_MISO) | ((unsigned int) AT91C_PA18_SPI0_SPCK) | ((unsigned int) AT91C_PA15_SPI0_NPCS3), 0); AT91F_PIO_CfgPeriph( AT91C_BASE_PIOB, 0, 0 ); AT91F_SPI0_CfgPMC(); AT91F_SPI_Reset( AT91C_BASE_SPI0 ); AT91F_SPI_CfgMode( AT91C_BASE_SPI0, AT91C_SPI_MSTR | AT91C_SPI_PS_FIXED ); AT91F_SPI_CfgPCS( AT91C_BASE_SPI0, 0x07 ); AT91F_SPI_CfgCs( AT91C_BASE_SPI0, 3, AT91C_SPI_BITS_8 | AT91C_SPI_CSAAT | ( 48 << 8 ) | // Serial Clock Baud Rate ( 10 << 16 ) | // Delay Before SPCK ( 1 << 24 ) // Delay Between Consecutive Transfers ); AT91F_SPI_Enable( AT91C_BASE_SPI0 ); return SPI_ERR_SUCCESS; }
u08 spi_read( void ) { while ( !( AT91C_BASE_SPI0->SPI_SR & AT91C_SPI_TXEMPTY ) ); return ( u08 )AT91F_SPI_GetChar( AT91C_BASE_SPI0 ); }
|
|
|
|
Сообщений в этой теме
grishkin at91sam7x256 FM25L256 SPI Jun 2 2008, 06:53 aaarrr Согласитесь, что так все же не бывает. Или с SPI н... Jun 2 2008, 07:06 grishkin Цитата(aaarrr @ Jun 2 2008, 11:06) Соглас... Jun 2 2008, 07:10 shreck Есть подозрение, что у микросхем этой серии пробле... Jun 2 2008, 07:23 aaarrr 1. Еррату читали?
2. FM25L256 не умеет работать в ... Jun 2 2008, 08:11 grishkin Цитата(aaarrr @ Jun 2 2008, 12:11) 1. Ерр... Jun 2 2008, 08:22  aaarrr Цитата(grishkin @ Jun 2 2008, 12:22) Ерра... Jun 2 2008, 08:34   grishkin Цитата(aaarrr @ Jun 2 2008, 12:34) На SAM... Jun 2 2008, 08:45    aaarrr Цитата(grishkin @ Jun 2 2008, 12:45) Почи... Jun 2 2008, 08:51     grishkin Цитата(aaarrr @ Jun 2 2008, 12:51) И про ... Jun 2 2008, 10:04      aaarrr Цитата(grishkin @ Jun 2 2008, 14:04) Этот... Jun 2 2008, 10:12 InsolentS Вот, держите код, 100% работает именно на этом кам... Jun 2 2008, 08:46 grishkin Спасибо за NCPHA. Всё заработало. Уменя были недоб... Jun 2 2008, 11:02 aaarrr Эт хорошо, что заработало, а то я уже и не знал, к... Jun 2 2008, 11:13
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|