techBASIC

tBeditor v0.45 公開

Icn_tbeditor_128

tBeditor v0.4.5を公開しました。
1年以上ぶりの更新ですね。先日techBASIC 3.2.2が出ましたが、今回の更新はそれとは特に関係なく以下の修正を行いましたhappy01scissors

※tBeditorはtechBASICのByteWorksさん公認のtechBASICのためのエディターです。techBASICのソースコードを色付きで表示できます。

最近はtBeditorでプログラムして、メモ(マックのアプリ)にコピペ。自動的に同期するので、それをiPhone/iPadのメモで開いてtechBASICにコピペしてという使い方が多くなりましたhappy01

ご興味のある方は、自己責任で、ということで、ご利用ください。

ダウンロードは、こちらのページでできます。

【更新内容】

  • 【修正】:end ***の入力時の挙動を修正
  • 【変更】:改行コードをLFに修正

以上ですhappy01paper

過去の説明

----------------
にほんブログ村 科学ブログ ロボットへ
にほんブログ村

| | コメント (0) | トラックバック (0)

mbed HRM1017 (7)techBASICでナイトライダー

Knight700t
「 (3)konashi.jsでナイトライダー」で使った「BLE_Knight_Rider_PIO_Sample※新しいタイプのコードに書き換えないと動作しません)」のmbed HRM1017のPIOのサンプルで、techBASICで動かすサンプルを作ってみたいと思います。

onembedプログラム少し復習

BLE_Knight_Rider_PIO_Sample」のmain.cppで、サービスおよびPIOデータのキャラクタリスティックは、それぞれ

  • KONASHI_SERVICE_UUID = 0xFF00
  • KONASHI_PIO_OUTPUT_UUID = 0x3002

としてあります。
PIOのデータは1バイトで、それぞれのビットでP0_0ピン〜P0_7ピンまでのオン・オフを示すようになっています。
Safariscreensnapz043

twotechBASICのプログラム

techBASICのプログラムは、「 (3)konashi.jsでナイトライダー」のプログラムに似せて組んでみました。

BLE用techBASIC空コード」を元に、まず、サービスおよびPIOデータのキャラクタリスティックをそれぞれ、FF00と0x3002にします。

Tbeditorscreensnapz004

次にPIOの送信データ処理です。nullEventループ関数の中にkonashi.jsと同じ0.1秒間隔でPIOのピンの番号を変えながらsendByteで送信しています。ざっと簡単に説明すると、

  • targetledは、光らせるLEDのピン番号です。
  • shiftdirは、次にピン番号を増すか減らすかの方向をしめしていて、1から4番ピンを行ったり来たりするようにしています。
  • lastTickは最後に送信した時間です。0.1秒間隔で処理するようにしています。
  • isReadyは接続して各種データを取得できたら"1"に、そうでないなら"0"です。
  • sendCharは、送信用のキャラクタリスティックです。3002のPIOデータのキャラクタリスティックが取得できていれば処理するようにしてます。

Tbeditorscreensnapz003

three配線

「 (3)konashi.jsでナイトライダー」と同じです。1から4番ピンを行ったり来たりするようにしてるので、P0_1,P0_2,P0_3,P0_4にLEDを繋げています。
Knight700x

flairWarning

LEDなどを接続する際には、FETなどでドライブするようにしてください。
nRF51822のポートは0.5mAまでしか流せません。
画像のLEDは抵抗入りのLEDを使ってます。

five動作確認

  1. techBASIC起動
  2. 新規にファイルを作って「KnightRider.txt」をペーストします。
  3. 「Console」をタップ:図①
  4. 「Run」をタップ:図②
  5. mbed HRM1017を選択して、接続が完了するとLEDが点灯し始めます。

Img_5502

さて、動きましたでしょうか?
今回は、techBASICを使って、データを送信するプログラムを作ってみました。前回と合わせて、とりあえず受送信のプログラムをtechBASICでやってみました。簡単なプログラムなら、techBASICもそれなりに便利かと思いますので、是非利用してみて下さいhappy01paper

