スレッドの評価:
  • 回答数:0 平均:0
  • 1
  • 2
  • 3
  • 4
  • 5
DSbasic (DSair用BASIC) 相談室
#11
>iOSで動くChromeは、内部エンジンがSafari(というかWebkit)ですので、Chromeで動くと言うことは、Safariでも普通に動くと言うことなのですが・・・。


ありゃ、そうなのですね。

ウチのはiPhoneSEで試した結果でしたが、safariの設定内にはjava script関連の項目は無かったので何が違うんでしょうね?
返信
#12
秋月でRJ45コネクタを買ってきて、S88も試しました。DSairFirmware_r2j_TEST13c にて print s88get(1) を
1秒毎に表示させ、手動で走らせたD51の位置が表示
されました。
Nucky s88-N Train Detectorを接続してます。

電圧などが表示されている画面でも16ビットのs88の
表示が動作してました。

Basicでも一括してs88の16ビット読み出しが出来ると
嬉しいです。 s88が1台なら s88get(0)=&h0550
みたいな記述が有りかも。
返信
#13
s88getw を追加してみました。
引数は0 (S88-1台目)、1(S88-2台目、ただし現状は無効)

使い方:
s88data = s88getw(0)


.zip   webapp_s88w.zip (サイズ: 31.87 KB / ダウンロード: 5)
返信
#14
s88の16ビット読み出し追加、ありがとうございます。
まだ、試していませんが欲を言うとaccの16ビット
読み出しも有ると論理演算で判断がまとまります。

88data = s88getw(0) and &h0120
Acdata = accgetw(0) and &h0003
Select case (88data * &h10000 + acdata)
Case &h01000001:
Spd 3, 100
Case &h00200002:
Spd 4, 100
End Select
返信
#15
了解です、getaccw(accgetwの方が良いですか?)を追加します。
他にも必要な関数があれば、作りますのでご意見頂ければと思います。

なるべく、汎用性の効く関数にして、細かいことをする場合はBASIC上で関数を定義して使ってもらえればと思います。
DSbasicはJacaScript変換している関係上、関数化や配列といった高機能命令も利用可能です。
返信
#16
すみません、既にリリースされている命令からすると、getaccwでしたね。

s88getwの次にaccgetwと書いてしまいました。

まだ、デビューしたてのDSBasicですのでgets88、gets88wへの変更で、
言語仕様の統一性を行うのはいかがでしょうか。

AccはDSBasicの中でセットした状態を自前で管理すると、他のスマホからの
操作などで状態ズレが発生するので、Arduino の状態がまとめて取れたらと
思った次第です。
返信
#17
通勤電車の中でスマホで毎日コードを書いてます。
ブラウザを閉じなければ、
DSBasicの編集と保存と実行が出来るので、帰宅後寝る前にDSAir2 に接続して課題を見つけ、また通勤電車です。

単線のループに2駅で2車両のすれ違い運転のシナリオで作成中です。
まだ動画のアップにまで到っていません。

スマホではコピペが出来ず、全文字手入力してます。

まだ77行ですが、8車両になると何行になるのやら。
返信
#18
ようやくDSBasicでDSAir2+S88 Train
Decoderでの自動運転出来ました。

Galaxy S9 で2つのブラウザをマルチで表示させて、手動運転もやってみました。
ポイント1、2、3、8が自動で動作し、レイアウト画面でポイント5、6、9、11、12を手動で操作してます。
s88にてセクション1、2、3、4、5、6でC56とD51の位置検出してます。
ターンテーブルはDCで動かしてます。

C56とD51ですれ違いの自動運転、 英国機関車、EF58、EF65、DD51がターンテーブルから手動運転で出てきます。

最後はC56が止まってしまい、OFFしました。
集電問題でした。

返信
#19
自動運転デモ、ありがとうございます!

本日、機能強化の関数を追加しました。

http://powerele.sblo.jp/article/185650324.html
返信
#20
DSairFirmware_r2j_TEST13g をDownloadし、nanoとSD Cardを書き換えました。

タブのボタンの表示が横一列に並ぶようになりました。

”Would save basic data ?”が表示されるようになり、”Save to File”で
Galaxy S9の”マイファイル>内部ストレージ>Download>dsair_userbas.bas”に
保存されていました。

質問ですが、外部エディタで修正した後、DSAir2で読み込む操作は
どのように行なうのでしょうか?
DSair BASIC (DSbasic)のページの説明には 以下の様に書かれています。
”BASICファイルは、SDカードに置けば、ファイル一覧からロードできます。”
Basicの実行画面の上に”RUN/LOAD/SAVE/NEW”の表示があるのですが
こちらでは実行画面の下にPLAYなどのアイコンの表示になってます。
PLAYの右隣のアイコンの意味も不明です。
返信


ページジャンプ:


このスレッドを閲覧中のユーザ: ゲスト: 2