7セグLEDは7つのLEDから出来ているので、数字を表示させるには複数のLEDを光らせ数字のように表示させます。
そこで0〜9までの表示させたい数字(PORTBの出力)を予め変数に格納し、表示させたいときにその変数を指定してあげれば良いワケだ。
int seg[10] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,
0x07,0x7f,0x67 };
と、このようにすれば、seg[0]には[0x3f]が、seg[1]には[0x06]が格納されることになり、7セグLEDに6を表示させたいときは、seg[6]とすれば 0x7d が指定され、PORTBは01111101となり、出力端子に繋がったLEDを光らせ「6」と表示されることになる。
実験してませんが、これは便利そうです。
【関連する記事】