|
底层驱动未用GUI字符、画线、图片显示已调通。底层函数如下:
static u8 SPI2_ReadWriteByte(u16 TxData)
{
u8 retry=0;
SPI_I2S_SendData(SPI2, TxData); //通过外设SPIx发送一个数据
while (SPI_I2S_GetFlagStatus(SPI2, SPI_I2S_FLAG_RXNE) == RESET) //检查指定的SPI标志位设置与否:接受缓存非空标志位
{
retry++;
if(retry>200)return 0;
}
return SPI_I2S_ReceiveData(SPI2); //返回通过SPIx最近接收的数据
}
void LCD_Write_Cmd(u8 cmd)
{
LCD_WR_CLR;
SPI2_ReadWriteByte(cmd);
}
void LCD_Write_Data(u8 data)
{
LCD_WR_SET;
SPI2_ReadWriteByte(data);
}
移植emwin后的主程序如下:
vfnGpioInit();
DelayInit();
RCC_AHBPeriphClockCmd(RCC_AHBPeriph_CRC, ENABLE);
GUI_Init();
GUI_SetFont(&GUI_Font32_1);
GUI_SetBkColor(GUI_BLUE);
GUI_Clear();
GUI_SetTextMode(GUI_TM_NORMAL);
GUI_DispStringHCenterAt("Hello emWin!",80,10);
显示效果如图:显示出现重复,有没有大神知道是什么问题,我找来找去都不知道哪里出了问题
|
|