ab.com コミュニティ

ActiveBasicを通したコミュニケーション
現在時刻 - 2024年4月18日(木) 23:23

全ての表示時間は UTC+09:00 です




新しいトピックを投稿する  トピックへ返信する  [ 20 件の記事 ]  ページ移動 1 2 次へ
作成者 メッセージ
投稿記事Posted: 2006年5月17日(水) 09:10 
オフライン

登録日時: 2006年5月17日(水) 09:00
記事: 4
お住まい: 愛知県
はじめまして。hiroといいます。
N88BASICはよくゲームを作って遊んでおりましたくちであります。最近はとんとプログラム作りから離れていたのですが、こんなソフトが無料であるのを発見し、プログラミング意欲が再び沸いてきている今日この頃です。
ところで、このactivebasicを使ってRS232Cからのデータ取り込みするプログラムを組みたいと思っているのですが、初心者の私では難しいでしょうか。単純に取り込まれてきたデータを画面に表示し、それをcsv形式で保存できればいいのですが。どなたかご教授願います。


通報する
ページトップ
 記事の件名:
投稿記事Posted: 2006年5月17日(水) 17:01 
N88経験者なら、ActiveBasic Ver.2(AB2)を使えば、10行程度のコーディング
で可能だと思います。(受信割込みを使わないのが条件)

プログラミング意欲が有る様なので、サンプルコードは乗せません、。

AB3以上では、WindowsAPIの知識が必要です。
AB2で感を取り戻して、次のステップでAB4を使用しGUIに挑戦してみては
如何でしょう。


予断ですが、ハイパーターミナル等を使えば良いのでは?


通報する
ページトップ
   
 記事の件名: そうなんですか
投稿記事Posted: 2006年5月18日(木) 12:12 
オフライン

登録日時: 2006年5月17日(水) 09:00
記事: 4
お住まい: 愛知県
Takoさん返信ありがとうございます。RS232Cからのデータ取り込みってそんなに短いコーディングで可能なんですか。
なにせN88BASIC時代は簡単なゲームを作って遊んでいただけでRS232Cからのデータ取り込みなんてやったことがないので、皆目検討がつきません。ぜひサンプルコードを教えていただけないでしょうか。なにせ周りに相談する人はいませんので。

>予断ですが、ハイパーターミナル等を使えば良いのでは?

なんですが、一度自分でつくってみたいのです。自分で作ったソフトが動いた時の感動を再び味わいたいのです(ちょっとおおげさですね)。特に実用になるものでしたらなおさらです。

>AB3以上では、WindowsAPIの知識が必要です。
>AB2で感を取り戻して、次のステップでAB4を使用しGUIに挑戦してみては
>如何でしょう。

まさにその通りで将来的にはGUIのソフトを作ってみたいです。activebasicオフィシャルユーザーズガイドを買おうと思っていますが、Ver4でも使えますか?あの本はVer3で書かれているものだとあったので・・・。それにはこのような外部入出力に関することが書いてあればよいのですが。そのほかになにか参考になるような書籍等をご存知でしたら紹介していただけないでしょうか。


通報する
ページトップ
投稿記事Posted: 2006年5月18日(木) 15:07 
昔ABで書いたコードの一部抜粋です。
現在はABを使っていないため、ちょっと意味がわからない所もあったので、
不安たっぷりながら、書き込みしてみます。
なお、コンパイル済みのソースから抜粋してますが、
ほんとに一部抜粋ですので、適当に足りない部分は補完して下さい。
(無責任ですいません)

以下、怪しい解説・・・

基本的には、「CreateFile」でファイルではなく、"COM1"などの指定して、
COMのオープンを行います。
その後は、ファイルの読み書きと同じ要領でCOMにアクセスできます。

とりあえず以下をどっかに書いていただいて、、、
(意味はおいおい調べてください) COMのオープンはこちら 受信はこんな感じでしょうか 送信は想像力でなんとかしてください、、、、^^;
少しでもお役に立てれば幸いです。


通報する
ページトップ
   
 記事の件名:
投稿記事Posted: 2006年5月18日(木) 15:30 
>データ取り込みなんてやったことがないので、皆目検討がつきません。ぜひサン
>プルコードを教えていただけないでしょうか。なにせ周りに相談する人はいません
>ので。

AB2でしたら、下記のコードで受信しファイル化できます。(試していませんが・・・)

Open COM1 AS #1
Open RX_File.CSV FOR OUTPUT As #2
For Rx_Loop=1 To 10
Line Input #1,Rx$
Print Rx$
Print #2,Rx$
Next
Close #2
Close #1

