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

 
 
 
Reply to this topicStart new topic
> SAM7256S TWI и EEPRROM AT24C08A
Spoofing
сообщение Jun 30 2009, 16:17
Сообщение #1





Группа: Участник
Сообщений: 11
Регистрация: 21-06-09
Пользователь №: 50 508



Повесил для тестов на TWI такую флешку AT24C08A. Попробовал записать и столкнулся с несколькими вопросами:
1) Судя по даташиту используется 2х байтный внутренний адрес (8кб флешка), при этом шинный адрес TWI_MMR | DADR=1010 000(первые стандарт + 000 по ножкам)
2) Инициализация
Код
void InitTWI(void) {
AT91PS_TWI       t_pTWI    = AT91C_BASE_TWI;
t_pTWI-> TWI_CWGR = 7<<16|2<<8|2<<0;    //задание делителей частоты
t_pTWI-> TWI_MMR = 0x50<<16|2<<8;        // адрес ведомого, кол-во байт адреса флешки
t_pTWI-> TWI_IER = BIT8|BIT2|BIT1;  // прер-я RXRDY, TXRDY, NACK
}

тактирование и прерывание включены в других частях, при попытке включить и послать один байт из тестового массива
Код
void TWI_ON (void)
{
t_pTWI->TWI_CR &= ~BIT3;
t_pTWI->TWI_CR |= BIT2;// разрешение обмена ведущему
                                                
      t_pTWI->TWI_MMR &= ~BIT12; // выбор действия = запись
      t_pTWI->TWI_IADR = last_addr_ext_flash_wr; // с какого адреса писать 0х0000 начальный
    t_pTWI->TWI_THR  = (ch0[twi_count_wr]); // запись в буфер символа 0х01 первый
    last_addr_ext_flash_wr++;
    twi_count_wr++;     
  }


В if ((t_pTWI->TWI_SR&AT91C_TWI_TXRDY)>>2) не дожидаюсь установление бита TXRDY о пустом буфере. В чем грабли?
Прикрепленные файлы
Прикрепленный файл  AT24C02A_04A_08A.pdf ( 114.96 килобайт ) Кол-во скачиваний: 15
 
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 21st July 2025 - 20:33
Рейтинг@Mail.ru


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