第15回 EEPROM(3) 〜チャレンジ課題〜

EEPROMに関するチャレンジ課題に挑戦してみましょう!

timeValueの問題点

前回のプログラムで、タイマー時間を管理する変数、timerValueは、EEPROMの読み出し、書き込みに合わせて1バイト(unsigned char)に変更してしまいました。timerValueを秒にする場合、timerValueの最大値は255ですので、255秒までしか設定できません。

実際のタイマーは1分単位の設定で問題ないと思いますので、timerValueを分として扱い、タイマー時間計測をする部分では、timerValue x 60秒をカウントすれば対応できます。

ただ、保存できる値が255まで、というのはちょっと心許ないです。

そこで、チャレンジ課題として、現在は1バイト(=8ビット)で保存しているデータを2バイト(=16ビット)で保存するように変更してみましょう。

現在のプログラムは

unsigned char timerValue;

と宣言していますので、これを

unsigned short timerValue;

の2バイト変数として、このEEPROMから読み出したデータをこの変数に代入、またこの変数の値をEEPROMに保存するようにプログラムを変更してみてください。

 

更新履歴

日付 内容
2017.7.30 新規投稿
2018.12.2 誤記訂正

« »