Mbed OS version of IoT.js implementation running on GR-PEACH

ビルド方法

ビルド環境セットアップ

Host PC要件 : Ubuntu 16.04 (64-bit)



1. 以下のコマンドを実行し、下表に示すツールをインストールします。

$ sudo apt update
$ sudo apt upgrade
$ sudo apt install [Package]
PackageVersion
build-essential12.1ubuntu2
gyp0.1+20150913git1f374df9-1ubuntu1
mercurial3.7.3-1ubuntu1
cmake3.5.1-1ubuntu3
git1:2.7.4-0ubuntu1.4
python2.72.7.12-1ubuntu016.04.3
valgrind1:3.11.0-1ubuntu4.2
python-pip8.1.1-2ubuntu0.4

2. 以下のコマンドを実行してMbed OS用ビルドツール mbed CLIをインストールします。

$ sudo -H pip install mbed-cli

3. GNU Arm Embedded Toolchainをインストールします。

  • ダウンロードしたファイルを任意のディレクトリに展開します。
    (以下、展開先を${TOOLCHAIN}と記載します)

tar xjf gcc-arm-none-eabi-6-2017-q2-update-linux.tar.bz2
  • ツールチェインのパスを設定します。

環境変数を使用する場合

$ export GCC_ARM_ROOT=${TOOLCHAIN}/gcc-arm-none-eabi-6-2017-q2-update/bin
$ export PATH=$GCC_ARM_ROOT:$PATH

mbed CLIで指定する場合

$ mbed config -G GCC_ARM_PATH $GCC_ARM_ROOT

iotjs環境のビルド

1. 本プログラムのクローン

下記コマンドを実行し、本プログラムをクローンしてください。

$ hg clone https://HinoNaka@os.mbed.com/users/HinoNaka/code/GR-PEACH_mbed-os-iotjs/

クローンが正常に終了すると、GR-PEACH_mbed-os-iotjs という名称のディレクトリが生成されますので、下記コマンドで当該ディレクトリへ移動してください。

$ cd GR-PEACH_mbed-os-iotjs

(Optional)
GR-PEACH-mbed-os-iotjsディレクトリを指す環境変数 ROOTを設定してください。以降の記載は本環境変数が設定されているものとします。

$ export ROOT=$(PWD)

2. 作業用ディレクトリ(e.g. work)を作成し、当該ディレクトリに移動してください。

$ mkdir -p work
$ cd work

(Optional)
作業用ディレクトリを指す環境変数 WORK を設定してください。以降の記載は本環境変数 が設定されているものとします。

$ export WORK=$(PWD)

3. iotjsのソースツリーを取得します。

$ git clone https://github.com/pando-project/iotjs

クローンが正常に終了するとiotjsというディレクトリが生成されますので、当該ディレクトリに移動してください。

$cd iotjs

コミットID: acae9c8b2d40e7598b8d39b630b79113ce880a7e を取得します。
(下記例では、あわせてposixというブランチを作成し、当該ブランチへ切り替えています)

$ git checkout -b posix acae9c8b2d40e7598b8d39b630b79113ce880a7e

4. mbed-osセットアップ
Mbed OSソースツリーを格納するフォルダを生成し、当該フォルダへ移動します。

$ mkdir -p $(WORK)/iotjs/src/platform/mbedos5
$ cd $(WORK)/iotjs/src/platform/mbedos5

Mbed OSのソースツリーをクローンします。

$ git clone -b mbed-os-5.9 https://github.com/ARMmbed/mbed-os.git

クローンが正常に終了するとmbed-osというディレクトリが生成されますので、当該ディレクトリに移動してください。

$ cd mbed-os

コミットID: 50bd61a4a72332baa6b1bac6caccb44dc5423309 を取得します。
(下記例では、あわせてposixというブランチを作成し、当該ブランチへ切り替えています)

$ git checkout -b posix 50bd61a4a72332baa6b1bac6caccb44dc5423309

5. sd-driverの取得
下記コマンドでmbedos5ディレクトリへ移動します。

$ cd $(WORK)/iotjs/src/platform/mbedos5

sd-driverをクローンします。

$ git clone https://github.com/ARMmbed/sd-driver.git

クローンが正常終了するとsd-driverディレクトリが生成されますので、当該ディレクトリへ移動します。

