■gb.battery.voltage関数
Gamebuimo.hライブラリのgb.battery.voltage関数は、バッテリの測定電圧をミリボルト(mV)単位で返します。
■使用例
gb.battery.voltage関数を使ったArduinoIDEのプログラム例は図1の通りです。
このプログラムを実行するとsetup関数中のgb.begin関数でGamebuinoオブジェクトを初期化し、gb.titleScreen関数で画面に「Menu example」と表示します。
スタート画面でキーボードの「K」(GamebuinoのA)ボタンを押すと画面左上に「strSystemInfo」「strChangeGame」と表示されます。
「strSystemInfo」でキーボードの「K」ボタンを押すとバッテリー電圧(gb.battery.level関数)等の詳細情報が画面表示され、「strChangeGame」でキーボードの「K」ボタンを押すとgb.changeGame関数が実行され「Flashing loader… DON'T TURN OFF!」と表示後ゲーム選択画面に戻ります。
参考に図1プログラムをHEXファイルに変換し、それをSimbuino4Webでエミュレートした結果を図2に示します。
#include <SPI.h> #include <Gamebuino.h> Gamebuino gb; ////declare all the variables needed to make a menu //number of items in the menu #define MENULENGTH 2 //The differents strings to put in the menu //each string can be used in different menus const char strSystemInfo[] PROGMEM = "Stystem info"; const char strChangeGame[] PROGMEM = "Change game"; //Put all the different items together in a menu (an array of strings actually) const char* const menu[MENULENGTH] PROGMEM = { strSystemInfo, strChangeGame, }; void setup() { gb.begin(); gb.titleScreen(F("Menu example")); } void loop() { switch (gb.menu(menu, MENULENGTH)) { case -1: //nothing selected gb.titleScreen(F("Menu example")); break; case 0: //display system info displaySystemInfo(); break; case 1: //change game gb.changeGame(); break; default: break; } } void displaySystemInfo() { while (1) { if (gb.update()) { if (gb.buttons.pressed(BTN_C)) { gb.sound.playCancel(); return; } gb.display.print(F("Bat:")); gb.display.print(gb.battery.voltage); gb.display.println(F("mV")); gb.display.print(F("Bat lvl:")); gb.display.print(gb.battery.level); gb.display.println(F("/4")); gb.display.print(F("Light:")); gb.display.println(gb.backlight.ambientLight); gb.display.print(F("Backlight:")); gb.display.println(gb.backlight.backlightValue); gb.display.print(F("Volume:")); gb.display.print(gb.sound.getVolume()); gb.display.print(F("/")); gb.display.println(gb.sound.volumeMax); } } }
■構文
gb.battery.voltage
■パラメータ
ありません
■戻り値
バッテリ電圧(unsigned int)
■補足
例:battery_loggerの例では、10分ごとにバッテリ電圧をマイクロSDカードに記録しています。これはデフォルトでSDカードに提供され、BAT-LOG.HEXという名前です。