してください.....助けて

T

Thayas

Guest
ちょっと、すべて
私は6線インターネット..からのユニポーラステッピングモータを回転させるためのコードだ
これはプロテウスSimulatorでの微調整(全4(RBOは、RB1は、RB2の、RB3は)ピンの作品)の出力を与える
私がパンにboard.Only 2ピン(のRb0、RB1を)をput.I RB2の、RB3をから任意の信号を取得していない与えてみました。
コーディング

リストp = 16F84; PIC16F844は
、 ターゲットプロセッサです
。#"が含まP16F84.INC";を含むヘッダファイル
CBLOCK 0x10を、一時的な記憶
順位
DC1の
DC2は
ENDC
リストp = 16F84; PIC16F844は
、 ターゲットプロセッサです

#"が含まP16F84.INC";を含むヘッダファイル

CBLOCK 0x10を、一時的な記憶
ENDC

Orgの0
エントリポイントの後藤を開始

Orgの4
intvector後藤intvector

開始する
clrw、ゼロ。
にMOVWFポートB;前に
、 それを有効にするポートBがゼロであることを確認。
bsf状況、RP0;選択してバンク1
movlw 0xF0が、設定のポートBビット0-3出力として
にMOVWF TRISB; TRISBレジスタを設定します。
するbcf状況、RP0;選択してバンク0
movlw 3;を初期化するモータの位置
にMOVWF順位
にMOVWFポートB
コール遅延
clrfポートB;モーターを駆動
;返り

プッシュBTFSCポルタ、0
コールを停止する
BTFSCポルタ1
呼出しstepcw
呼出しstepccw
返り
;時計回りに1ステップ回転

stepcw
するbcf状況、Ç、キャリーフラグをクリア
btfsc順位、3;場合
、 このビットがセットを運ぶの設定
bsf状況、Ç
rlf順位、幅;ピックアップし
、 モータの現在位置を回転させる
下位ニブルandlw 0x0F;マスクする
にMOVWF順位
にMOVWFポートB;ドライブには
、 出力
コールの遅延;待つ
clrfポートB
コール遅延
呼出しの遅延
;の出力をクリア

呼出しプッシュ
を返す

停止CLRFポートB
後藤プッシュ、1つの手順を反時計回りに回転
stepccw
するbcf状況、Ç、キャリーフラグをクリア
btfsc順位、0
bsf順位4
RRFは順位、幅;ピックアップし
、 モータの現在位置を回転させる
下位ニブルandlw 0x0F;マスクする
にMOVWF順位
にMOVWFポートB;ドライブには
、 出力
コールの遅延;待つ
clrfポートB;の出力をクリア
コール遅延
呼出しの遅延
後藤プッシュ

;このルーチンは、ステップ間の遅延を実装する
そしてこれは
、 モータの速度を制御します。
遅延movlw 18;外側のループの繰り返し数
にMOVWF DC1の
dl1 clrf DC2は、初期化
、 内側のループ
dl2日本オイルポンプグループ
日本オイルポンプグループ
decfsz DC2は、F
後藤dl2
decfsz DC1は、F
後藤dl1
を返す

終わり

PLCのいずれかをすぐに..........助け

 
PICは
、 直接には、ULN2803のようなドライバが必要ステッピングモータを駆動することはできません。
ポスト回路図。

 

、 またはドライブに簡単なトランジスタ回路を使用することができます。

 
はい、Thatsを修正します。
私ULN2003A ICを使用する。
マイprob"RB1は、RB2のあらゆる出力よりも与えない図しなかったです。
唯一のRb0とRB1を出力できます。
どのようなコーディング..内のエラーの
しかし、proberlyプロテウスシミュレータで取り組んでいる。
ありがとう

よろしく
ターヤ

 
あなたのコードが設定仕様しています。プロテウスのシミュレーション例では
、 あなたには、configの単語WDTを使って設定がオフである60782 OSCとPWRTEです(ではなく
、 デフォルトの設定)を有効にしてください。場合は
、 ウォッチドッグ
、 プログラムの実行中には
、 漫画の原因がリセットされますが表¥示されますしています。

しかし、存在しない理由をポートBドライブに"2時03できないはずです"場合を除き
、 不発PICをしている。あなた*は何が起こっていますか?

イアン。

 
また
、 ある16F844のようなことであり、どうして16F84はコメント16F844を指定するのですか?

どのようなターゲットチップですか?

 
はい、それは間違いの入力です。
私のターゲットプロセッサ(PIC)を16F84Aです。

 
あなたのコードでは
、 混乱は...といけないデWDTENをクリアすることを忘れない

開始のRETURN !!!!!あなたrutineいただきました
! でしょうか??とstepcw&stepccwエンド別....私の場合は時計回りまたは反clock_wise行くかを判断するためにRA0ピンを使用すると思う... ...これstepcw&stepccwは、gotoプッシュで終了する必要があります

私はそれをすべきだと考え

 

Welcome to EDABoard.com

Sponsor

Back
Top