PIC32 Harmony 目次 前回 UARTで文字の表示ができた ので、こんどはタイマー割り込みを使って 1秒毎に繰り返し文字を表示するように改造してみます。 まずは、変な操作をしてわけがわからなくなっても簡単に元に戻せるように、前回作成したプロジェクトのフォルダをそのままコピーしてバックアップを取りました。 回路は前回と同じ。 プロジェクトにタイマーを追加する MPLAB X IDE で前回作成した UARTで文字を表示するプロジェクトを開いて、[Tools] - [Embedded] - [MPLAB Harmony 3 Configurator] で MPLAB Harmony 3 Configuratorを開きます。 Project Graphに Peripherals - TMR - TMR1 を追加します。 UART1を追加したときと同じなので簡単。 タイマーの設定 Project Graphの TMR1をクリックすると、右側にタイマーの設定が表示されるので Enable Interrupts? = チェックを入れたまま Select Prescaler = 1:256 Timer Period = 1,000ミリ秒 と設定します。設定はこれだけ。データシートを見ながらレジスタを設定していくのは結構骨が折れるのですが、Harmonyを使うと楽ちんです。 プリスケーラを変更すれば自動で入力クロックが変わるし、タイマーの周期をミリ秒で指定すれば自動でレジスタにセットする値を計算してくれるしでとても便利。 設定はこれで終了なので、Generate - Generate Code でコードを生成して、MPLAB X IDEに戻ります。 このように既存のプロジェクトにライブラリを追加しても、いい感じに処理してくれます。 コードの追加 Harmonyでタイマーのペリフェラルライブラリ(plib_tmr1.c)が追加されましたので、これを使って 1秒毎に UARTで文字を表示するように main.c にコードを追加します。 volatile uint8_t count; void timer_int(uint32_t status, uintptr_t context) // タイマー割り込みで呼ばれる関数 { count++; } in...