uint8_t LCD_CheckStatus(void){ uint8_t status = 0; RS_PutVal(0); RW_PutVal(1); status |= (LCD_ReadNibble() << 4); status |= LCD_ReadNibble(); return status; }
//----------------------------------------------------------------------------- // //----------------------------------------------------------------------------- u8 LCD_ReadStatus(void) { u8 status = 0; GPIO_InitStructure.GPIO_Pin = LCD_D4 | LCD_D5 | LCD_D6 | LCD_D7; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU; GPIO_Init(LCD_GPIO, &GPIO_InitStructure); GPIO_WriteBit(LCD_GPIO, LCD_RW, Bit_SET); GPIO_WriteBit(LCD_GPIO, LCD_RS, Bit_RESET); status |= (LCD_ReadNibble() << 4); status |= LCD_ReadNibble(); GPIO_InitStructure.GPIO_Pin = LCD_D4 | LCD_D5 | LCD_D6 | LCD_D7; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_Init(LCD_GPIO, &GPIO_InitStructure); return status; }