[PIC10F200って!]
秋月電子で簡単なコントロール用として使えそうな「PIC10F200」が宣伝に出ていたので、秋葉原へ行った時に購入して来ました。
コストも安く手頃です。このICは新しいので同社の書き込み器に対応していない。仕方なくISPC(In Circuit Serial Programming)接続にして書き込んで見ました。まだ日が浅くLEDの点滅程度しかやっていませんが「どうにか書き込める」ことが分かり、また動かせる目安が付きました。このICは8ピンで、その内2つが使われておりません。私たちは半田付けが面倒ですから小形な物より、DIPタイプの普通品があれば使い易いです。
[どう動かすのか!]
当初、「MPLAB IDE」で動くのか!書き込みは!INC fileは含まれているのか!などなど基本的な情報に付いて資料集めをしてから、購入することにしました。
何しろローコストなので「買って動かなくても、大損はないと気楽です!」むしろ、頭の体操で面白い!と考え何とか見とうしが付いたので、スタートさせる事にしました。今まで8ピンのICは主にPIC12F629を使っていました。これに比べると性能はかなり低下するので「その分簡単に動くだろう」と思ったのですが、始めの設定でつまづきました。
設計が少し古いICで、最近始めた私に取ってSoftの所でまご付きました。音は意味ありません、絵が出なかったらごめんなさい。
[取り合えず動かしてみる!]
始めは「LEDの点滅程度で良い」と考え、眼に見えるタイマーを作るのが量が多くなるので、単にSWでON-OFFするとLEDがチカチカするという簡単なものにしました。結果は次の通り!
A.MPLAB IDEでアッセンブル出来た。
B.書き込器も書けた。
C.作ったSOFTで予定通りプログラムは動いた。
簡単な物ですが動けば、後は複雑なプログラムにすれば作動するはずです・・・ホ!本当は「動いてあたりまえ」なのですが、これがなかなか難しいです。
[どう動かすのか!]
書き込み器のアダプターを作る前に、ブレッドボードで試し運転が出来るかやってみました。以前線を引き伸ばして作動させた事があるので「今回もたぶん作動するだろう」と想定して、上の写真のように組んで書き込みを試して見ました。
回路はブレッドボード上に作り、ICSPとして5本のワイヤーで結線、プログラマーは秋月の書き込み器(V3.5+)で「8ピン端子」からICSP信号を取り出し使いました(8ピンのソケットが無かったので多いのを使っています)。
Vpp・PG dat・PG clk・Vdd・Vssの5本を、丸ピンソケットを差し込んで取り出し書き込んでいます。ICは内部発振(4MHz)を使い、それ単体で動作するものです。
[SOFT]
1.Pinの設定
2.LEDを消す
3.SWポートはをしらべる?
4.HならLEDを点灯
5.適当に時間稼ぎ (早いと見え難い)
6.[2]へ戻るこれでポート1をLにすると、ポート0のLEDが消える、仕組みです。再度浮かせると点灯するという単純なもの。
[トラブル]
始め思想定通り動かなかった。これはポートを書き込むと他のピンも影響し固定され「SW入力が作動しなくなる」というものでした。
これには「再度設定」すると作動するようになりました。
これでも動きましたがその後、下記のプログラムのように変更しました。
TRISの設定がまずかったようでおかしな動作をしていました、シュミレータを見ながらTRISの設定が希望通り出来るようになってホッ!としています。(09/1/4)[気が付いた点]
使ってみて、スタックが2つしか無く使いずらいのが印象です。フラッシュメモリーが無い(256b)のはコストの関係で仕方ありませんが・・・。
昔、PIC10C200なんて番号があったのでしょうか?もう一つ、スタックをおまけとして付けて欲しいですね。; PIC10F200 LED ON-OFF ;2008/12/25 ;------------------------------------------- list P=PIC10F200 include P10F200.inc __CONFIG _CP_OFF & _IntRC_OSC & _MCLRE_OFF & _WDT_OFF org 0H movlw 6 movwf GPIO TRIS GPIO ;IO PORT set MAIN bcf GPIO,0 ;LED OFF btfsc GPIO,1 ;CK bsf GPIO,0 ;LED ON NOP NOP NOP NOP NOP goto MAIN2008/DEC/26
もどる [MAIN MENU