メニュー
▼ アクセス(地図)
▼ Windowsアプリ開発 ▼ マイコン開発 ▼ CGI・PHP制作 |
▼ サイトマップ(全投稿記事)
▼ タイトル(画像一覧) ▼ 事業内容 |

お問い合わせメールフォームが開きます。
2011年10月12日
PICマイコン・発振周波数の微調整
PICマイコンを使用して通信(UARTなど)を行う際に
以前は通信できていたのに今回はできない・・・などありませんか。
この原因は内部発振回路の周波数のずれの場合があります。
対策としては、外部に正確な発振回路を付ける方法もありますが
内部の発振周波数の微調整を行うことで対応できます。
内部レジスタの「OSCTUNE Register」を操作します。
たとえば発振周波数を最大にする場合は下記の命令を追加すれば良いです。
OSCTUNE = 0x0F;
詳細は、各PICマイコンのマニュアルを参照してみてください。
下記は、PIC16F88xシリーズでの説明ページです。

下記は発振周波数を最大にした場合のUART・9600bps送信時の波形

下記は発振周波数を最小にした場合の上記と同じデータ、同じ通信速度設定での出力波形

見ての通りかなりの調整幅が確認できます。
今回はこの調整で無事に通信することができました。
以前は通信できていたのに今回はできない・・・などありませんか。
この原因は内部発振回路の周波数のずれの場合があります。
対策としては、外部に正確な発振回路を付ける方法もありますが
内部の発振周波数の微調整を行うことで対応できます。
内部レジスタの「OSCTUNE Register」を操作します。
たとえば発振周波数を最大にする場合は下記の命令を追加すれば良いです。
OSCTUNE = 0x0F;
詳細は、各PICマイコンのマニュアルを参照してみてください。
下記は、PIC16F88xシリーズでの説明ページです。

下記は発振周波数を最大にした場合のUART・9600bps送信時の波形

下記は発振周波数を最小にした場合の上記と同じデータ、同じ通信速度設定での出力波形

見ての通りかなりの調整幅が確認できます。
今回はこの調整で無事に通信することができました。
上の画像に書かれている文字を入力して下さい
|
|
書き込まれた内容は公開され、ブログの持ち主だけが削除できます。