/*********************************************************************************** * @fn halLcdDisplayCounters * * @brief Display counter values with text on display * * @param uint8 line - display line * int32 lValue - left value * char lChar - left text * int32 rValue - right value * char rChar - right text * * @return none */ void halLcdDisplayCounters(uint8 line, int32 lValue, char lChar, int32 rValue, char rChar) { uint8 n; char *pCounter; // Left part pLcdLineBuffer[0] = lChar; pLcdLineBuffer[1] = '='; pCounter = convInt32ToText(lValue); for (n = 2; n < 8; n++) { if (*pCounter) { pLcdLineBuffer[n] = *(pCounter++); } else { pLcdLineBuffer[n] = ' '; } } pLcdLineBuffer[8] = rChar; pLcdLineBuffer[9] = '='; pCounter = convInt32ToText(rValue); for (n = 10; n < 16; n++) { if (*pCounter) { pLcdLineBuffer[n] = *(pCounter++); } else { pLcdLineBuffer[n] = ' '; } } lcdWriteLine(line, pLcdLineBuffer); }
void dht11responseStatus(){ switch(step){ case CHECKIFRESPONSEISOKSTEP: status1 = HWREG(GPIO_PORTB | GPIO_OFFSET_DATA) & 0x02; responseStatusOk1 = (status1) ? 1:0; //if a high on pin 1 if(responseStatusOk0 == 1 && responseStatusOk1 == 1){ ; //DO NOTHING } else{ lcdClear(); lcdWriteLine("Bad Response."); SysCtlDelay(1000000); dht11init(); } TimerLoadSet(TIMER0_BASE, TIMER_A, SysCtlClockGet()/16666); //Wait 40us TimerIntEnable(TIMER0_BASE, TIMER_TIMA_TIMEOUT); TimerEnable(TIMER0_BASE, TIMER_A); process++; step = 0; break; }; }
/*********************************************************************************** * @fn halLcdWriteLine * * @brief Write line on display * * @param uint8 line - display line * char *pLine2 - pointer to text buffer to write * * @return none */ void halLcdWriteLine(uint8 line, const char XDATA *pLine) { uint8 n; if (pLine) { for (n = 0; n < LCD_LINE_LENGTH; n++) { if (*pLine) { pLcdLineBuffer[n] = *(pLine++); } else { pLcdLineBuffer[n] = ' '; } } lcdWriteLine(line, pLcdLineBuffer); } }
/*********************************************************************************** * @fn halLcdDisplayValue * * @brief Display value on display with optional text on right and left side * * @param uint8 line * char *pLeft * int32 value * char *pRight * * @return none */ void halLcdDisplayValue(uint8 line, char XDATA *pLeft, int32 value, char XDATA *pRight) { uint8 n; char *pValue = convInt32ToText(value); for (n = 0; n < LCD_LINE_LENGTH; n++) { if (pLeft && *pLeft) { pLcdLineBuffer[n] = *(pLeft++); } else if (*pValue) { pLcdLineBuffer[n] = *(pValue++); } else if (pRight && *pRight) { pLcdLineBuffer[n] = *(pRight++); } else { pLcdLineBuffer[n] = ' '; } } lcdWriteLine(line, pLcdLineBuffer); }