----------------
にほんブログ村 科学ブログ ロボットへ
にほんブログ

Photo
 

| | コメント (0) | トラックバック (0)

RFduino 実験 (6) techBASICで温度計

Temp
前回に引き続きRFduinoのサンプルをtechBASICで動かしてみましたhappy01paper
今回は「Temperature」のプログラムです。

●サンプルプログラムと説明書
最新版のサンプルプログラムと説明書のダウンロード先

●RFduinoのスケッチ
スケッチはRFduinoBLEのサンプルの中にある「Temperature」をそのまま改変無しで動くものを作りましたので、そのままRFduinoに転送して下さい。

●Temperatureのプログラム
上のサンプルプログラム集の中に入っている「Temperature.bas」がそれです。起動すると上のiPhoneのスクショのようになり、摂氏と華氏で温度をRFduinoのチップ上の温度センサーの温度を表示します。

このtechBASICのサンプルプログラムではiPhone Appsの中にあるrfduinoTemperatureのthermometer.pngの温度計の画像を使っているので、この画像をiPhoneまたはiPadに入れた後に起動する必要がありますのでご注意下さい。

温度計画像
Tbeditorscreensnapz002

取得した温度の表示
Tbeditorscreensnapz001

●techBASICについて
techBASICは iOSのアプリで、iPad, iPhoneでBASICでプログラムを作って動かすことが可能なアプリです。techBASICはBLEのアプリも比較的簡単に作れるので、 iPad/iPhoneは持ってるけどマックを持ってないのでプログラムを作れないと言う方にはいいかもしれませんね。
techBASIC App
カテゴリ: ユーティリティ
価格: ¥1,500  (かな?)

●tBeditor
tBeditorは、iPadやiPhone上でtechBASICのプログラムを作るのが大変だったので、パソでできるようにエディタを作りました。マック用、ウインドウズ用を作ってますので使ってみて下さい。

RFduino資料館

---------------

にほんブログ村 科学ブログ ロボットへ
にほんブログ

| | コメント (0) | トラックバック (0)

RFduino 実験 (5) techBASICで動かしてみる

Ledbtn

今回はRFduinotechBASICで動かしてみましたhappy01paper
今回作ったのは前回やった「LED Button」を動かせるプログラムです。

●RFduinoのスケッチ
スケッチはRFduinoBLEのサンプルの中にある「LED Button」をそのまま改変無しで動くものを作りましたので、そのままRFduinoに転送して下さい。

●techBASICについて
techBASICはiOSのアプリで、iPad, iPhoneでBASICでプログラムを作って動かすことが可能なアプリです。techBASICはBLEのアプリも比較的簡単に作れるので、iPad/iPhoneは持ってるけどマックを持ってないのでプログラムを作れないと言う方にはいいかもしれませんね。あと、別売りでAppBuilderもあり、techBASICのプログラムをXcodeでビルドしてアプリを作れるので、App Storeで公開することも可能です。v3.0で日本語にも対応してます。
techBASIC App
カテゴリ: ユーティリティ
価格: ¥1,500  (かな?)

実際、iPhoneでプログラムを書くのは大変だと思います。私は大まかにtBeditorで作った後、iPadで動作テストしながら修正して完成させる感じで作ってます。もしAppBuilderを持ってれば、Xcodeで書いてシミュレータや実機でテストすることも可能です。

●techBASICによるBLEプログラム
BLEのプログラムの全体構成と接続ステップを図にしてみました(クリックすると拡大します)。
Wholecomp Techbasic_ble_sample

具体的にプログラムの流れを、ここで説明するのは困難なのでPDFに簡単にまとめましたので見て下さい。

●LEDbuttonのサンプルプログラム
説明書とサンプルプログラムをダウンロードできるようにしました。

