| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- #ifndef AT45DB161E_CONF
- #define AT45DB161E_CONF
- // включение/выключение сервисных байтов
- #define AT45DB161E_EMU512
- // разрешить (=1) управление питанием микросхемы памяти
- #define AT45DBXXX_POWER_MANAGEMENT 0
- // разрешить (=1) управление режимом работы микросхемы памяти: режим сброса (reset)
- #define AT45DBXXX_RESET_MANAGEMENT 1
- // отключить (=1) проверку ухода в режим гибернации (экономит время при flash_finalize())
- // ВНИМАНИЕ! AT45 просыпается и начинает потреблять при попытке проверить ее состояние и прочитать статус.
- // Ток потребления растет с ~8мкА до 22мкА. Рекомендуется не использовать проверку, объявите макрос =1
- #define AT45DBXXX_DONOTCHECK_HIBERNATE 1
- // разрешить (=1) управление аппаратным сигналом защиты записи
- #define AT45DBXXX_HW_WR_PROTECT 0
- // отключить (=1) аппаратную защиту записи (имеет смысл только если AT45DBXXX_HW_WR_PROTECT=1)
- // При отключении аппаратной защиты записи аппаратный сигнал nWR будет установлен в состояние
- // соответствующее разрешению записи в чип во время инициализации драйвера, и будет удерживаться
- // в этом состоянии до де-инициализации.
- #define AT45DBXXX_HW_WR_PROTECT_KEEPUNPROTECTED 0
- // запрещение сервисных байтов (навсегда)
- // /*#dеfinе AT45DB161E_PRM512*/ ЭТОТ РЕЖИМ НЕ ОТКЛЮЧАЕТСЯ!
- #define AT45DB161E_BKGOPERATIONS 1 // отключение задержек операций | ВНИМАНИЕ! Только для ОПЫТНЫХ пользователей (-: !!!
- #define AT45DB161E_DONTUSESMARTDELAY 0 // отключение "умной" задержки
- #define AT45DBXXX_SMART_WAIT_THRESHOLD 10 // порог в мс, выше которого функция __flash_smart_waitms начнет опрашивать чип на предмет его занятости.
- #define AT45DBXXX_FLASH_RAM_PLACE ".at45" // укажите имя секции в кавычках для размещения всех связанных с AT45DB161E данных в ней
- // либо не объявляйте макрос вообще
- #define AT45DBXXX_FLASH_DESIRED_ID AT45FLASH_ATMEL_ID // требуемый Manufacturer ID чипа для проверки.
- // для отключения проверки не объявляйте макрос
- #if !FLASH_SKIP_DENSITY_CHECKING
- #define AT45DBXXX_FLASH_DESIRED_DENSITY AT45FLASH_DENSITY_16MB // требуемый код вместимости (density) чипа для проверки.
- // для отключения проверки не объявляйте макрос
- #endif
- #define AT45DBXXX_FLASH_DESIRED_FAMILY AT45FLASH_FAMILY_DATAFLASH // требуемый код сеймейства (family) чипа для проверки.
- // для отключения проверки не объявляйте макрос
- #define AT45DBXXX_API_TIMEOUT 10 // таймаут операций API в миллисекундах
- // если устройство занято по истечении таймаута, операция будет сброшена,
- // а функция вернет ошибку FLERR_TIMEOUT
- // Чтобы использовать стандартный таймаут, не объявляйте макрос
- #define AT45DB161E_CHECKSTATUS_DENSITYCODE 0 // НЕ РЕАЛИЗОВАНО до конца. Используется только в функциях ожидания завершения операции
- // проверка кода Density в статусном регистре
- // во время процедуры чтения флага готовности
- // может использоваться в качествте дополнительной
- // проверки НАЛИЧИЯ чипа на шине SPI
- // Для включения проверки установите значение 1
- #define AT45DBXXX_NO_MS_DELAYS 0 // не использовать функции задержки на мс
- #endif
|