static void _hShowModelLayout() { if (ANYKEY) { if (KEY2) // NEXT elementIndex = (elementIndex + 1) % 9; lcdClear(); writeSoftkeys(NULL); lcdSetPos(0, 0); lcdWriteString_P(strOutput); lcdWriteChar(32); if (elementIndex == 0) { lcdWriteString_P(strALL); for (uint8_t i = 0; i < 8; i++) showMotor(i, 0); } else { lcdWriteChar(elementIndex + '0'); showMotor(elementIndex - 1, 1); } } }
int main(int argc, char** argv) { char value, count = '0'; lcdInit(); i2c_init(); for(int i = 0; i < 16; i++) { sendByte(count++,0x30<<1); lcdSetPos(i,0); lcdWriteChar(count); //for(int i = 0; i<10; i++ ) __delay_ms(10); value = readByte(0x30<<1); lcdSetPos(i,1); lcdWriteChar(value); //for(int i = 0; i<10; i++ ) __delay_ms(10); } while(1) { } return (EXIT_SUCCESS); }
static void _hSensorCalibration() { if (elementIndex == 0) { if (KEY4) { elementIndex = 1; lcdClear(); lcdSetPos(3, 18); lcdWriteString_P(strWait); lcdSetPos(3, 78); lcdWriteString_P(strSec); writeSoftkeys(_skCANCEL); _tStart = millis(); } } else if (elementIndex == 1) { lcdSetPos(3, 66); uint8_t sec = (millis() - _tStart) / 1000; lcdWriteChar((5-sec) + 48); if (sec >= 5) { sensorsCalibrate(); configSave(); lcdSetPos(3, 0); lcdWriteString_P(strCalSucc); writeSoftkeys(NULL); elementIndex = 2; } } else if (KEY4) loadPage(PAGE_MENU); }
int main(void) { lcdInit(); spiInit(); lcdWriteChar(spiFullDuplexRdWr('D'),LINE2); while(1); return 0; }
int main(void) { int a = 23,b = 45; uint8_t *name = "Wassup!!!"; lcdInit(); lcdWriteString("Hey Ravi",LINE1); lcdWriteChar('A',LINE2); return 0; }
void lcdWrite(char* str) { uint16_t index = 0; while(str[index]!='\0') { lcdWriteChar(str[index]); index++; } }
static void showMotor(uint8_t motor, uint8_t withDir) { uint8_t x, y; mixer_channel_t *channel = &Config.Mixer[motor]; if (channel->IsMotor) { x = CENTER_X + (channel->Aileron / 4); y = CENTER_Y - (channel->Elevator / 4); lcdLine(x, y, CENTER_X, CENTER_Y); lcdXY(CENTER_X - 2, CENTER_Y - 2); lcdWriteGlyph_P(&glyFC, ROP_COPY); lcdXY(x - 4, y - 4); lcdWriteGlyph_P(&glyBall, ROP_PAINT); lcdXY(x - 4, y - 7); if (channel->Rudder >= 0) lcdWriteGlyph_P(&glyDirCW, ROP_PAINT); else lcdWriteGlyph_P(&glyDirCCW, ROP_PAINT); lcdXY(x - 2, y - 2); lcdReverse(1); lcdSelectFont(&font4x6); lcdWriteChar(motor + '1'); lcdSelectFont(NULL); lcdReverse(0); if (withDir) { lcdSetPos(2, 0); lcdWriteString_P(strDirSeen); lcdSetPos(5, 0); if (channel->Rudder >= 0) lcdWriteString_P(strCW); else lcdWriteString_P(strCCW); } } else if (withDir) { lcdSetPos(3, 64); if (channel->IsServo) lcdWriteString_P(strServo); else lcdWriteString_P(strUnused); } }
static void _hStart() { char s[7]; if (KEY4) // MENU { arm(OFF); loadPage(PAGE_MENU); return; } if (KEYINIT || KEYREFRESH) { if (Config.ArmingMode) arm(ON); if (State.Armed) { lcdSetPos(3, 30); lcdSelectFont(&font12x16); lcdWriteString_P(strARMED); lcdSelectFont(NULL); return; } else { lcdSetPos(0, 5); lcdSelectFont(&font12x16); lcdWriteString_P(strHeader); lcdSelectFont(NULL); lcdSetPos(2, 0); lcdWriteString_P(scrStart); } } if (!State.Armed) { lcdSetPos(2, 84); if (State.SelfLevel) writePadded_P(strON, 3); else writePadded_P(strOFF, 3); lcdSetPos(3, 0); if (State.Error) { lcdWriteString_P(strError); lcdWriteChar(32); if (State.Error & ERR_NOT_CALIBRATED) lcdWriteString_P(strSensorNotCal); else { lcdWriteString_P(PSTR("no ")); const char* s; if ((State.Error & ERR_NO_RX) == ERR_NO_RX) s = PSTR("RX"); else if (State.Error & ERR_NO_ROLL) s = strRoll; else if (State.Error & ERR_NO_PITCH) s = strPitch; else if (State.Error & ERR_NO_YAW) s = strYaw; else s = strThro; lcdWriteString_P(s); lcdWriteString_P(PSTR(" input")); } } else lcdWriteString_P(PSTR("Ready for departure!")); // battery level lcdSetPos(4, 13*6); utoa(BATT / 10, s, 10); lcdWriteString(s); lcdWriteChar('.'); utoa(BATT % 10, s, 10); writePadded(s, 3); // roll angle writeValue(5, 13*6, (int16_t)ANGLE[ROL], 7, -1); // pitch angle writeValue(6, 13*6, (int16_t)ANGLE[PIT], 7, -1); } }
static void writeSpace(int8_t len) { for (int8_t i = 0; i < len; i++) lcdWriteChar(32); }
/* * Write a string to the LCD */ void lcdWriteString(char * s) { while (*s) { lcdWriteChar(*s); s ++; } }