RS-232Cはファイルと同様に扱います。
受信データは、 「データ + CR + LF」 で1行の処理になります。
ボーレート等の設定は、AB2コンパイラで行うか、レジストリの操作になります。
(プログラムで設定するには、APIの知識が有れば可能です。)

>なんですが、一度自分でつくってみたいのです。自分で作ったソフトが動いた時
>の感動を再び味わいたいのです(ちょっとおおげさですね)。特に実用になるもの
>でしたらなおさらです

良いですね。初めてプログラムした気持ちを思い出します。
N88Basicをお使いでしたら、おそらく私の方が古い人間ですよぉ。
がんばってください。

私は書籍は購入していません。
ヘルプと、過去ログ、住人のホームページ等で十分でした。


通報する
ページトップ
   
投稿記事Posted: 2006年5月19日(金) 10:07 
オフライン

登録日時: 2006年5月17日(水) 09:00
記事: 4
お住まい: 愛知県
サンプルコードを紹介していただきまして本当にありがとうございました。それにしてもWindowsAPIではこれだけのことを宣言しておいてやる必要があるわけですか。こりゃ勉強しがいがありそうです。でもコメントつけてくれたおかげでなんとなくイメージが湧きそうです。がんばってみます。ここまで親切に教えていただいて感謝感激です。ありがとうございました。

>N88Basicをお使いでしたら、おそらく私の方が古い人間ですよぉ。

私が中学生の時(今から20数年前です)学校にPC8001が1台あり、ベーシックマガジンやI/O、ASCII(なつかしい!)に載っていたゲームのプログラムを打ち込んでは遊び、まずパソコンを触るのをあきらめるだろうと思い、親にPC8801を買わせ、思い通りに”お前にやる”の言葉をもらい、みようみまねでBASICを覚え、ゲームで遊ぶよりゲームを作るほうに喜びを感じておりましたが、PC98時代になるとパソコンから離れてしまいほとんどパソコンを触らないようになり、大学生になると今度はMacintoshにはまり、会社に入るとWINDOWSマシンに転向し、現在に至っております。


通報する
ページトップ
投稿記事Posted: 2006年5月21日(日) 14:27 
インクルードや、初期設定は、どこで調べればよろしいでしょうか?
ご存知の方よろしくお願いいたします。


通報する
ページトップ
   
 記事の件名:
投稿記事Posted: 2006年5月22日(月) 08:55 
>>インクルードや、初期設定は、どこで調べればよろしいでしょうか?

インクルードって、何をインクルードするのですか?

RS-232CのAPIでしたらMSCのMSDNが良いと思います。

http://msdn.microsoft.com/library/defau ... serial.asp


通報する
ページトップ
   
 記事の件名:
投稿記事Posted: 2006年5月22日(月) 09:22 
参考までに、私はBorland DELPHI 2に付属されていたWin32HLP(日本語版
)を調べ、最新性を確認する為にMSDNを利用しています。


>>hiro様
私が中学の時は、ご指摘の雑誌に付属されていたTiny BASIC(ソノシート)を
TK-80(コンポBS)に読み込ませBasicを走らせていました。
その後、PET→APPLE-II →PC-8001って感じです。


通報する
ページトップ
   
投稿記事Posted: 2006年5月22日(月) 16:26 
Takoさん
偶然に、私もRS-232C(バーコードリーダー)でチャレンジしており
通常のOpenや Input#1 などでうまくいかなかったので、初期設定の解釈が
ぬけているのかなと思って書きました。
(ちなみに、ハイパーテキストではきちんと応答文字が出てきます。)

include "BASIC"
とか、特別なサブファイルを指定するような設定がありましたので
RS232Cは必要かなと思い、これについて伺おうとしてました。
APIを用いたものはまだ、考えていません。

ヘルプに、なかなか書いていない部分なので、ぜひこの掲示板で伺いたいなと
思いました。(しかし実際掲示板でもなかなか分かる方がいないようです)





> >>インクルードや、初期設定は、どこで調べればよろしいでしょうか?
>
> インクルードって、何をインクルードするのですか?
>
> RS-232CのAPIでしたらMSCのMSDNが良いと思います。
>
> http://msdn.microsoft.com/library/defau ... serial.asp


通報する
ページトップ
   
 記事の件名:
投稿記事Posted: 2006年5月22日(月) 19:33 
Rs-232C系のコマンドを使用するには、AB2を使用する必要があります。

http://www.activebasic.com/activebasic2.6/index.html

