سلام
یک کتابخونه برای 24c02 نوشتم که نیاز به دونستن ادرس و چند بیتی بودن متغیر نیست فقط بهش میگی برو فلان متغیر رو توی این متغیر(مال ایپرام) ذخیره کن و بعد برای خوندن میگیم فلان متغیر ایپرام رو کپی کن داخل این متغیر!!
ی پا جدول FAT نوشتم
خوب توضبحات مهم
اول این که داخل مین قبل از معرفی کتابخونه ایپرام میایم مقدار i2c مورد نظر رو با تابع برمیگردونیم اینجوری
مرحله بعد اینجا اسم متغیر هامونو تعریف میکنیم
مرحله بعد اینجا نوع متغیر رو تعین میکنیم
و در اخر داخل مین برنامه ایپرام را init میکنیم تا جدول ادرس ساخته بشه
حالا فقط کافیه کد بزنید مثلا
حالا از دوستان خواهشی دارم که اگر از کد استفاده کرددند و خطایی دیدند اطلاع بدند رفع کنم!!
و این که متغیر long رو هنوز اضاف نکرده ام چون مغزم جواب کرده و نمیدونم که چند بایتی هست!!!! حالا واقعا متغیر long چند بایت اشغال میکنه؟؟
این هم هدر فایل (کلیک کنید)
یک کتابخونه برای 24c02 نوشتم که نیاز به دونستن ادرس و چند بیتی بودن متغیر نیست فقط بهش میگی برو فلان متغیر رو توی این متغیر(مال ایپرام) ذخیره کن و بعد برای خوندن میگیم فلان متغیر ایپرام رو کپی کن داخل این متغیر!!
ی پا جدول FAT نوشتم

خوب توضبحات مهم
اول این که داخل مین قبل از معرفی کتابخونه ایپرام میایم مقدار i2c مورد نظر رو با تابع برمیگردونیم اینجوری
I2C_HandleTypeDef read_i2c_in_main (void) {return hi2c1;}
#include "EEPROM.h"
مرحله بعد اینجا اسم متغیر هامونو تعریف میکنیم
enum
{
_x = 0 , // char 1
_y , // int 2
_z , // long 4
_mohsen, //long 4
_ELEC, //long 4
_javan , // char 1
number_of_variables
}variables;
مرحله بعد اینجا نوع متغیر رو تعین میکنیم
int EEPROM_24Cxx::init(void)
{
byte_of_valu [_x] = _char;
byte_of_valu [_y] = _int;
byte_of_valu [_z] = _long;
byte_of_valu [_mohsen] = _long;
byte_of_valu [_ELEC] = _long;
byte_of_valu [_javan] = _int;
و در اخر داخل مین برنامه ایپرام را init میکنیم تا جدول ادرس ساخته بشه
eeprom.init();
حالا فقط کافیه کد بزنید مثلا
int intt =0;
eeprom.write(intt , eeprom._javan);
HAL_Delay(2);
eeprom.read(&intt, eeprom._javan);
حالا از دوستان خواهشی دارم که اگر از کد استفاده کرددند و خطایی دیدند اطلاع بدند رفع کنم!!
و این که متغیر long رو هنوز اضاف نکرده ام چون مغزم جواب کرده و نمیدونم که چند بایتی هست!!!! حالا واقعا متغیر long چند بایت اشغال میکنه؟؟
این هم هدر فایل (کلیک کنید)
دیدگاه