管理者– Author –
-
第19回 割込み処理(4) 〜タイマープログラムへの実装〜
今までの内容を踏まえて、タイマープログラムに割込み処理を実装します。 動作仕様 それでは今までの内容を元に、タイマープログラムに割込み処理を追加しましょう。 タイマー動作としては以下の仕様とします。 スタートボタン(RA3ピン)が押されてタイマー動作開始後、タイマー動作中にスタートボタン(RA3ピン)が押されたら、タイマーカウン... -
第18回 割込み処理(3) 〜割込み処理プログラムテンプレ〜
今回は、PICマイコンの割込み処理の仕組みと必要な設定内容について説明します。 PICマイコンの割込みの仕組み 割込み処理の実装を行う前に、PICマイコンの割込み処理の内部の様子を理解しておきましょう。 割込み処理の説明の最初で、割込みにはいろいろな種類があることを説明しました。例えばピンの入力が変化した時や内部タイマーが設定... -
第17回 割込み処理(2) 〜割込み処理プログラムの基本構造〜
割込み処理プログラムの基本構造について説明します。 これから行うことの説明 割込み処理プログラムの説明をするために、今まで作成していたタイマープログラムはいったん脇に置いておいて、簡単なプログラムを作成して割込み処理プログラムの基本構造を確認することにします。 これから、以下のようにプログラム作成を通して、割込み処理を... -
第16回 割込み処理(1) 〜割込み処理とは〜
今回から割込み処理を実装していきます。 割込み処理とは マイコンを使った電子工作の情報をネットで検索していると、「割込み処理」という言葉がよく出てきます。マイコンを使っていく上で、この割込み処理はとても重要な機能ですので、しっかり理解してぜひ自分のものにしてください。 ところで「割込み処理」とは何かを調べてみると「通常... -
第15回 EEPROM(3) 〜チャレンジ課題〜
EEPROMに関するチャレンジ課題に挑戦してみましょう! timeValueの問題点 前回のプログラムで、タイマー時間を管理する変数、timerValueは、EEPROMの読み出し、書き込みに合わせて1バイト(unsigned char)に変更してしまいました。timerValueを秒にする場合、timerValueの最大値は255ですので、255秒までしか設定できません。 実際のタイマーは... -
第14回 EEPROM(2) 〜タイマー設定値保存機能を追加する〜
今回はEEPROMを利用してタイマー設定時間を保存する機能を追加します。 追加機能の仕様を決める EEPROMのデータ読み書き、初期設定の方法がわかりましたので、早速これらの機能を使ってタイマー設定時間の保存機能を追加しましょう。 デバッグしやすいように、引き続きタイマー時間単位は「秒」とします。 仕様としては以下のようにしたいと... -
第13回 EEPROM(1) 〜EEPROMとは〜
今回からEEPROMを使ったプログラムを作成してみます。 現在のタイマー機能の問題点 前回までのプログラムで、タイマー時間を設定する機能を追加することができました。 ところで、まだちょっと機能が足りませんよね。すでにお気づきかもしれませんが、タイマー時間を変更した場合、電源をOFFにすると変更した値は消されてしまい、次に電源を... -
第12回 ADコンバータ(6) 〜チャレンジ課題〜
今回はチャレンジ課題です。 ADコンバータの設定を変えてみよう ADコンバータの設定のところで、結果の値をADRESに右詰にするようにしました。 この設定を左詰にすると、プログラムをどのように変更すればよいか検討してみてください。左詰にする場合、ADCON1レジスタの設定を以下のように変更します。 ADCON1 = 0b00000000; // 結果数値は左... -
第11回 ADコンバータ(5) 〜プログラムを完成させる〜
今回はADコンバータ機能を利用したプログラムを完成させます。 ADコンバータプログラムまとめ ちょっとしつこいですが... ADコンバータ機能を利用するための必要なことをもう一度確認しておきましょう。 ADコンバータを利用するピンを「アナログ入力」に設定 ADコンバータ機能設定 ADコンバータで電圧値読み取り 今回はアナログ入力ピンを5番...