[QUOTE=kambiz51;669038]
نقل قول نوشته اصلی توسط hosseinghaheri

مهمان عزیز شما حق دیدن لینک ها را ندارید

عضویت

سلام خدمت همه ی دوستان.
چطوری میتونم توی stm32 با کتاب خانه hal با 24c1024 ارتباط برقرار کنم.
میدونم ادرس ها به صورت 16 بیتی هست و باید در قالب دو بایت ارسال بشه ولی توی hal نمیدونم چطوری باید این کار را انجام بدم.
من همه کد های زیر را تست کردم. ولی هیچ کدوم جواب نداد و مقدار برگشتی این تابع برابر HAL_BUSY هست.

دلیل: ادغام دو پست برای جلوگیری از اسپم

سلام دوست عزیز
همین مشکل را در نوشتن در حافظه 24C08 دارم و با نوشتن در آدرس حافظه های بالای 255 بوجود میاد
سپاسگزارم:


HAL_I2C_Mem_Write(&hi2c2,0xA0,0x0000,I2C_MEMADD_SI ZE_16BIT,transmit1,5,1000);
HAL_Delay(100);
HAL_I2C_Mem_Read(&hi2c2,0xA0,0x0000,I2C_MEMADD_SIZ E_16BIT,receive,5,1000);




//----------------------------------------------------------------------------------
row = 4;
HAL_I2C_Mem_Write(&hi2c2,0xA0,0x0140,I2C_MEMADD_SI ZE_16BIT,transmit2,5,1000);
HAL_Delay(100);
HAL_I2C_Mem_Read(&hi2c2,0xA0,0x0140,I2C_MEMADD_SIZ E_16BIT,receive,5,1000);


//----------------------------------------------------------------------------------
row = 6;


HAL_Delay(100);
HAL_I2C_Mem_Read(&hi2c2,0xA0,0x0000,I2C_MEMADD_SIZ E_16BIT,receive,5,1000);


اطلاعات خوانده شده در این مرحله بهم ریخته هست
سلام
من به طور اتفاقی متوجه شدم که اگه یک خازن 100n و یک مقاومت 1M با پایه sda موازی کنم این مشکلم حل میشه.