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

 
 
> NAND Flash Interface
Misile_Inc
сообщение Aug 30 2011, 04:43
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 174
Регистрация: 30-08-11
Из: Санкт-Петербург
Пользователь №: 66 926



Здравствуйте, уважаемые участники форума.
Возникла сложность с использованием NAND Flash интерфейса в микроконтроллере 1886ВЕ3У. Пытаемся произвести запись во внешнюю память, контроллер выполняет запись 31 слова и перестает выполнять какие-либо действия.
Код упростили уже до такого вида (прерывания запрещены):

MOVLB Bank6;
CLRF NAND_MODE,1;
BSF EN_NAND;

NAND:
BTFSC BUSY_NAND;
goto NAND;
BCF MODE2_NAND;
BSF MODE0_NAND;
MOVFP AD0, NAND_DATA;
MOVFP AD1, NAND_DATA;
MOVFP AD2, NAND_DATA;
MOVFP AD3, NAND_DATA;

wait:
BTFSC BUSY_NAND;
goto wait;
BCF MODE0_NAND;
BSF MODE2_NAND;
MOVFP INDF0, NAND_DATA;
MOVFP INDF0, NAND_DATA;
MOVFP INDF0, NAND_DATA;
MOVFP INDF0, NAND_DATA;
INCF AD_3;
goto NAND

То есть, сначала разрешаем работу интерфейса в принципе, затем, как только NAND контроллер окажется свободен переходим в режим выдачи адреса, выдаем адрес, ждем освобождения контроллера, переходим в режим выдачи данных, выдаем данные, инкрементируем адрес, делаем петлю.
AD0- AD3 - макроопределения небанкированых регистров общего назначения.
Будем признательны за подсказку.

Сообщение отредактировал Misile_Inc - Aug 30 2011, 04:45
Go to the top of the page
 
+Quote Post



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

 


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


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