Ȥ½Ã ESP32¸¦ i2c slave ·Î ½á º¸½Å ºÐ °è½Å°¡¿ä?

isaiah   
   Á¶È¸ 2461   Ãßõ 0    

  제조사 재공 i2c 슬레이브 드라이버가

 마스터의 전송 종료 비트를 같은걸 따로따로 알려주지 않고 받은 내용을 줄줄이 RX 버퍼에

 보넬 내용을 줄줄이 TX에 넣는 식으로 만들어져 있던데..


 드라이버내의 인터럽트 처리 루틴에 I2C_INTR_EVENT_TRANS_DONE 같은 인터럽트 타입을 확인하는 부분이 있고

 마스터 쪽은 이걸 구분해서 따로 처리하는데..

 슬래이브 쪽은 I2C_INTR_EVENT_TRANS_DONE 을 따로 구분하지 않고 하드웨어 i2c의 퍼버가 가득찾을 와 마찬가지로 그냥 매모리에 복사하고 버퍼를 비워주는 루틴을 돌리던데...

 이게 그냥 드라이버를 덜(?)만들어서 그런걸까요?

 아니면 하드웨어 특성상 슬래이브 쪽은 I2C_INTR_EVENT_TRANS_DONE 플레그가 의미가 없는 걸까요?

 하드웨어 특성인가 하고 데이터 시트도 살짝 봤는데 자세하지가 않아서요...

ªÀº±Û Àϼö·Ï ½ÅÁßÇÏ°Ô.


QnA
Á¦¸ñPage 724/5680
2014-05   4945347   Á¤ÀºÁØ1
2015-12   1482036   ¹é¸Þ°¡
2020-08   2499   Çí»çÄÚ¾î
2021-01   2499   CPU4
2022-12   2499   È­¶õ
2020-02   2499   ´ÃÆĶõ
2018-12   2499   µþ±â´ëÀå
2019-08   2499   ±èÁØÀ¯
2020-04   2499   isaiah
2018-11   2499   Æ丣¼¼¿ì½º
2021-06   2499   inquisitive
2021-11   2499   osthek83
2020-08   2500   ÀÌ°ú2
2020-11   2500   ±×¸°
2020-02   2500   Çï·Î¿ì
2023-05   2500   ½ÅÀº¿Ö
2019-08   2500   ¹Ú¹®Çü
2023-01   2500   ¹Î»çÀå
2019-04   2500   ÇູÇϼ¼
2019-11   2500   ¹Ú¹®Çü
2023-06   2500   ½áµå¶ô¿À
2020-01   2500   µð¼À¹ö