Created
July 22, 2016 02:26
-
-
Save eggman/41baa74fb13992df8a21b085f85339c3 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
espthernet のソースコードを読んでみました。 | |
このソフトウェアの特徴は、「ESP8266 + I2S = Software-based 10-Base-T Ethernet Driver」の部分です。 | |
802.11のフレーム受信から有線eternetの送信までを追っかけてみました。 | |
# promisc_cb | |
* sendbuffer[]にバッファを詰める | |
# TickPacketSet | |
* propTaskで定期的に呼ばれる。 | |
* TCPのバッファにヘッダを書く | |
# TickTCP | |
* タイマーイベントでmyTimer()から定期的に呼ばれる。 | |
* et_xmitpacketを呼ぶ | |
# et_xmitpacket | |
* crcを付加する | |
* SendPacketDataを呼ぶ | |
# SendPacketData | |
* データをマンチェスタ符号化しながら、DMAでI2Sのバッファにコピーする。 | |
* SendI2SPacketを呼ぶ | |
# SendI2SPacket | |
* I2Sの端子から送信 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment