PICでもっと遊ぶその5「完成したプログラムを眺めてみる」夏でも楽しい工作教室(2/2 ページ)

» 2005年08月05日 16時00分 公開
[小林哲雄,ITmedia]
前のページへ 1|2       

 ここがメインルーチンの初期設定部分。今まで解説しなかったので、内蔵オシレーターの調整について触れておくと$3FF(プログラムエリアの最後)には値を返すリターン命令が書かれているので、そこにサブルーチンコールを行うとWレジスタにタイマーの補正値が入る。

 これをOSCCALレジスタに入れることで工場テスト時の値を入れることが可能となる。あとは前回解説したように16ビットタイマーを利用するための設定、割り込みの設定と出力ポートの設定を行っている。

 フェイルセーフとしてまずサーボを中央値に設定して、サーボタイマーをクリアしてから、サーボデータの呼び出しを行っている。

 メインルーチンの本体。サーボ1と2のルーチンはほとんど同じだ。まずサーボデータのタイマー値をチェックし、0以外はなにも行わない。0の場合は次のシーケンスデータを読み出してセットする。ここでサーボ位置=タイマー値=0の場合はシーケンス終了とみなし、冒頭から読み出しを開始する。

 サブルーチン群その1。2つのサーボシーケンスデータは冒頭の2バイトにシーケンス開始アドレスが入っている。これを取得している。

 これはEEPROMを読み出すサブルーチンだ。先ほども登場したAN982のサンプルプログラム「ByteRead.asm」と「SecRead.asm」を参考にしてある。違いはサンプルではアドレスが1バイトだが、24C64以上では2バイト必要なので連続でEEPROSHEEPROSLを送り出していることと、読み出しデータを2バイトにしている点だ。

 連続読み出しの場合はACKBの与えかたが異なる(最後だけACKBを出さない)。EEPROMの読み出しルーチンのデバッグはデバッガーではやりにくいので、確実に動くルーチンを参考にすると作業が容易になる。

前のページへ 1|2       

Copyright © ITmedia, Inc. All Rights Reserved.

アクセストップ10

2026年08月15日 更新
  1. 「Pixel Watch 5」が8月20日に発売へ 前モデルから最大20%の高速化、価格は6万2800円から (2026年08月13日)
  2. 映画もゲームもPC画面も大迫力で楽しめる! Google TV搭載のRGBレーザー方式4Kプロジェクター「AWOL Valerion Pro 2」を試す (2026年08月14日)
  3. 劇的大進化した「Insta360 X6」 8K/50fpsや大型センサー、内蔵ストレージ搭載、X5から買い替える価値はある? (2026年08月14日)
  4. タッチパッドを手前に引き出して使える「Ewin ワイヤレス折りたたみキーボード」がセールで24%オフの5319円に (2026年08月12日)
  5. シャープのヘルスケア特化スマートウォッチ「からだメイト Watch」を試す 装着するだけでカロリー&水分補給を自動記録 (2026年08月10日)
  6. Googleの折りたたみスマホ「Pixel 11 Pro Fold」は何が変わった!? 最大14万7600円お得になるキャンペーンも (2026年08月12日)
  7. 3K非光沢OLEDが秀逸! 最新Ryzen AI搭載の14型モバイル「EliteBook X G2a 14 AI PC」を試す (2026年08月13日)
  8. GMKtec、7.2cm四方のカラフルな超小型ミニPC「G5S」を発売 あえて少し古いCPUを採用して価格を抑制 「桜ピンク」も後日追加 (2026年08月14日)
  9. ノートPCやミニPCにGPUを外付けできる! OCuLinkとUSB4 V2(Thunderbolt 5)両対応のeGPUドック「MINISFORUM DEG2」が22%オフの3万5994円に (2026年08月12日)
  10. 「文系か理系か」で悩まなくていい――NVIDIAが女子中高生に伝えたAI時代のキャリアと英語の重要性 (2026年08月13日)
最新トピックスPR

過去記事カレンダー