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

isaiah   
   Á¶È¸ 2479   Ãßõ 0    

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

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

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


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

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

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

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

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

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

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


QnA
Á¦¸ñPage 2310/5684
2015-12   1495359   ¹é¸Þ°¡
2014-05   4958896   Á¤ÀºÁØ1
2004-10   7300   ȲÇýÁ¤
2020-11   3033   ½ÅÀº¿Ö
2004-11   6973   ¼ÒÇöÁØ
2011-03   6373   ºÒ¹«°ñ
01-11   994   gusoong
2011-03   8708   ºÒ¹«°ñ
2022-05   1295   º¯È£»ç¼Õ±º
01-17   1105   Á¤ÀǼ®
2007-07   4752   ¹Ú±¤´ö
2015-02   4670   isaiah
2017-04   4351   ĵÀ§µå
2004-11   6867   ÀÌÈ£¿­
2017-04   3395   ½Ãµµ´Ï
2015-02   4562   ¹«ÀÚ¸®¾Æ
2016-04   4589   ±Ç¿ë1
2017-04   4009   µÎcpu
2018-07   4200   ¸ðÄ«¸ðÄ«
2020-12   5343   LSSAH
01-31   1136   º¸°Å½º123
2004-12   7151   ±è±¤ÁÖ