PICでもっと遊ぶその3「EEROMを使ってサーボを“ガガガ”と動かす」夏でも楽しい工作教室(1/3 ページ)

» 2005年07月22日 15時43分 公開
[小林哲雄,ITmedia]

勝手に動かすデータとしてEEROMを使う

 シーケンス動作をさせるためにPICで使えそうなもの、と資料を見るとデータ用にEEPROMが用意されていることが分かる。PIC12F675には128バイトのEEPROMが組み込まれており、プログラムで読み書きが可能だ。

 データをEEPROMに書き込むのは少々面倒そうなので、ここでは読み出しだけでシーケンス動作を実現させたい。書込みはソースファイルで指定してHEXファイルに埋め込み、プログラムと一緒に書いてしまおう。

 シーケンス動作については次のようなフォーマットを考えてみた。位置指定は1から255の間で設定するので1バイト分必要だ。また、時間は割り込みの単位時間となる20ミリ秒単位で指定するとよさそうだ。こちらも1から255で設定するので1バイト分、合計2バイトを組で使うことになる。

 時間0の指定を行うと先頭に戻るというループにし、位置0はサーボ制御を行わないことにする。これで最大64stepの動作が可能となる。ちょっと少ない気もするがテストなので我慢することにしよう。

 EEPROMの読み出しは(書込みに比べると)簡単だ。読み出しアドレスをEEADR(9bh)にセットし、EECON1(9Ch)のRDビット(第0ビット)をセットするとEEDAT(9Ah)にデータが入る。

 今回はEEPROMの読み出しをメインプログラムで担当することにした。サーボには位置と残り時間と2つのパラメータがあるので、時間が0になった時点で次のサーボデータを呼び出しセットするのがメインルーチンの役目となる。

 ;
 ; RCサーボの制御テスト 16bit timer version
 ;内蔵EEPROMからデータを読み込んで移動
 ;
▼▼  LIST P=PIC12F675
▼▼  INCLUDE "P12F675.INC"
▼▼  __CONFIG _INTRC_OSC_NOCLKOUT & _WDT_OFF & _MCLRE_OFF
 errorlevel-302; エラー302以下は無表示
 ;
 ;
 ;
▼▼  CBLOCK 20h
 RC1POS; RC1のサーボ位置(1-中心-80-FF)
 ;RC2POS
▼▼  RC1TIM ; RC1の保持時間(0で次データ読み出し)
 EERPOS; EEPROMの読み出し位置
 
 
▼▼  COUNT ; LOOPワーク
▼▼  WBUF ; LOOPワーク
▼▼  SBUF ; LOOPワーク
 ENDC
 
▼▼  ORG 0
▼▼  GOTO MAIN
 ORG4
 ;(ソースコードは次のページに続く……)
       1|2|3 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.

アクセストップ10

2026年07月01日 更新
  1. Macで外付けGPUが使える「TinyGPU」をRTX 5060 Tiで検証 実用性と浮き彫りになった課題 (2026年06月29日)
  2. 懐かしの「タマゴ型マウス」が現代仕様にアップデート エレコム創業40周年モデルの4代目「EGG MOUSE」は10色の着せ替え対応で4980円 (2026年06月30日)
  3. サブスク不要で画面を持たない潔さ Polarの新型フィットネストラッカー「POLAR Loop」を「Fitbit Air」と比較 (2026年06月30日)
  4. “縦2眼”で広角20mmから望遠120mmまでカバーするジンバルカメラ「DJI Osmo Pocket 4P」を試す (2026年06月30日)
  5. アキバ夏のボーナス商戦は「コスパと延命」がキーワード! 5000円切りのピラーレスケースや3000円弱のDDR5用メモリクーラー登場 (2026年06月29日)
  6. NUC風PCやメモリ128GBのモンスターミニPC「DAIV CX」などを続々投入! マウスコンピューターが事業戦略発表会で明かした新製品ロードマップ (2026年06月29日)
  7. 各社製マザーボードをデザインしたカプセルトイ「手のひらPCパーツ」が発売予定 4大メーカーが監修 (2026年06月29日)
  8. IBMが世界初のサブ1nm半導体チップ技術を発表/LenovoがノートPC向けで世界初となる“1000Wh/L”バッテリーの詳細を明らかに (2026年06月28日)
  9. レノボ、スピーカー9基を備えた12.1型Androidタブレット「Lenovo Tab Plus Gen 2」 (2026年06月30日)
  10. GIGAスクール時代の学校に欠かせない「ネットワーク」と「周辺機器」 その動向に迫る (2026年06月30日)
最新トピックスPR

過去記事カレンダー