0
は、私がここに8MHzのFoscが50%のデューティ・サイクルとは0.1Hzの周波数の方形波を生成するため、このコードを持っている:は0.1Hzの矩形波発生器は、
BCF TRISD,7
MOVLW 0x07
MOVWF T0CON
HERE MOVLW 0x67
MOVWF TMR0L
MOVLW 0x69
MOVWF TMR0H
BCF INTCON,TMR0IF
BTG PORTD,7
BSF T0CON,TMROON
AGAIN BTFSS INTCON,TMR0IF
BRA AGAIN
BCF T0CON,TMR0ON
BRA HERE
は、私が欲しいのはどのようです方形波の代わりに矩形波を実行し、50%の代わりに30%のデューティサイクルを実行するために、このコードを修正してください。
私は誰かが助け氏天気ベーンのための高度な
は異なるタイマー値で、二つのループ、他の後に1つを持っています。一方は高出力を制御し、他方は低出力を制御する。それらの合計は必要な期間を与え、その比率は必要なデューティサイクルを与えます。したがって、50%は、2つのタイマーカウントが等しい特殊なケースになります。 –
あなたの返事をお寄せいただきありがとうございます** Mr Weather Vane **、私はあなたの正確なポイントを得ていませんでした...あなたはコードの意味を私に見せていただけますか? –
これはPICコードに似ていますが、私はしばらく書いていません。しかし、タイマー設定の構成に基づいて、波形周期に10000回のタイマーカウントが必要であるとします。デューティ・サイクルを30%にすると、出力が高くなり、タイマーを使用して3000カウントが遅れます。次に、出力をLowに書込み、タイマを使用して7000カウント(合計期間10000)を遅延させます。今度は繰り返す。それがあなたのコードなら、それはあまりにも困難であるとは限りません。与えられた波形期間に50%のデューティサイクルを管理しています。 –