
Обзор SPI Flash памяти MX25L6433F
aabzel 16 минут назад Обзор SPI Flash памяти MX25L6433F Простой 8 мин 608 Программирование микроконтроллеров * Хранение данных * Производство и разработка электроники * Электроника для начинающих C * Туториал В этом...
GPT-5.6 31 Temmuz 2026'da yayınlanacak mı?
В сфере искусственного интеллекта произошло заметное событие. aabzel 16 минут назад Обзор SPI Flash памяти MX25L6433F Простой 8 мин 608 Программирование микроконтроллеров * Хранение данных * Производство и разработка электроники * Электроника для начинающих C * Туториал В этом тексте я произвел обзор микросхемы SPI-NOR FLASH памяти MX25L6433F. микросхема памяти MX25L6433F M2I-08Q 5B456800 в натуреИз микросхемы торчит 8 пинов. Вот более подробная справка по распиновке.
Корпус SOP-8 весьма удобен для отладки SPI драйвера при помощи прищепок SDK08. Для отладки чтения и записи в SPI Flash вам потребуется логический анализатор. С точки зрения программиста микросхема MX25L6433F выглядит так.
Технические детали
Сейчас такую микросхему можно купить за 270 RUR. Получается 34 RUR за мегабайт. Интерфейс MCU <---> ASICСвязь с микросхемой происходит по интерфейсу SPI.
Биты выхватываются по положительному перепаду на проводе тактирования. Полярность тактирования не имеет значения. Биты передаются старшим битом вперед.
Программная частьПомимо полей с памятью микросхема MX25L6433F обладает четырьмя внутренними регистрами для конфигурирования и чтения статуса ASICa. Назначение микросхемы - читать и писать массивы. Разберемся с каждой операцией в отдельности.
Отраслевые последствия
Запись массива в микросхемуПеред записью надо разрешить модификацию памяти в статусном регистре. Под записью во flash понимается обнуление конкретных битов. Адрес куда писать указывается в формате big-endian.
За один раз можно прописать только 256 байт. Запись страницы выглядит так/* 10-22. Page Program (PP) (page 28 )Figure 12.
Program/Erase flow with read array data */ bool mx25l6433f_page_program(uint8_t num, uint32_t address, const uint8_t* const data, uint32_t size) { bool res = false; LOG_INFO(MX25L6433F, "PageProg,Addr:0x%08x,Size:%u byte", address, size); Mx25l6433fHandle_t* Node = Mx25l6433fGetNode(num); if (Node) { res = mx25l6433f_write_activate(num, MX25_WR_TIMEOUT_MS); if (res) { gpio_logic_level_set(Node->chip_select, 0); res = mx25l6433f_write_cmd_address(num, MX25_CMD_PAGE_PROGRAM, address); if (res) { res = spi_mcal_write(Node->spi_num, data, size); } gpio_logic_level_set(Node->chip_select, 1); res = mx25l6433f_wait_write_done(num, MX25_WR_TIMEOUT_MS); } } return res; }Чтение массиваЧитать можно по любому адресу. Адрес указывать в формате big-endian. Чтение страницы/* Read Data Bytes (READ)*/ bool mx25l6433f_read(uint8_t num, uint32_t address, uint8_t* data, uint32_t size) { bool res = false; Mx25l6433fHandle_t *Node = Mx25l6433fGetNode(num); if (data) { if (size) { gpio_logic_level_set(Node->chip_select, 0); res = mx25l6433f_write_cmd_address(num, MX25_CMD_NORMAL_READ, address); if (res) { res = spi_mcal_read(Node->spi_num, data, size); } gpio_logic_level_set(Node->chip_select, 1); } } return res; }Стереть 4k секторПеред стиранием надо разрешить стирание в статусном регистре.
Событие, по словам экспертов, усилит конкуренцию в сфере ИИ.





