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

isaiah   
   Á¶È¸ 1884   Ãßõ 0    

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

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

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


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

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

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

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

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

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

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


QnA
Á¦¸ñPage 5097/5623
2014-05   4676341   Á¤ÀºÁØ1
2015-12   1224534   ¹é¸Þ°¡
2019-01   1890   ¾ÆÀÌÆ®¸®
2020-05   1890   °¡ºü·Î±¸³ª
2023-07   1890   °ËÀºÄá
2023-08   1890   ¿ìÁÖÁ¦ÀϹ̳²
2023-08   1890   Wnahd
2023-10   1890   Moraine
2020-02   1890   blueMango
2021-12   1890   Âî·Ï
2022-10   1890   isilentwind
2021-04   1889   ¹«¾Æ
2020-02   1889   ¸ùź
2020-04   1889   Jjun
2022-04   1889   2CPUÃÖÁÖÈñ
2023-10   1889   ¹«¾Æ
2019-08   1889   ±¸½ÊÆò
2021-12   1889   À»Áö¹®´ö
2021-06   1889   ½Å¼º°ø
2021-11   1888   °í¾ç½Ã
2023-09   1888   ·Îº§¸®¾Æ
2020-06   1888   ¸®Å°ÆÄ¿ï·¯