電大版TINYBASIC for PIC ミニマムお試し版2
<電大版TINYBASIC for PIC ミニマムお試し版2 flashに書いたBASICプログラムを実行できるようにする>
前ページの追記で記述したように、flash領域に書き込んだBASICプログラムを実行できるようお試し版を改良しました。
2018.08.26 バグがありましたので差し替えました。(改訂1)
追記 メモリマップを変更しました。
最新の版のflashにはスタートレックが書き込まれています。
2018.08.27 BASIC起動時に変数領域とプログラム/配列領域をゼロクリアするように変更しました。(改訂2)
追記 (スタートレックのプログラムを正しく実行させるために必要。)
2018.06.29 このページのダウンロードを停止します。お試し版3に統合しました。
追記 機能を強化したミニマムお試し版3をご使用ください。
○使用方法
1.BASICのプログラムをPIC16F1705の$0900以降に書きこみPICを焼く
2.BASICインタープリタを起動 (この状態ではflash領域に書き込まれたプログラムを認識しない)
3.#50=1とダイレクトコマンドで入力 (これはPOKE文を示す、または #($32)=1 でも良い)
4.EXITコマンドでBASICインタープリタを抜け、GコマンドでBASICインタープリタを再起動する
5.BASICインタープリタ再起動後はflash領域のプログラムを認識する。この状態では
ダイレクトコマンド(PRINT $など)、LISTコマンド、RUNコマンドが使用できます。NEWコマンドは無効
6.#50=0としてBASICインタープリタを再起動するか、リセットSW押下で元の状態に戻ります
7.flashに書き込んでいても、上記手順でflashのプログラムを認識させなければ、従来のお試し版と同様に使用できます。
*50($32)は変数LDFLGのアドレス、LDFLGをモード切り替えのためのフラグとして使用
○flash領域のプログラムを認識させる方法

○素数を求めるプログラムで比較
前ページでは100までの素数しか求めることができなかったが、BASICプログラムをflash領域
に書きこむことで配列に使用できる領域が増大し、400までの素数を求めることができる。

追記、flash領域のBASICプログラムの消去/書き込みにはTinyMultiBootloader+を少し改造すれば容易な気配
2018.08.26、追記
○メモリマップ BASICランチャーを分割して配置しています。flash最後尾のBASICランチャーでは
クロック(16MHz)、PPS、シリアルポートの設定を行っています。
BASICプログラムは0x0900~0x1FDFの範囲に収める必要がある。

○スタートレックのプログラムがギリギリ収まりました。
実行する前にE=4000:F=10と入力してください。(エネルギーと光子魚雷の初期値)
<command>
R:状況報告、W:ワープ(北が0°、東が90°)、S:近距離センサー、L:長距離センサー、G:銀河系マップ
P:フェイザー砲、T:光子魚雷

○BASICサンプル PICのレジスタを操作
BASIC上でPIC16F1705の動作クロックを変更するプログラム
"NOW...."の印字が正常ならクロックの切り替えに成功している。

○BASICサンプル 円周率:モンテカルロ法
実行に先立ちPICのクロックを32MHzに変更している。


