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のいずれかをすぐに..........助け
私は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のいずれかをすぐに..........助け