LEDbutton.basというファイルがLED Button用のプログラムです。具体的なプログラムはダウンロドしたファイルを見て勉強してもらうということで、以下に、プログラムの操作方法と、ムービーを貼付けておきましたので見て下さい。

  • 接続されてない状態で「Connect」ボタンを押すとBLE機器を探し接続します
  • 接続中は「Connect」ボタンの表示は「Disconnect」となり、押すと切断されます
  1. RFduinoにRGBシールドを付ける
  2. RFduinoの電源を入れる
  3. LEDbutton.basを起動させる
  4. うまく行けば接続する
  5. GPIO3 OUTPUTのスイッチのオン・オフでRGBシールドのLEDが点灯・消灯します。
  6. RGBシールドのAボタンを押すことで、GPIO5 INPUTが「緑」になります。

RFduino資料館

---------------

----------------
にほんブログ村 科学ブログ ロボットへ
にほんブログ

| | コメント (0) | トラックバック (0)

FirmaSBBLE(浜サブレー) 公開

Safariscreensnapz021

2013/12/24にFirmaSBBLE(浜サブレー) という名前のSBDBTのファームを公開しましたhappy01

これまで、SBDBTのBLE無線フィジカルコンピューティング用のファームとして、SBBLEを開発しました。

今回は、SBDBTとArduinoを繋げてフィジカルコンピューティング的なことを行えるように開発したのが、FirmaSBBLE(浜サブレー) です。

FirmaSBBLE(浜サブレー) は、マイクロコントローラとホストコンピュータ上で通信するための一般的なプロトコルのFirmata (ファルマータ)ライブラリーを利用しています。

StandardFirmataをインストールしたArduinoFirmaSBBLE(浜サブレー) を入れたSBDBTを繋げて使います。

あれこれ簡単に書き上げておきますsign01

  • ArduinoにStandardFirmataを転送(下図)
  • SBDBTにFirmaSBBLEを転送
  • Arduinoの0,1番のRX,TXとSBDBTの7,8番のTX,RXを繋げる(下図)
  • Arduinoは、UNO, Duemilanoveタイプのピンに対応
  • Digital IO, Analog Input, I2C, (UART)に対応
  • PWM/Servoは、対応していません
  • iOSのプログラムはSBBLEやkonashiが動かせるプログラムで基本的には動かせます。
  • PIN配置は図の通りです(下図)

ピン配置

Safariscreensnapz023

接続例

Firmasbbleaaa

StandardFirmataの読み込み
Arduinoscreensnapz002

----------------
にほんブログ村 科学ブログ ロボットへ
にほんブログ村

| | コメント (0) | トラックバック (0)

SBBLE(サブレー) I2C対応版 公開!

Safariscreensnapz016x
SBBLE(サブレー)のI2C対応版を公開しました。
10月くらいにはほぼ完成系だったんですが、ホームページとか、サンプル作る暇がなくて、なかなか公開できませんでした。

例によってkonashiと同じ使い方ができます。
I2CのSCLとSDAは、それぞれSBDBTの8,9番ピンです。

さらに、I2Cの機器をちょっと繋げたい時とか、プルアップ抵抗が面倒なんですが、SBDBTの内部でpioPullup命令で抵抗の有無を切り替えられます。この場合のピン番号は3,4番になりますのでご注意下さい。pull-upのオン・オフは、サンプル集にあるSBBLE用にモディファイしたkonashi SDKを使った場合、i2cPullupという命令を作ってあるので、これを呼ぶだけで大丈夫です。

I2c_assign_2

----------------

にほんブログ村 科学ブログ ロボットへ

| | コメント (4) | トラックバック (0)

「SBDBT BLE for RCB with techBASIC」更新 (2013/9/23)

Icon_ipad2x_2 似たタイトルで連日の公開となってしまいましたが 「SBDBT BLE for RCB with techBASIC」を更新しましたhappy01paper

SBDBT BLE for RCB with techBASICは、ゲームパッドのインターフェイスをもったBluetooth LEでデータを送信するtechBASICのプログラムです。