追記ここまで
ダウンロードはこちらから
https://box.yahoo.co.jp/guest/viewer?sid=box-l-ynvbblq5wtn3l5nx64zrgryqbm-1001&uniqid=f858bb73-32f3-4a8f-908c-fb269bc9730b&viewtype=detail
https://box.yahoo.co.jp/guest/viewer?sid=box-l-ynvbblq5wtn3l5nx64zrgryqbm-1001&uniqid=e39bf7ce-4ac6-4158-8faf-10eb46f6098f&viewtype=detail
https://box.yahoo.co.jp/guest/viewer?sid=box-l-ynvbblq5wtn3l5nx64zrgryqbm-1001&uniqid=4c73c90b-f8ad-4b0e-bbbd-d43cf5cb3492&viewtype=detail
前ページの追記で記述したように、flash領域に書き込んだBASICプログラムを実行できるようお試し版を改良しました。
2018.08.26 バグがありましたので差し替えました。(改訂1)
追記 メモリマップを変更しました。
最新の版のflashにはスタートレックが書き込まれています。
2018.08.27 BASIC起動時に変数領域とプログラム/配列領域をゼロクリアするように変更しました。(改訂2)
追記 (スタートレックのプログラムを正しく実行させるために必要。)
2018.06.29 このページのダウンロードを停止します。お試し版3に統合しました。
追記 機能を強化したミニマムお試し版3をご使用ください。
○使用方法
1.BASICのプログラムをPIC16F1705の$0900以降に書きこみPICを焼く
2.BASICインタープリタを起動 (この状態ではflash領域に書き込まれたプログラムを認識しない)
3.#50=1とダイレクトコマンドで入力 (これはPOKE文を示す、または #($32)=1 でも良い)
4.EXITコマンドでBASICインタープリタを抜け、GコマンドでBASICインタープリタを再起動する
5.BASICインタープリタ再起動後はflash領域のプログラムを認識する。この状態では
ダイレクトコマンド(PRINT $など)、LISTコマンド、RUNコマンドが使用できます。NEWコマンドは無効
6.#50=0としてBASICインタープリタを再起動するか、リセットSW押下で元の状態に戻ります
7.flashに書き込んでいても、上記手順でflashのプログラムを認識させなければ、従来のお試し版と同様に使用できます。
*50($32)は変数LDFLGのアドレス、LDFLGをモード切り替えのためのフラグとして使用
○flash領域のプログラムを認識させる方法

○素数を求めるプログラムで比較
前ページでは100までの素数しか求めることができなかったが、BASICプログラムをflash領域
に書きこむことで配列に使用できる領域が増大し、400までの素数を求めることができる。

追記、flash領域のBASICプログラムの消去/書き込みにはTinyMultiBootloader+を少し改造すれば容易な気配
2018.08.26、追記
○メモリマップ BASICランチャーを分割して配置しています。flash最後尾のBASICランチャーでは
クロック(16MHz)、PPS、シリアルポートの設定を行っています。
BASICプログラムは0x0900~0x1FDFの範囲に収める必要がある。

○スタートレックのプログラムがギリギリ収まりました。
実行する前にE=4000:F=10と入力してください。(エネルギーと光子魚雷の初期値)
<command>
R:状況報告、W:ワープ(北が0°、東が90°)、S:近距離センサー、L:長距離センサー、G:銀河系マップ
P:フェイザー砲、T:光子魚雷

○BASICサンプル PICのレジスタを操作
BASIC上でPIC16F1705の動作クロックを変更するプログラム
"NOW...."の印字が正常ならクロックの切り替えに成功している。

○BASICサンプル 円周率:モンテカルロ法
実行に先立ちPICのクロックを32MHzに変更している。


