FLASH Memory eeprom olarak kullanmak

Başlatan enrique_iglesias, 15 Şubat 2017, 23:36:23

enrique_iglesias

Arkadaşlar merhaba;
STM32F072RB ile çalışıyorum 32 Sector, 64 Page 2kb dan toplam 128kb flash memory mevcut.

Verilerimi 62'nci page'e kaydediyorum ama ufak bir adresteki değişiklik için koca bir page'i ram'a alıp tekrar geri yüklüyorum..
1 adet veri değişikliği ram'da koca bir alan kaplıyor, kullanıcı son ayarlarını kesintiye karşı koruma altına almalıyım, sürekli sil yaz nereye kadar?
Bu çok saçma değil mi?
Datalarda bunun sebebini açıklayan bir bilgide bulamadım..



enrique_iglesias

#include <stdint.h>
#include "stm32f0xx_hal.h"        //  STM32F072RB kütüphanesi
#define     __IO    volatile             //


#if defined (STM32F10X_LD) || defined (STM32F10X_MD)
#define PAGE_SIZE  (uint16_t)0x400  /* Page size = 1KByte */
#elif defined (STM32F10X_HD) || defined (STM32F10X_CL)
#define PAGE_SIZE  (uint16_t)0x800  /* Page size = 2KByte */
#endif

/* EEPROM start address in Flash */
#define EEPROM_START_ADDRESS    ((uint32_t)0x0801F000) // Başlangıç adresim sondan bir önceki


Hocam, eeprom.h tanımlama sayfasındaki ayarlar sanırım bunlar ama STM32F072RB için tanımlamasını yapamadım, ayrıca c++ tabından bahsetmişsiniz oraya ne tanımlamamız gerekiyor.

Mucit23

Uzun zaman oldu uğraşmayalı. Bi ara yapmıştım.
Şuan bende pek hatırlamıyorum açıkçası
Bu başlığa baktınızmı?
http://www.st.com/en/embedded-software/stsw-stm32117.html

enrique_iglesias

Alıntı yapılan: Mucit23 - 16 Şubat 2017, 10:04:00
Uzun zaman oldu uğraşmayalı. Bi ara yapmıştım.
Şuan bende pek hatırlamıyorum açıkçası
Bu başlığa baktınızmı?
http://www.st.com/en/embedded-software/stsw-stm32117.html

Evet hocam şuan ordaki örnek app indirdim, orda çalışır vaziyette ama kendi projeme dahil edince hata alıyorum, sanırım c++ tabında birşeyler yapılması gerekiyor...

Mucit23

Kodunuzu ve aldığınız hatayı paylaşırsanız yardım alma ihtimaliniz daha yüksek olur.