با سلام
من می خوام یه String رو در eeprom ذخیره کنم با توجه به مثال همراه با برد کویر. در زمان ذخیره چون طول رشته رو داریم مشکلی نیست اما در زمان خواندن از eeprom طول رشته رو از کجا بیاریم
چون طول رشت متغییره.
با تشکر
با سلام
من می خوام یه String رو در eeprom ذخیره کنم با توجه به مثال همراه با برد کویر. در زمان ذخیره چون طول رشته رو داریم مشکلی نیست اما در زمان خواندن از eeprom طول رشته رو از کجا بیاریم
چون طول رشت متغییره.
با تشکر
سلام
راه حلش سادس، طول رشته را هم در اولین آرایه ذخیره کن
_____________________________________
_____________________________________
سلام دوست من. یه راه دیگه هم هست که البته بهینه نیست و همه جا بکار نمیاد. می تونید واسه رشته ماکزیمم طولی رو انتخاب کنید مثلا 20 و در حافظه 20 تا کاراکتر خالی "" بریزید. در این صورت وقتی رشته ای با طول 12 ذخیره میشه 8 تای آخر خالی می مونن و موقع خوندن کل 20 تا رو بخونید.نمیدونم تنوستم منظورم رو خوب برسونم یا نه!موفق باشید.
کاراکتر نال دقیقا برای همین قضیه ی پیدا کردن انتهای رشته بهش اضافه میشه دیگه!
سلام
من می خوام یه string با طول 18 کارکتر رو دخیره کنم و کد زیر رو می نویسم
;("strcpy(EEbuf_Temp,"Salam 123456789012
;(I2C_WriteNByte(0xa0, 1, 100, EEbuf_Temp,18
و برای خواندن از دستور زیز
;(I2C_ReadNByte (0xa0, 1, 100,EEbuf,18
;([for(i=0;i<18;i++) printf("%c",EEbuf[i
اما 8 کارکتر رو بیشتر نشون نمیده در حالی که رشته شامل 18 کارکتره .کسی هست بتونه بگه مشکل چیه و بتونه کد رو تصحیح کنه
ممنون
سلام. کاراکترهایی که می خونید با فاصله از هم نشون میده؟
سلام
در ایتوپرام 8 تا 8 تا می توانید دیتا بنویسید و بخونید.