追記ここまで
- ご質問などはこちらからどうぞ
- ページ更新情報
- 最近嬉しかったこと
- 1kワードのTINYBASIC STM32L010F4
- やってくれたな!!店長よ
- 東大版TINYBASIC (STM32)
- 1kワードのTINYBASIC STM32版 その2
- 1kワードのTINYBASIC STM32版 その1
- 1kワードのTINYBASIC その8
- 1kワードのTINYBASIC その7
- 1kワードのTINYBASIC その6
- 1kワードのTINYBASIC その5
- 1kワードのTINYBASIC その4
- 1kワードのTINYBASIC その3
- 1kワードのTINYBASIC その2
- 1kワードのTINYBASIC その1
- 電大版TINYBASIC for PIC ミニマムお試し版5
- 電大版TINYBASIC for PIC ミニマムお試し版4
- 電大版TINYBASIC for PIC ミニマムお試し版3
- 電大版TINYBASIC for PIC ミニマムお試し版2
- 電大版TINYBASIC for PIC ミニマムお試し版
- PICで電大版TINYBASIC 実装編その5
- PICで電大版TINYBASIC 実装編その4
- PICで電大版TINYBASIC 実装編その3
- PICで電大版TINYBASIC 実装編その2
- PICで電大版TINYBASIC 実装編その1
- PICで電大版TINYBASIC 準備編その2
- PICで電大版TINYBASIC 準備編その1
- PIC18F24K42をPICKIT2で焼くTIPS その2
- PIC18F24K42をPICKIT2で焼くTIPS
- PIC16F18313ブートローダー書き込み器の製作
- PIC16F18857をPICKIT2で焼くその2
- PIC16F18857をPICKIT2で焼く
- PIC16F18313をPICKIT2で焼くその2
- PIC16F18313をPICKIT2で焼く
- PIC16F5XX USBIO
- HVT-BT200の予約制御
- 再考 PIC16F57 USBIO
- PIC16F5X USBIO
- 続12 8ピンPICでUSB PIC16F18313 HID-シリアルアダプター
- ucontrol.com.arに接続できない
- 続続 LPC1114 USBブートローダー
- 続PIC10F200 電子サイコロ
- PIC10F200 電子サイコロ
- LPC1114 8ch簡易ロジックアナライザー USB版
- 続 LPC1114 USBブートローダー
- LPC1114 8ch簡易ロジックアナライザー
- LPC1114 USBブートローダー
- LPC1114でUSB
- 続LPC810でUSB
- LPC810でUSB
- USB_NCO
- USB出力の周波数カウンター
- HIDアダプターについてのまとめ その2
- HIDアダプターについてのまとめ
- 極小ブートローダー まとめ
- 極小ブートローダー ATTiny 其の2
- 極小ブートローダー PIC10F322 其の6
- 極小ブートローダー PIC10F322 其の5
- 極小ブートローダー PIC10F322 其の4
- 極小ブートローダー PIC10F322 其の3
- 極小ブートローダー ATTiny13A
- 極小ブートローダー PIC10F322 其の2
- 極小ブートローダー PIC10F322
- 続11 8ピンPICでUSB PIC16F57_USBIO (その3)
- 続10 8ピンPICでUSB PIC16F505_USBIO (その2)
- 続9 8ピンPICでUSB PIC16F57_USBIO (その2)
- 続8 8ピンPICでUSB PIC16F505_USBIO
- 続7 8ピンPICでUSB PIC16F57_USBIO
- 続6 8ピンPICでUSB PIC16F570_USBIO
- 続5 8ピンPICでUSB PIC12F615_USBIO
- 続4 8ピンPICでUSB 16FUSBの改良版
- 続続続8ピンPICでUSB -30MHz+ソフトシリアル-
- 続続8ピンPICでUSB -16FUSBを30MHzで動かす-
- 続8ピンPICでUSB -ターミナルソフトからの操作-
- 8ピンPICでUSB -16FUSBの移植-
- 番外 MSP430 タイニーブートローダー
- 番外 C8051 タイニーブートローダー
- 続続続 Tiny AVR/PIC Bootloader+
- 続続 Tiny AVR/PIC Bootloader+
- 続 Tiny AVR/PIC Bootloader+
- Tiny AVR/PIC Bootloader+
- 番外 続ATTINY13A OSCCAL の簡易校正
- 番外 ATTINY13A OSCCAL の簡易校正
- 番外 続ATTINY13A ソフトシリアル
- 番外 ATTINY13A ソフトシリアル
- 番外 続Arduinoからタイニーブートローダーを使用する
- 番外 Arduinoからタイニーブートローダーを使用する
- 番外 LPC1114FN28/102 アセンブラサンプル
- 番外 LPC810 タイニーブートローダーの自己書き換え
- 番外 LPC810 EEPROM エミュレーション
- 番外 LPC810 タイニーブートローダー
- 番外 LPC810でアセンブラ
- 続続続PIC10F322 ソフトシリアル一考察
- 続続PIC10F322 ソフトシリアル一考察
- 続PIC10F322 ソフトシリアル一考察
- PIC10F322 ソフトシリアル一考察
- 84ワードのPICブートローダー
- 続PIC10F322 Ring-DDS
- Tinybldの自己更新プログラム
- プログラム領域をROMのように使う
- PIC10F322 256ビットプログラム発振器
- PIC18F EEPROM エミュレーション Jタイプ
- PIC18F EEPROM エミュレーション
- PIC16F EEPROM エミュレーション
- PIC10F322専用 周波数カウンター
- PIC18F Jタイプ ブートローダー
- PICの制約を取り除く
- 番外 ATTINY2313A用ブートローダー
- 続番外 ATTINY13A用ブートローダー
- 番外 ATTINY13A用ブートローダー
- 続PIC10F322 フラッシュメモリの操作
- PIC10F322 フラッシュメモリの操作
- PIC10F322 PIC_WAIT
- ビット列の並び替え その2
- ビット列の並び替え その1
- 故障した温水便座を使えるようにする
- PIC10F322 RA3を出力ポートとして使用
- PIC10F322 周波数カウンタ Part2
- PIC10F322 AN592準拠 周波数カウンタ
- PIC10F322 Ring-DDS
- microchipのAN592に関する一考察
- PIC10F322 3-ch リモコンライン切り替え器
- PIC10F322 4-SW リモコン送信器
- PIC10F322 二相発振器
- PIC_DELAY
- 続PIC_WAIT
- PIC_WAIT
- ご質問などはこちらからどうぞ
- ページ更新情報
- 最近嬉しかったこと
- 1kワードのTINYBASIC STM32L010F4
- やってくれたな!!店長よ
- 東大版TINYBASIC (STM32)
- 1kワードのTINYBASIC STM32版 その2
- 1kワードのTINYBASIC STM32版 その1
- 1kワードのTINYBASIC その8
- 1kワードのTINYBASIC その7
- 1kワードのTINYBASIC その6
- 1kワードのTINYBASIC その5
- 1kワードのTINYBASIC その4
- 1kワードのTINYBASIC その3
- 1kワードのTINYBASIC その2
- 1kワードのTINYBASIC その1
- 電大版TINYBASIC for PIC ミニマムお試し版5
- 電大版TINYBASIC for PIC ミニマムお試し版4
- 電大版TINYBASIC for PIC ミニマムお試し版3
- 電大版TINYBASIC for PIC ミニマムお試し版2
- 電大版TINYBASIC for PIC ミニマムお試し版
- PICで電大版TINYBASIC 実装編その5
- PICで電大版TINYBASIC 実装編その4
- PICで電大版TINYBASIC 実装編その3
- PICで電大版TINYBASIC 実装編その2
- PICで電大版TINYBASIC 実装編その1
- PICで電大版TINYBASIC 準備編その2
- PICで電大版TINYBASIC 準備編その1
- PIC18F24K42をPICKIT2で焼くTIPS その2
- PIC18F24K42をPICKIT2で焼くTIPS
- PIC16F18313ブートローダー書き込み器の製作
- PIC16F18857をPICKIT2で焼くその2
- PIC16F18857をPICKIT2で焼く
- PIC16F18313をPICKIT2で焼くその2
- PIC16F18313をPICKIT2で焼く
- PIC16F5XX USBIO
- HVT-BT200の予約制御
- 再考 PIC16F57 USBIO
- PIC16F5X USBIO
- 続12 8ピンPICでUSB PIC16F18313 HID-シリアルアダプター
- ucontrol.com.arに接続できない
- 続続 LPC1114 USBブートローダー
- 続PIC10F200 電子サイコロ
- PIC10F200 電子サイコロ
- LPC1114 8ch簡易ロジックアナライザー USB版
- 続 LPC1114 USBブートローダー
- LPC1114 8ch簡易ロジックアナライザー
- LPC1114 USBブートローダー
- LPC1114でUSB
- 続LPC810でUSB
- LPC810でUSB
- USB_NCO
- USB出力の周波数カウンター
- HIDアダプターについてのまとめ その2
- HIDアダプターについてのまとめ
- 極小ブートローダー まとめ
- 極小ブートローダー ATTiny 其の2
- 極小ブートローダー PIC10F322 其の6
- 極小ブートローダー PIC10F322 其の5
- 極小ブートローダー PIC10F322 其の4
- 極小ブートローダー PIC10F322 其の3
- 極小ブートローダー ATTiny13A
- 極小ブートローダー PIC10F322 其の2
- 極小ブートローダー PIC10F322
- 続11 8ピンPICでUSB PIC16F57_USBIO (その3)
- 続10 8ピンPICでUSB PIC16F505_USBIO (その2)
- 続9 8ピンPICでUSB PIC16F57_USBIO (その2)
- 続8 8ピンPICでUSB PIC16F505_USBIO
- 続7 8ピンPICでUSB PIC16F57_USBIO
- 続6 8ピンPICでUSB PIC16F570_USBIO
- 続5 8ピンPICでUSB PIC12F615_USBIO
- 続4 8ピンPICでUSB 16FUSBの改良版
- 続続続8ピンPICでUSB -30MHz+ソフトシリアル-
- 続続8ピンPICでUSB -16FUSBを30MHzで動かす-
- 続8ピンPICでUSB -ターミナルソフトからの操作-
- 8ピンPICでUSB -16FUSBの移植-
- 番外 MSP430 タイニーブートローダー
- 番外 C8051 タイニーブートローダー
- 続続続 Tiny AVR/PIC Bootloader+
- 続続 Tiny AVR/PIC Bootloader+
- 続 Tiny AVR/PIC Bootloader+
- Tiny AVR/PIC Bootloader+
- 番外 続ATTINY13A OSCCAL の簡易校正
- 番外 ATTINY13A OSCCAL の簡易校正
- 番外 続ATTINY13A ソフトシリアル
- 番外 ATTINY13A ソフトシリアル
- 番外 続Arduinoからタイニーブートローダーを使用する
- 番外 Arduinoからタイニーブートローダーを使用する
- 番外 LPC1114FN28/102 アセンブラサンプル
- 番外 LPC810 タイニーブートローダーの自己書き換え
- 番外 LPC810 EEPROM エミュレーション
- 番外 LPC810 タイニーブートローダー
- 番外 LPC810でアセンブラ
- 続続続PIC10F322 ソフトシリアル一考察
- 続続PIC10F322 ソフトシリアル一考察
- 続PIC10F322 ソフトシリアル一考察
- PIC10F322 ソフトシリアル一考察
- 84ワードのPICブートローダー
- 続PIC10F322 Ring-DDS
- Tinybldの自己更新プログラム
- プログラム領域をROMのように使う
- PIC10F322 256ビットプログラム発振器
- PIC18F EEPROM エミュレーション Jタイプ
- PIC18F EEPROM エミュレーション
- PIC16F EEPROM エミュレーション
- PIC10F322専用 周波数カウンター
- PIC18F Jタイプ ブートローダー
- PICの制約を取り除く
- 番外 ATTINY2313A用ブートローダー
- 続番外 ATTINY13A用ブートローダー
- 番外 ATTINY13A用ブートローダー
- 続PIC10F322 フラッシュメモリの操作
- PIC10F322 フラッシュメモリの操作
- PIC10F322 PIC_WAIT
- ビット列の並び替え その2
- ビット列の並び替え その1
- 故障した温水便座を使えるようにする
- PIC10F322 RA3を出力ポートとして使用
- PIC10F322 周波数カウンタ Part2
- PIC10F322 AN592準拠 周波数カウンタ
- PIC10F322 Ring-DDS
- microchipのAN592に関する一考察
- PIC10F322 3-ch リモコンライン切り替え器
- PIC10F322 4-SW リモコン送信器
- PIC10F322 二相発振器
- PIC_DELAY
- 続PIC_WAIT
- PIC_WAIT