AB3、AB4ではサポートしていません。(APIが必要です。)
AB2でのRS232C制御(と言うより文字変数の取り扱い)は、いろいろと癖が有ります。
不可能では有りませんが、あまりお勧めしません。(特に送信が必要な時。)
昔の掲示板に対処方法を書き込みをした事がありますが、消えてしまったのかなぁ??

あと、割り込み系のON Com 等は使用できません。

使った事はありませんが、99Basicや98エミュレーター等を検討するか、
前記に、せっかくAPIの書き込みが有るので、APIに挑戦してみては如何でしょう??


通報する
ページトップ
   
 記事の件名: すごいですね。
投稿記事Posted: 2006年5月23日(火) 09:36 
オフライン

登録日時: 2006年5月17日(水) 09:00
記事: 4
お住まい: 愛知県
Tako様

> 私が中学の時は、ご指摘の雑誌に付属されていたTiny BASIC(ソノシート)を
> TK-80(コンポBS)に読み込ませBasicを走らせていました。
> その後、PET→APPLE-II →PC-8001って感じです。

TK-80からですか。すごいですね。これってPC8001の元になった基板にテンキーみたいなのと7セグ表示(だったっけ?)だけのPCでしたよね?写真でしかみたことないです。でも今となっては写真でも見たことある人も少ないでしょうね。むちゃくちゃなつかしい!カセットテープに”ピーガー”とプログラムを保存(録音?)していた時代からえらく時代は進んだものです。自分も歳をとるのがわかります。(^^;)


通報する
ページトップ
投稿記事Posted: 2006年5月23日(火) 22:51 
私はAB2使いです。

なかなか、APIの領域に入り込めません。
なにから勉強しようかなという感じです。

実は、RS-232Cからのデータを読み込んで、キーボードからの入力と
同じくしようという常駐型のアプリを作ろうと思ってたのですが。

APIがないと、この先ができなそうなことに気付き、これからAPIはじめようと
思います。

ご指導ありがとうございました。




Rs-232C系のコマンドを使用するには、AB2を使用する必要があります。
>
> http://www.activebasic.com/activebasic2.6/index.html
>
> AB3、AB4ではサポートしていません。(APIが必要です。)
> AB2でのRS232C制御(と言うより文字変数の取り扱い)は、いろいろと癖が有ります。
> 不可能では有りませんが、あまりお勧めしません。(特に送信が必要な時。)
> 昔の掲示板に対処方法を書き込みをした事がありますが、消えてしまったのかなぁ??
>
> あと、割り込み系のON Com 等は使用できません。
>
> 使った事はありませんが、99Basicや98エミュレーター等を検討するか、
> 前記に、せっかくAPIの書き込みが有るので、APIに挑戦してみては如何でしょう??


通報する
ページトップ
   
 記事の件名: やってみました。
投稿記事Posted: 2007年8月29日(水) 15:56 
AB初心者です。
簡単なコードでRS232Cでデータを取り込めるとのことで
AB2にて下記コードを入力して、デバッグモードにて実行してみました。
結果、一行目に”型が違います”というエラーが出ました。
何が悪いのか分かりませんので教えてください。


> AB2でしたら、下記のコードで受信しファイル化できます。(試していませんが・・・)
>
> Open COM1 AS #1
> Open RX_File.CSV FOR OUTPUT As #2
> For Rx_Loop=1 To 10
> Line Input #1,Rx$
> Print Rx$
> Print #2,Rx$
> Next
> Close #2
> Close #1


通報する
ページトップ
   
 記事の件名:
投稿記事Posted: 2007年8月29日(水) 18:09 
実際に通信して試せる環境が無いので、1台で動かしてみました。
下記でエラーはでませんが、どうでしょう?
コード:
 Open "COM1" AS #1
 Open "RX_File.CSV" FOR OUTPUT As #2
     For Rx_Loop=1 To 10
         Line Input #1,Rx$
         Print Rx$
         Print #2,Rx$
     Next
 Close #2
 Close #1


通報する
ページトップ
   
期間内表示:  ソート  
新しいトピックを投稿する  トピックへ返信する  [ 20 件の記事 ]  ページ移動 1 2 次へ

全ての表示時間は UTC+09:00 です


オンラインデータ

このフォーラムを閲覧中のユーザー: なし & ゲスト[14人]


トピック投稿:  可
返信投稿:  可
記事編集: 不可
記事削除: 不可
ファイル添付: 不可

検索:
ページ移動:  
cron
Powered by phpBB® Forum Software © phpBB Limited
Japanese translation principally by ocean