$ cd sd-driver

コミットID: c8ae38fb291e086232566b0f1372cfb69c277e84 を取得します。
(下記例では、あわせてposixというブランチを作成し、当該ブランチへ切り替えています)

$ git checkout -b posix c8ae38fb291e086232566b0f1372cfb69c277e84

6. mbed-gr-libsの取得
下記コマンドでmbedos5ディレクトリへ移動します。

$ cd $(WORK)/iotjs/src/platform/mbedos5

mbed-gr-libsをクローンします。

$ git clone https://github.com/d-kato/mbed-gr-libs

クローンが正常終了するとmbed-gr-libsディレクトリが生成されますので、当該ディレクトリへ移動します。

$ cd mbed-gr-libs

コミットID: d921d611d596ecaebaab49070ef82450c583309c を取得します。
(下記例では、あわせてposixというブランチを作成し、当該ブランチへ切り替えています)

$ git checkout -b posix d921d611d596ecaebaab49070ef82450c583309c

7. AsciiFONTの取得
下記コマンドでmbedos5ディレクトリへ移動します。

$ cd $(WORK)/iotjs/src/platform/mbedos5

AsciiFONTライブラリを追加します。

$ mbed add https://os.mbed.com/teams/Renesas/code/AsciiFont/

8. iotjs環境のビルド
下記コマンドでiotjs環境のビルドディレクトリに移動し、ビルドを実行します。

$ cd $(WORK)/iotjs
$ ./tools/build.py --no-snapshot

9. GR-PEACH用コードのコピー
(Optional) 既存のiotjs環境に上書きする場合、下記コマンドを実行してください。

$ rm -rf $(WORK)/iotjs/deps/posix
$ rm -rf $(WORK)/iotjs/src/ext-modules
$ rm -rf $(WORK)/iotjs/src/platform/mbedos5/iotjs_def.h

下記コマンドでGR-PEACH用コードをコピーします。

