本文整理汇总了C++中ShiftRegLCD::write_P方法的典型用法代码示例。如果您正苦于以下问题:C++ ShiftRegLCD::write_P方法的具体用法?C++ ShiftRegLCD::write_P怎么用?C++ ShiftRegLCD::write_P使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ShiftRegLCD
的用法示例。
在下文中一共展示了ShiftRegLCD::write_P方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: lcdPrintBigNum
static void lcdPrintBigNum(float val)
{
// good up to 3276.8
int16_t ival = val * 10;
uint16_t uval;
boolean isNeg;
if (ival < 0)
{
isNeg = true;
uval = -ival;
}
else
{
isNeg = false;
uval = ival;
}
int8_t x = 16;
do
{
if (uval != 0 || x >= 9)
{
const char PROGMEM *numData = NUMS + ((uval % 10) * 6);
x -= C_WIDTH;
lcd.setCursor(x, 0);
lcd.write_P(numData, C_WIDTH);
numData += C_WIDTH;
lcd.setCursor(x, 1);
lcd.write_P(numData, C_WIDTH);
uval /= 10;
} /* if val */
--x;
lcd.setCursor(x, 0);
lcd.write(C_BLK);
lcd.setCursor(x, 1);
if (x == 12)
lcd.write('.');
else if (uval == 0 && x < 9 && isNeg)
{
lcd.write(C_CT);
isNeg = false;
}
else
lcd.write(C_BLK);
} while (x != 0);
}