ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Воскресенье
24 ноября
27645 Топик полностью
vmp (29.04.2005 12:24, просмотров: 1) ответил Shura на Попробую пояснить
У меня такой код Обрати внимание, что входной параметр - номер страницы, а не блока!
//-------------------------------------------------------------
// Стирание NAND_Flash - один блок
// Внимание! Входной параметр - номер страницы в нужном блоке!
//-------------------------------------------------------------
byte NF_EraseBlock(word page)
{
 byte v;

   P5OUT |= P5_WP_FL;           // разрешение записи

   NF_Select();
   NF_Cmd(0x60);                // команда - подготовиться к стиранию
   NF_Addr(page);               // a9..a16 - pageL
   NF_Addr(page >> 8);          // a17..a24 - pageH
   NF_Cmd(0xD0);                // команда - стирание начать
   do
    {
     NF_Cmd(0x70);              // команда - чтение статуса
     v = NF_RdByte();           // статус
    } while ((v & BIT6) == 0);  // ждем готовность
   if ((v & BIT0) != 0)
     return E_CMD_WriteError;   // если выставлена ошибка стирания

   return E_CMD_OK;             // стирание успешно прошло
}