K
khansaab21
Guest
デバイス:PIC16F628A
コンパイラ:MikroC
言語:C
私は、コントローラの2つの割り込みサービスを使用している。割り込みが受信シリアルいるの外部割込みと。
しかし、問題は、コードはハードウェア上で動作していない。私は、コード私の推測が間違って何かがそこにある。スニペットは次のとおりですコード。
無効に割り込み()
(
(もしINTCON.INTF = 1)/ /場合は、外部割込み
(
TRISB.F0は= 1; / /遅延reqiuredでの状態を拾うために入力を作ることを
start_delay;の444米国遅延/ /
start1 = IPアドレス;
bit_delay;
start2 = IPアドレス;
bit_delay / /遅延我々の1778
トグル= IPアドレス;
0(一=;私は<= 4;私 )/ /アドレスビット
(
bit_delay;
addrはは= IPアドレス;
)
0(一=;私は<= 5;私 )/ /コマンドビット
(
bit_delay;
コムは = IPアドレス;
)
test_instは(); / /命令を処理する関数を呼び出す
)/ /割り込みフラグ命令と呼ばれるクリアさです。
他の場合(PIR1.RCIF = 1)/ /場合でPCを
(
はx = Usart_Read();受信データからPC / /
スイッチ(x)は
(
場合':(転送は();破る;)
場合に'B':(後方();破る;)
場合は'C':(右();破る;)
場合は'D':()左(;破る;)
ケース'E'の:(ストップ();破る;)
)
PIR1.RCIFは= 0; / /クリアUSARTビットを受信割り込みフラグ
)
)
/ /プログラムのメインスタートの
無効のmain()
(
TRISA.F0は= 0; / /出力としてポートAを作る
TRISA.F1 = 0;
TRISA.F2 = 0;
TRISA.F3 = 0;
TRISB.F4 = 0; / /作成PORTB.F4指標として出力(エラー)
エラー= 0;
Usart_Initは(2400); / / 2400ボーレートをでシリアルの初期化
/ /割り込みを有効にする
INTCON.GIEは= 1; / /割り込みを有効にするグローバル
INTCON.PEIEは= 1; / /割り込みをEnalbling周辺
/ /割り込みを有効にするシリアル
PIR1.RCIFは= 0; / /クリアUSARTビットを受信割り込みフラグ
PIE1.RCIEは= 1; / /有効にするUSARTはinteerupt受け取る
/ /有効にする外部割込み
INTCON.INTF = 0; / /清算外部割込みフラグ
INTCON.INTEは= 1; / /有効にする外部割込み
OPTION_REG.INTEDG = 1; / /外部の立ち上がりエッジで割り込み
)中(1 / /ここにとどまって中断されるまで
)
コンパイラ:MikroC
言語:C
私は、コントローラの2つの割り込みサービスを使用している。割り込みが受信シリアルいるの外部割込みと。
しかし、問題は、コードはハードウェア上で動作していない。私は、コード私の推測が間違って何かがそこにある。スニペットは次のとおりですコード。
無効に割り込み()
(
(もしINTCON.INTF = 1)/ /場合は、外部割込み
(
TRISB.F0は= 1; / /遅延reqiuredでの状態を拾うために入力を作ることを
start_delay;の444米国遅延/ /
start1 = IPアドレス;
bit_delay;
start2 = IPアドレス;
bit_delay / /遅延我々の1778
トグル= IPアドレス;
0(一=;私は<= 4;私 )/ /アドレスビット
(
bit_delay;
addrはは= IPアドレス;
)
0(一=;私は<= 5;私 )/ /コマンドビット
(
bit_delay;
コムは = IPアドレス;
)
test_instは(); / /命令を処理する関数を呼び出す
)/ /割り込みフラグ命令と呼ばれるクリアさです。
他の場合(PIR1.RCIF = 1)/ /場合でPCを
(
はx = Usart_Read();受信データからPC / /
スイッチ(x)は
(
場合':(転送は();破る;)
場合に'B':(後方();破る;)
場合は'C':(右();破る;)
場合は'D':()左(;破る;)
ケース'E'の:(ストップ();破る;)
)
PIR1.RCIFは= 0; / /クリアUSARTビットを受信割り込みフラグ
)
)
/ /プログラムのメインスタートの
無効のmain()
(
TRISA.F0は= 0; / /出力としてポートAを作る
TRISA.F1 = 0;
TRISA.F2 = 0;
TRISA.F3 = 0;
TRISB.F4 = 0; / /作成PORTB.F4指標として出力(エラー)
エラー= 0;
Usart_Initは(2400); / / 2400ボーレートをでシリアルの初期化
/ /割り込みを有効にする
INTCON.GIEは= 1; / /割り込みを有効にするグローバル
INTCON.PEIEは= 1; / /割り込みをEnalbling周辺
/ /割り込みを有効にするシリアル
PIR1.RCIFは= 0; / /クリアUSARTビットを受信割り込みフラグ
PIE1.RCIEは= 1; / /有効にするUSARTはinteerupt受け取る
/ /有効にする外部割込み
INTCON.INTF = 0; / /清算外部割込みフラグ
INTCON.INTEは= 1; / /有効にする外部割込み
OPTION_REG.INTEDG = 1; / /外部の立ち上がりエッジで割り込み
)中(1 / /ここにとどまって中断されるまで
)