void testmipsmath() { float f1 = -1324.123; float f2 = 25; float f3 = 0.01; writeString("Abs: "); writeDigit((int)absf(f1)); writeString(".\n"); writeString("Sqrt: "); writeDigit((int)sqrtf(f2)); writeString(".\n"); writeString("Recip: "); writeDigit((int)recipf(f3)); writeString(".\n"); writeString("Rsqrt: "); writeDigit((int)rsqrtf(f3)); writeString(".\n"); }
void LCD_Common::printLong(unsigned long value, char padding) { unsigned long den = 1000000000; for (byte i = 10; i > 0; i--) { byte v = (byte)(value / den); value -= v * den; den /= 10; if (v == 0 && padding && den) { if (padding >= i) { writeDigit(-1); } continue; } padding = 0; writeDigit(v); } }
void LCD_Common::printLong(uint32_t value, int8_t padding) { uint32_t den = 1000000000; for (int8_t i = 10; i > 0; i--) { byte v = (byte)(value / den); value -= v * den; den /= 10; if (v == 0 && padding && den) { if (padding >= i) { writeDigit((m_flags & FLAG_PAD_ZERO) ? 0 : -1); } continue; } padding = 0; writeDigit(v); } }
int main(void) { initDisplay(); int i = 0; while (1) { writeDigit(chars[i++], 0); _delay_ms(1000); if (i == 10) { i = 0; } } return 0; }
int main (void) { // set PB0 to be output pinMode(SER,HIGH); pinMode(RCLK,HIGH); pinMode(SRCLK,HIGH); // loop int counter = 0; int clock = 0; int tmp = counter; for(int i=0;i!=4;++i) { writeDigit(i,tmp % 10); tmp = tmp / 10; } clock = (clock + 1) % 50; if(clock == 0) { counter = counter + 1; } }