$ cp -pr $(ROOT)/src/iotjs/* $(WORK)/iotjs/

10. lwipパッチ適用
以下コマンドでlwipパッチを適用します。

$ cd $(WORK)/iotjs/src/platform/mbedos5/mbed-os
$ git apply lwip_improve.patch

11. ESP32 TRNG対応パッチ適用
以下コマンドでESP32のTRNGを活用するためのパッチを適用します。

$ cd $(WORK)/iotjs/src/platform/mbedos5/mbed-os
$ git apply trng_support.patch

12. Mbed OS版iotjs環境のビルド
下記コマンドを実行してMbed OS版iotjs環境をビルドします。
(リリースビルドの場合)

$ cd $(WORK)/iotjs/src/platform/mbedos5
$ make clean; make DEBUG=0

(デバッグビルドの場合)

$ cd $(WORK)/iotjs/src/platform/mbedos5
$ make clean; make DEBUG=1

13. ビルドが正常に終了すると、以下の通りバイナリが生成されます。
(リリースビルドの場合)

$ ls -l ${WORK}/iotjs/src/platform/mbedos5/BUILD/RZ_A1H/GCC_ARM-RELEASE/iotjs.bin

(デバッグビルドの場合)

$ ls -l ${WORK}/iotjs/src/platform/mbedos5/BUILD/RZ_A1H/GCC_ARM-DEBUG/iotjs.bin

実行方法

1. GR-PEACHにmicro SDカードを挿入します。

2. GR-PEACHのEthernetポートから遠い側のUSBポートとHost PCをマイクロUSBケーブルで接続します。

3. Host PCでGR-PEACHが『mbed:』ドライブとして認識されたら、iotjs.binをmbedドライブにコピーします。

4. ターミナルS/Wを立上げ、『mbed Serial Port』と接続します。
/media/uploads/HinoNaka/img1.jpg
シリアルポートは下記設定としてください。

Baud rate115200
Data8 bit
Paritynone
Stop1 bit
Flow controlnone

5. 正常に書込みが終了したらGR-PEACHのRESETボタンを押下します。

6. ターミナルS/W上に下記メッセージが表示されます。
/media/uploads/HinoNaka/img2.jpg

7. Enterキーを押下してコード入力モードに移行します。
/media/uploads/HinoNaka/img3.jpg

8. 実行するJavascriptコードをターミナルソフトウェアに貼り付けてEnterキーを押下すると、実行開始します。Javascriptコード例については、test/case.txtを参照ください。

Committer:
Osamu Nakamura
Date:
Thu Jul 18 10:43:16 2019 +0900
Revision:
4:52c937978bb3
Parent:
3:b4a4111c9e15
Remove unnecessary documents

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Osamu Nakamura 3:b4a4111c9e15 1 ======================
Osamu Nakamura 3:b4a4111c9e15 2 POSIX‘Ήž_\‘¢ŠT—v
Osamu Nakamura 3:b4a4111c9e15 3 ======================
Osamu Nakamura 3:b4a4111c9e15 4
Osamu Nakamura 3:b4a4111c9e15 5 POSIX ‘Ήž•”•ª‚̍\‘¢ŠT—v‚ðà–¾‚µ‚Ü‚·B
Osamu Nakamura 3:b4a4111c9e15 6
Osamu Nakamura 3:b4a4111c9e15 7 ¡ƒtƒ@ƒCƒ‹\¬
Osamu Nakamura 3:b4a4111c9e15 8
Osamu Nakamura 3:b4a4111c9e15 9 ƒtƒ@ƒCƒ‹\¬‚͉º‹L‚ÌŽO‘w\‘¢‚É‚µ‚Ä‚¢‚Ü‚·B
Osamu Nakamura 3:b4a4111c9e15 10
Osamu Nakamura 3:b4a4111c9e15 11 I/F ‘wF posix4.h / posix4.cpp ¦ POSIX ƒŒƒCƒ„[
Osamu Nakamura 3:b4a4111c9e15 12 peripheral_io.h ¦ ƒyƒŠƒtƒFƒ‰ƒ‹“üo—Í I/F
Osamu Nakamura 3:b4a4111c9e15 13 •â•‘wF posix4_aux.h / posix4_target.h ¦ Še platform ê—pƒwƒbƒ_‚É•ªŠò
Osamu Nakamura 3:b4a4111c9e15 14 ŽÀ‘•‘wF posix4mbed.h / posix4mbed.cpp ¦ mbed-os —p POSIX ƒŒƒCƒ„[
Osamu Nakamura 3:b4a4111c9e15 15 peripheral_io_4mbed.h / peripheral_io_4mbed.cpp ¦ mbed-os —p ƒyƒŠƒtƒFƒ‰ƒ‹“üo—Í
Osamu Nakamura 3:b4a4111c9e15 16 primitives.h / primitives.cpp ¦ mbed-os —p ƒvƒŠƒ~ƒeƒBƒuŒQ
Osamu Nakamura 3:b4a4111c9e15 17
Osamu Nakamura 3:b4a4111c9e15 18 [I/F ‘w]
Osamu Nakamura 3:b4a4111c9e15 19
Osamu Nakamura 3:b4a4111c9e15 20 Eposix4.h (ŠO•”ŒöŠJ—pƒwƒbƒ_ƒtƒ@ƒCƒ‹)
Osamu Nakamura 3:b4a4111c9e15 21 ¡‰ñ‘Ήž‚Ì POSIX I/F ‚Å‚·Biotjs ‚Å•K—v‚È‚à‚Ì‚Ì‚Ý‚Æ‚È‚è‚Ü‚·B
Osamu Nakamura 3:b4a4111c9e15 22 ‚±‚̃tƒ@ƒCƒ‹‚ð•ÒW‚·‚邱‚Æ‚ÍŠî–{“I‚É‚ ‚è‚Ü‚¹‚ñB
Osamu Nakamura 3:b4a4111c9e15 23
Osamu Nakamura 3:b4a4111c9e15 24 Eposix4.cpp
Osamu Nakamura 3:b4a4111c9e15 25 POSIX I/F ‚Æ‘ÎÛ platform Œü‚¯‚ÌŽÀ‘•‚Ƃ̃uƒŠƒbƒW‚Å‚·B
Osamu Nakamura 3:b4a4111c9e15 26 ‚±‚̃tƒ@ƒCƒ‹‚ð•ÒW‚·‚邱‚Æ‚ÍŠî–{“I‚É‚ ‚è‚Ü‚¹‚ñB
Osamu Nakamura 3:b4a4111c9e15 27
Osamu Nakamura 3:b4a4111c9e15 28 Eperipheral_io.h (ŠO•”ŒöŠJ—pƒwƒbƒ_ƒtƒ@ƒCƒ‹)
Osamu Nakamura 3:b4a4111c9e15 29 ƒyƒŠƒtƒFƒ‰ƒ‹“üo—Í‚Ì I/F ‚Å‚·Biotjs ‚Å•K—v‚È‚à‚Ì‚Ì‚Ý‚Æ‚È‚è‚Ü‚·B
Osamu Nakamura 3:b4a4111c9e15 30 ŠÂ‹«‚É‹­‚­ˆË‘¶‚·‚邽‚߁Aplatform ŠÂ‹«‚ɍ‡‚킹‚½ƒtƒ@ƒCƒ‹‚ðƒCƒ“ƒNƒ‹[ƒh‚µ‚Ü‚·B
Osamu Nakamura 3:b4a4111c9e15 31 ‚±‚̃tƒ@ƒCƒ‹‚ð•ÒW‚·‚邱‚Æ‚ÍŠî–{“I‚É‚ ‚è‚Ü‚¹‚ñB
Osamu Nakamura 3:b4a4111c9e15 32
Osamu Nakamura 3:b4a4111c9e15 33
Osamu Nakamura 3:b4a4111c9e15 34 [•â•‘w]
Osamu Nakamura 3:b4a4111c9e15 35
Osamu Nakamura 3:b4a4111c9e15 36 Eposix4_aux.h (I/F ŠOŒü‚«)
Osamu Nakamura 3:b4a4111c9e15 37 POSIX I/F ‚Ì‚½‚߂̕⏕ƒtƒ@ƒCƒ‹‚Å‚·B
Osamu Nakamura 3:b4a4111c9e15 38 platform ŠÂ‹«‚ɍ‡‚킹‚½ƒtƒ@ƒCƒ‹‚ðƒCƒ“ƒNƒ‹[ƒh‚µ‚Ü‚·B
Osamu Nakamura 3:b4a4111c9e15 39 ƒCƒ“ƒNƒ‹[ƒhæ‚̃tƒ@ƒCƒ‹“à‚É platform ‚Å•s‘«‚µ‚Ä‚¢‚é\‘¢‘Ì‚È‚Ç‚ð’è‹`‚µ‚Ü‚·B
Osamu Nakamura 3:b4a4111c9e15 40 —Ⴆ‚΁A‘ÎÛ platform ‚É‚æ‚Á‚Ä‚Í signal.h ‚â sys/time.h ‚È‚Ç‚ª
Osamu Nakamura 3:b4a4111c9e15 41 –³‚¢‚©‚à‚µ‚ê‚Ü‚¹‚ñB
Osamu Nakamura 3:b4a4111c9e15 42 ‚à‚µ posix4.h “à‚É’¼Ú #include <`.h> ‚ð‹Lq‚µ‚Ä‚¢‚½‚Æ‚·‚é‚ƁA
Osamu Nakamura 3:b4a4111c9e15 43 ‘ÎÛ platform ‚ª‘‚¦‚邲‚ƂɁA‚»‚ÌŽü•Ó‚ð #ifdef/#endif ‚ň͂Á‚Ä‚¢‚­
Osamu Nakamura 3:b4a4111c9e15 44 ‚±‚Æ‚É‚È‚èA–{—ˆ‚Ì–Ú“I‚Å‚ ‚é I/F ‚Ì•”•ª‚ª‚¾‚ñ‚¾‚ñ‚ڂ₯‚Ä‚¢‚Á‚Ä‚µ‚Ü‚¢‚Ü‚·B
Osamu Nakamura 3:b4a4111c9e15 45 ‚»‚±‚сƒCƒ“ƒwƒbƒ_‚Å‚ ‚é posix4.h ‚𒼐ڕҏW‚µ‚ÄŠg’£‚µ‚Ä‚¢‚­‚Ì‚Å‚Í‚È‚­A
Osamu Nakamura 3:b4a4111c9e15 46 ‚±‚̕⏕ƒtƒ@ƒCƒ‹‚©‚çŠe platform ê—pƒwƒbƒ_‚ðƒCƒ“ƒNƒ‹[ƒh‚µA‚»‚±‚ɍ·•ª‚Ì‚Ý
Osamu Nakamura 3:b4a4111c9e15 47 ‚ð‹Lq‚µ‚ÄŠg’£‚µ‚Ä‚¢‚­•ûŽ®‚Æ‚µ‚Ä‚¢‚Ü‚·B
Osamu Nakamura 3:b4a4111c9e15 48 ‚¿‚È‚Ý‚É mbed-os ‚̏ꍇ‚́AŽŸ‚̂悤‚É‚È‚Á‚Ä‚¢‚Ü‚·B
Osamu Nakamura 3:b4a4111c9e15 49
Osamu Nakamura 3:b4a4111c9e15 50 #if defined(__MBED_OS__)
Osamu Nakamura 3:b4a4111c9e15 51 #include "platform/mbedos5/posix4mbed_aux.h"
Osamu Nakamura 3:b4a4111c9e15 52 #endif // #if defined(__MBED_OS__)
Osamu Nakamura 3:b4a4111c9e15 53
Osamu Nakamura 3:b4a4111c9e15 54 Eposix4_target.h (I/F “àŒü‚«)
Osamu Nakamura 3:b4a4111c9e15 55 ‘ÎÛ platform ‚Ì‘I‘ð‚ðs‚¤ƒtƒ@ƒCƒ‹‚Å‚·B
Osamu Nakamura 3:b4a4111c9e15 56 Šî–{“I‚É‚Í‘ÎÛ platform —p‚ÉŽÀ‘•‚µ‚½ƒtƒ@ƒCƒ‹‚ðƒCƒ“ƒNƒ‹[ƒh‚·‚é‚Ì‚Ý‚Å‚·B
Osamu Nakamura 3:b4a4111c9e15 57 «—ˆ‘ÎÛ platform ‚ª‘‚¦‚éê‡‚́AƒCƒ“ƒNƒ‹[ƒhæ‚̃tƒ@ƒCƒ‹“à‚ɍ·•ª‚Ì‚Ý‚ð‹Lq
Osamu Nakamura 3:b4a4111c9e15 58 ‚µ‚ÄŠg’£‚µ‚Ä‚¢‚«‚Ü‚·B
Osamu Nakamura 3:b4a4111c9e15 59 ‚¿‚È‚Ý‚É mbed-os ‚̏ꍇ‚́AŽŸ‚̂悤‚É‚È‚Á‚Ä‚¢‚Ü‚·B
Osamu Nakamura 3:b4a4111c9e15 60
Osamu Nakamura 3:b4a4111c9e15 61 #if defined(__MBED_OS__)
Osamu Nakamura 3:b4a4111c9e15 62 #include "./platform/mbedos5/posix4mbed.h"
Osamu Nakamura 3:b4a4111c9e15 63 #endif // #if defined(__MBED_OS__)
Osamu Nakamura 3:b4a4111c9e15 64
Osamu Nakamura 3:b4a4111c9e15 65
Osamu Nakamura 3:b4a4111c9e15 66 [mbed-os —pŽÀ‘•‘w]
Osamu Nakamura 3:b4a4111c9e15 67
Osamu Nakamura 3:b4a4111c9e15 68 Eposix4mbed.h
Osamu Nakamura 3:b4a4111c9e15 69 Eposix4mbed.cpp
Osamu Nakamura 3:b4a4111c9e15 70 mbed-os Œü‚¯‚ÌŽÀ‘•ƒtƒ@ƒCƒ‹‚Å‚·B
Osamu Nakamura 3:b4a4111c9e15 71
Osamu Nakamura 3:b4a4111c9e15 72 Eperipheral_io_4mbed.h
Osamu Nakamura 3:b4a4111c9e15 73 Eperipheral_io_4mbed.cpp
Osamu Nakamura 3:b4a4111c9e15 74 mbed-os —p‚̃yƒŠƒtƒFƒ‰ƒ‹“üo—ÍŽÀ‘•ƒtƒ@ƒCƒ‹‚Å‚·B
Osamu Nakamura 3:b4a4111c9e15 75
Osamu Nakamura 3:b4a4111c9e15 76 Eprimitives.h
Osamu Nakamura 3:b4a4111c9e15 77 Eprimitives.cpp
Osamu Nakamura 3:b4a4111c9e15 78 ã‹L‚ðŽÀ‘•‚·‚邽‚߂̃vƒŠƒ~ƒeƒBƒuŒQ‚ðŽÀ‘•‚µ‚½ƒtƒ@ƒCƒ‹‚Å‚·B
Osamu Nakamura 3:b4a4111c9e15 79
Osamu Nakamura 3:b4a4111c9e15 80
Osamu Nakamura 3:b4a4111c9e15 81 ¡ŽÀ‘•‘w‚Ì–¼‘O‹óŠÔ
Osamu Nakamura 3:b4a4111c9e15 82
Osamu Nakamura 3:b4a4111c9e15 83 ŽÀ‘••”•ª‚̓tƒ@ƒCƒ‹ƒ[ƒJƒ‹‚È helper –¼‘O‹óŠÔ‚ðœ‚«A‚·‚×‚Ä mbed –¼‘O‹óŠÔ‚É
Osamu Nakamura 3:b4a4111c9e15 84 ‘®‚µ‚Ä‚¢‚Ü‚·B
Osamu Nakamura 3:b4a4111c9e15 85 ˆÈ‰º‚Í‚»‚ꂼ‚ê‚Ì–¼‘O‹óŠÔ‚ÌŠT—v‚Å‚·B
Osamu Nakamura 3:b4a4111c9e15 86
Osamu Nakamura 3:b4a4111c9e15 87 mbed:: - mbed-os
Osamu Nakamura 3:b4a4111c9e15 88 mbed::debug:: - ƒfƒoƒbƒOŠÖ˜A
Osamu Nakamura 3:b4a4111c9e15 89 mbed::posix:: - POSIX ƒŒƒCƒ„[
Osamu Nakamura 3:b4a4111c9e15 90 mbed::posix::obsolete:: - ”ñ„§‚Ȋ֐”
Osamu Nakamura 3:b4a4111c9e15 91 mbed::posix::clock:: - ŽžŒvŠÖ˜A
Osamu Nakamura 3:b4a4111c9e15 92 mbed::posix::pthread:: - pthread ŠÖ˜A
Osamu Nakamura 3:b4a4111c9e15 93 mbed::posix::pthread::attr:: - pthread ‘®«
Osamu Nakamura 3:b4a4111c9e15 94 mbed::posix::pthread::cond:: - pthread ðŒ•Ï”
Osamu Nakamura 3:b4a4111c9e15 95 mbed::posix::pthread::condattr:: - pthread ðŒ•Ï”‘®«
Osamu Nakamura 3:b4a4111c9e15 96 mbed::posix::pthread::mutex:: - pthread ƒ~ƒ…[ƒeƒbƒNƒX
Osamu Nakamura 3:b4a4111c9e15 97 mbed::posix::pthread::rwlock:: - pthread “ǂݏ‘‚«§Œä
Osamu Nakamura 3:b4a4111c9e15 98 mbed::posix::sock:: - socket ŠÖ˜A
Osamu Nakamura 3:b4a4111c9e15 99 mbed::posix::sys:: - system ŠÖ˜A
Osamu Nakamura 3:b4a4111c9e15 100 mbed::linux:: - linux ƒŒƒCƒ„[
Osamu Nakamura 3:b4a4111c9e15 101 mbed::linux::epoll:: - epoll ‹@\
Osamu Nakamura 3:b4a4111c9e15 102 mbed::linux::sock:: - socket ŠÖ˜A
Osamu Nakamura 3:b4a4111c9e15 103 mbed::linux::sys:: - system ŠÖ˜A
Osamu Nakamura 3:b4a4111c9e15 104 mbed::linux::debug:: - ƒfƒoƒbƒOŠÖ˜A
Osamu Nakamura 3:b4a4111c9e15 105 mbed::overridden:: - ’u‚«Š·‚¦ŠÖ˜A
Osamu Nakamura 3:b4a4111c9e15 106 mbed::nic:: - NIC ŠÖ˜A
Osamu Nakamura 3:b4a4111c9e15 107
Osamu Nakamura 3:b4a4111c9e15 108 mbed::video:: - ƒJƒƒ‰§ŒäŠÖ˜A
Osamu Nakamura 3:b4a4111c9e15 109 mbed::lcd:: - LCD§ŒäŠÖ˜A
Osamu Nakamura 3:b4a4111c9e15 110 mbed::jpeg:: - JPEG•ÏŠ·ŠÖ˜A
Osamu Nakamura 3:b4a4111c9e15 111 mbed::graphics:: - ƒOƒ‰ƒtƒBƒbƒNƒX•`‰æŠÖ˜A
Osamu Nakamura 3:b4a4111c9e15 112
Osamu Nakamura 3:b4a4111c9e15 113 mbed::primitives:: - ƒvƒŠƒ~ƒeƒBƒu‚È•”•iŠÖ˜A
Osamu Nakamura 3:b4a4111c9e15 114
Osamu Nakamura 3:b4a4111c9e15 115 helper:: - ƒwƒ‹ƒp (ƒtƒ@ƒCƒ‹ƒ[ƒJƒ‹)
Osamu Nakamura 3:b4a4111c9e15 116 mbed::bugfix:: - •s‹ï‡‹zŽûŠÖ˜A
Osamu Nakamura 3:b4a4111c9e15 117
Osamu Nakamura 3:b4a4111c9e15 118
Osamu Nakamura 3:b4a4111c9e15 119 ¡‚»‚Ì‘¼“Á‹LŽ–€
Osamu Nakamura 3:b4a4111c9e15 120
Osamu Nakamura 3:b4a4111c9e15 121 posix4.h ‚ðƒCƒ“ƒNƒ‹[ƒh‚·‚邱‚Æ‚Å OVRDN_API ‚É‘®‚·‚éŠÖ”‚ÍŽ©“®‚Å’u‚«Š·‚¦‚é
Osamu Nakamura 3:b4a4111c9e15 122 ‚±‚Æ‚ª‚Å‚«‚Ü‚·B
Osamu Nakamura 3:b4a4111c9e15 123
Osamu Nakamura 3:b4a4111c9e15 124 ‚½‚¾‚µ gettimeofday() ŠÖ”‚Í LIBC ‚𒼐ڒu‚«Š·‚¦‚đΉž‚µ‚Ä‚¢‚Ü‚·B
Osamu Nakamura 3:b4a4111c9e15 125 ‚±‚ê‚͉º‹Lƒtƒ@ƒCƒ‹‚ɕύX‚ð‰Á‚¦‚½‚­‚È‚©‚Á‚½‚½‚ß‚Å‚·B
Osamu Nakamura 3:b4a4111c9e15 126 iotjs / deps / jerry / jerry-port / default / default-date.c
Osamu Nakamura 3:b4a4111c9e15 127
Osamu Nakamura 3:b4a4111c9e15 128 ‚Ü‚½Atcp_write() ŠÖ”‚Í linker ƒIƒvƒVƒ‡ƒ“‚Å lwip ‚̊֐”‚ðƒ‰ƒbƒv‚µ‚Ä‚¢‚Ü‚·B
Osamu Nakamura 3:b4a4111c9e15 129 ‚±‚ê‚Í mbed-os ‚Ì TCPSocket ƒNƒ‰ƒX‚É FIN ƒpƒPƒbƒg‚𑗐M‚·‚郁ƒ\ƒbƒh‚ª–³‚¢‚½‚ß‚Å‚·B
Osamu Nakamura 3:b4a4111c9e15 130 ‘—Mƒf[ƒ^‚ª‹^Ž—“I‚È FIN ƒpƒPƒbƒg‚È‚çA‚»‚̃f[ƒ^‚𑗐M‚·‚é‘ã‚í‚è‚É tcp_send_fin()
Osamu Nakamura 3:b4a4111c9e15 131 ŠÖ”‚ðŒÄ‚яo‚·‚悤‚É‚µ‚Ä‚¢‚Ü‚·B
Osamu Nakamura 3:b4a4111c9e15 132
Osamu Nakamura 3:b4a4111c9e15 133 mbed-os / features / FEATURE_LWIP / lwip-interface / lwip / src / core / lwip_tcp_out.c
Osamu Nakamura 3:b4a4111c9e15 134
Osamu Nakamura 3:b4a4111c9e15 135
Osamu Nakamura 3:b4a4111c9e15 136 ˆÈã