今回は、iOS7 と techBASIC 3.2が公開されましたが、それぞれで動作確認し、"SBDBT BLE for RCB.bas"の改良を行いました。

Img_3388

更新内容

  • メモリの代わりとして方眼用紙の画像を描画していましたが、techBASIC 3.2で非常に描画に時間がかかるため、コメントアウトしました。
  • 接続完了の判定の改良
  • ほか

●以前書いた関連記事

● ダウンロード

●使い方など

  • ソースは、techBASIC上でも、techBASIC AppBuilderで作ったAppでも、iPhone, iPhone (3inch Retina), iPhone (4inch Rechina), iPad, iPad (Retina)でも、縦向きでも、横向きでも使えるようにしてあります。
  • 画像データはGamepad like UIを使っていますので、こちらの記事を参考に設定して下さい。参考までに「Gamepad like UI v?.txt」も入ってます。
  • 目的のファイルは「SBDBT BLE for RCB v?.txt」です。このファイルをiPhone, iPadのtechBASICで読み込んで使って下さい。
  • ダウンロードしたソースコードやファームは、各自の責任においてご利用下さい。

●SBDBTのファーム

●SBDBTとtechBASIC

techBASIC App
カテゴリ: ユーティリティ
価格: ¥1,300

----------------

にほんブログ村 科学ブログ ロボットへ
にほんブログ村

| | コメント (0) | トラックバック (0)

tBeditor v0.4 公開

Icn_tbeditor_128

tBeditor v0.4を公開しました。
techBASIC 3.2が出ましたが、今回の更新は3.2対応のリファレンスほかhappy01scissors

※tBeditorはtechBASICのByteWorksさん公認のtechBASICのためのエディターです。techBASICのソースコードを色付きで表示できます。

最近はtBeditorでプログラムして、メモ(マックのアプリ)にコピペ。自動的に同期するので、それをiPhone/iPadのメモで開いてtechBASICにコピペしてという使い方が多くなりましたhappy01

ご興味のある方は、自己責任で、ということで、ご利用ください。

ダウンロードは、こちらのページでできます。

【更新内容】

  • 【新規】:タブをスペースに変換する機能を追加
    Tbeditorscreensnapz005
  • 【更新】:techBASIC 3.2のリファレンスに対応
  • 【更新】:エディターエンジンをバージョンアップ

以上ですhappy01paper

過去の説明

----------------
にほんブログ村 科学ブログ ロボットへ
にほんブログ村

| | コメント (1) | トラックバック (0)

「SBDBT BLE for RCB」ファーム更新 (2013/9/23)

Img_2173_800

9/23 「SBDBT BLE for RCB」のファームを更新しましたhappy01paper

SBDBT BLE for RCBは、ゲームパッドのインターフェイスをもったBluetooth LEでデータを送信するiOSデバイスのプログラムで、その受信機となるSBDBTのファームです。

今回は、iOS7 公開されましたが、それによって一部改正が必要になったため修正し公開しました。

更新内容

  • データ受信のプロファイルをWRITEからレスポンスなしのWRITEに変更
  • タップした時LED1を点灯、離した時LED1を消灯するようにした。

●ダウンロード

●SBDBTとtechBASIC

techBASIC App
カテゴリ: ユーティリティ
価格: ¥1,300

----------------

にほんブログ村 科学ブログ ロボットへ
にほんブログ村

| | コメント (0) | トラックバック (0)

SBBLE(サブレー):SBDBTのBLEフィジカルコンピューティング用ファーム公開

Safariscreensnapz016

ブログ書いてませんでしたので、今更ですが、7月1日にSBBLE(サブレー):SBDBTのBLEフィジカルコンピューティング用ファームを公開しましたhappy01paper

SBBLEの紹介ページを作りましたのでご覧下さいhappy01


----------------

にほんブログ村 科学ブログ ロボットへ

| | コメント (0) | トラックバック (0)