Changeset 321 for EcnlProtoTool/trunk/mrbgems/mruby-arduino/src/sSys.c
- Timestamp:
- Aug 23, 2017, 9:27:43 AM (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
EcnlProtoTool/trunk/mrbgems/mruby-arduino/src/sSys.c
- Property svn:keywords deleted
-
Property svn:mime-type
changed from
text/x-csrc
totext/x-csrc;charset=UTF-8
r270 r321 1 1 /* 2 * ã·ã¹ãã é¢é£2 * システム関連 3 3 * 4 4 * Copyright (c) 2016 Wakayama.rb Ruby Board developers … … 28 28 29 29 /******************************************************/ 30 /* çµäºããã¾ã*/30 /* 終了させます*/ 31 31 /* System.exit()*/ 32 /* ã¨ã©ã¼å¤ããã©ããå³çµäº*/32 /* エラー値がもどり、即終了*/ 33 33 /******************************************************/ 34 34 mrb_value mrb_system_exit(mrb_state *mrb, mrb_value self) … … 36 36 mrb_raise(mrb, mrb_class_get(mrb, "Sys#exit Called"), "Normal Completion"); 37 37 38 return mrb_nil_value(); /* æ»ãå¤ã¯ç¡ãã§ããã*/39 } 40 41 /******************************************************/ 42 /* 次ã«å®è¡ããã¹ã¯ãªãããã¡ã¤ã«ãVmFilenameã«ã»ãããã¾ãã*/38 return mrb_nil_value(); /*戻り値は無しですよ。*/ 39 } 40 41 /******************************************************/ 42 /* 次に実行するスクリプトファイルをVmFilenameにセットします。*/ 43 43 /* System.setRun( filename )*/ 44 44 /******************************************************/ … … 56 56 RubyFilename[0] = '\0'; 57 57 58 return mrb_nil_value(); /* æ»ãå¤ã¯ç¡ãã§ããã*/59 } 60 61 /******************************************************/ 62 /* ã·ã¹ãã ã®ãã¼ã¸ã§ã³ãåå¾ãã¾ã*/58 return mrb_nil_value(); /*戻り値は無しですよ。*/ 59 } 60 61 /******************************************************/ 62 /* システムのバージョンを取得します*/ 63 63 /* System.version([R])*/ 64 /* å¼æ°ãããã°mrubyã®ãã¼ã·ã§ã³ãè¿ã*/64 /* 引数があればmrubyのバーションを返す*/ 65 65 /******************************************************/ 66 66 mrb_value mrb_system_version(mrb_state *mrb, mrb_value self) … … 78 78 79 79 /******************************************************/ 80 /* ãã©ãã·ã¥ã¡ã¢ãªã«æ¸ãè¾¼ã¿ã¾ã*/80 /*フラッシュメモリに書き込みます*/ 81 81 /* System.push(address, buf, length)*/ 82 /* address: æ¸ãè¾¼ã¿éå§ã¢ãã¬ã¹(0x0000ï½0x00ff)*/83 /* buf: æ¸ãè¾¼ããã¼ã¿*/84 /* length: æ¸ãè¾¼ããµã¤ãº*/85 /* æ»ãå¤*/86 /* 1: æå, 0:失æ*/82 /* address: 書き込み開始アドレス(0x0000~0x00ff)*/ 83 /* buf: 書き込むデータ*/ 84 /* length: 書き込むサイズ*/ 85 /* 戻り値*/ 86 /* 1:成功, 0:失敗*/ 87 87 /******************************************************/ 88 88 mrb_value mrb_system_push(mrb_state *mrb, mrb_value self) … … 115 115 116 116 /******************************************************/ 117 /* ãã©ãã·ã¥ã¡ã¢ãªããèªã¿åºãã¾ã*/117 /*フラッシュメモリから読み出します*/ 118 118 /* System.pop(address, length)*/ 119 /* address: èªã¿è¾¼ã¿ã¢ãã¬ã¹(0x0000ï½0x00ff)*/120 /* length: èªã¿è¾¼ã¿ãµã¤ãº(MAX 32ãã¤ã)*/121 /* æ»ãå¤*/122 /* èªã¿è¾¼ãã ãã¼ã¿*/119 /* address: 読み込みアドレス(0x0000~0x00ff)*/ 120 /* length: 読み込みサイズ(MAX 32バイト)*/ 121 /* 戻り値*/ 122 /* 読み込んだデータ*/ 123 123 /******************************************************/ 124 124 mrb_value mrb_system_pop(mrb_state *mrb, mrb_value self) … … 147 147 148 148 /******************************************************/ 149 /* ãã¡ã¤ã«ãã¼ãã¼ãå¼ã³åºãã¾ã*/149 /* ファイルローダーを呼び出します*/ 150 150 /* System.fileload()*/ 151 151 /******************************************************/ 152 152 mrb_value mrb_system_fileload(mrb_state *mrb, mrb_value self) 153 153 { 154 /* ãã¡ã¤ã«ãã¼ãã¼ã®å¼ã³åºã*/154 /*ファイルローダーの呼び出し*/ 155 155 if (fileloader((const char*)ProgVer, MRUBY_VERSION) == 1) { 156 mrb_full_gc(mrb); /*å¼·å¶GCãå 157 ¥ãã*/ 158 /*å¼·å¶çµäº*/ 156 mrb_full_gc(mrb); /*強制GCを入れる*/ 157 /*強制終了*/ 159 158 mrb_raise(mrb, mrb_class_get(mrb, "Sys#exit Called"), "Normal Completion"); 160 159 } 161 160 162 mrb_full_gc(mrb); /*å¼·å¶GCãå 163 ¥ãã*/ 164 165 return mrb_nil_value(); /*æ»ãå¤ã¯ç¡ãã§ããã*/ 166 } 167 168 /******************************************************/ 169 /* ãªã»ãããã¾ã*/ 161 mrb_full_gc(mrb); /*強制GCを入れる*/ 162 163 return mrb_nil_value(); /*戻り値は無しですよ。*/ 164 } 165 166 /******************************************************/ 167 /* リセットします*/ 170 168 /* System.reset()*/ 171 169 /******************************************************/ 172 170 mrb_value mrb_system_reset(mrb_state *mrb, mrb_value self) 173 171 { 174 system_reboot(REBOOT_USERAPP); /* ãªã»ããå¾ã«ã¦ã¼ã¶ã¢ããªãèµ·åãã*/175 176 return mrb_nil_value(); /* æ»ãå¤ã¯ç¡ãã§ããã*/177 } 178 179 /******************************************************/ 180 /* SD ã«ã¼ãã使ããããã«ãã¾ã: System.useSD*/172 system_reboot(REBOOT_USERAPP); /*リセット後にユーザアプリを起動する*/ 173 174 return mrb_nil_value(); /*戻り値は無しですよ。*/ 175 } 176 177 /******************************************************/ 178 /* SDカードを使えるようにします: System.useSD*/ 181 179 /* System.useSD()*/ 182 /* æ»ãå¤*/183 /* 0: 使ç¨ä¸å¯, 1:使ç¨å¯è½*/180 /*戻り値*/ 181 /* 0:使用不可, 1:使用可能*/ 184 182 /******************************************************/ 185 183 mrb_value mrb_system_useSD(mrb_state *mrb, mrb_value self) … … 188 186 189 187 #if BOARD == BOARD_GR || FIRMWARE == SDBT || FIRMWARE == SDWF || BOARD == BOARD_P05 || BOARD == BOARD_P06 190 ret = sdcard_Init(mrb); /*SD ã«ã¼ãé¢é£ã¡ã½ããã®è¨å®*/188 ret = sdcard_Init(mrb); /*SDカード関連メソッドの設定*/ 191 189 #endif 192 190 … … 195 193 196 194 /******************************************************/ 197 /* WiFi ã¢ã¸ã¥ã¼ã«ESP8266ãã¼ãã使ããããã«ãã¾ã: System.useWiFi*/195 /* WiFiモジュールESP8266ボードを使えるようにします: System.useWiFi*/ 198 196 /* System.useWiFi()*/ 199 /* æ»ãå¤*/200 /* 0: 使ç¨ä¸å¯, 1:使ç¨å¯è½*/197 /*戻り値*/ 198 /* 0:使用不可, 1:使用可能*/ 201 199 /******************************************************/ 202 200 mrb_value mrb_system_useWiFi(mrb_state *mrb, mrb_value self) … … 205 203 206 204 #if (BOARD == FIRMWARE && BOARD == SDWF) || BOARD == BOARD_P05 || BOARD == BOARD_P06 207 ret = esp8266_Init(mrb); /*ESP8266 ãã¼ãé¢é£ã¡ã½ããã®è¨å®*/205 ret = esp8266_Init(mrb); /*ESP8266ボード関連メソッドの設定*/ 208 206 #endif 209 207 … … 212 210 213 211 /******************************************************/ 214 /* å®è¡ãã¦ããmrbãã¡ã¤ã«ãã¹ãåå¾ãã¾ã: System.getMrbPath*/212 /* 実行しているmrbファイルパスを取得します: System.getMrbPath*/ 215 213 /* System.getMrbPath()*/ 216 /* æ»ãå¤*/217 /* å®è¡ãã¦ããmrbãã¡ã¤ã«ãã¹*/214 /*戻り値*/ 215 /* 実行しているmrbファイルパス*/ 218 216 /******************************************************/ 219 217 mrb_value mrb_system_getmrbpath(mrb_state *mrb, mrb_value self) … … 223 221 224 222 /******************************************************/ 225 /* ã©ã¤ãã©ãªãå®ç¾©ãã¾ã*/223 /* ライブラリを定義します*/ 226 224 /******************************************************/ 227 225 void sys_Init(mrb_state *mrb)
Note:
See TracChangeset
for help on using the changeset viewer.