GPIOC 口 低8bit 是数据口,高8bit 分别接的 CS , RST , RS , WR , RD 。 现在程序跑刷屏 每秒3、4帧这样, 可以很明显看到滚动, 还有办法提高吗?
读写函数如下
#define ILI9341_CS_PIN GPIO_Pin_12
#define ILI9341_RS_PIN GPIO_Pin_10
#define ILI9341_WR_PIN GPIO_Pin_9
#define ILI9341_RD_PIN GPIO_Pin_8
#define ILI9341_RST_PIN GPIO_Pin_11
#define ILI9341_PORT GPIOC
#define ILI9341_CS_LOW() GPIOC->BRR = ILI9341_CS_PIN
#define ILI9341_CS_HIGH() GPIOC->BSRR = ILI9341_CS_PIN
#define ILI9341_RST_LOW() GPIOC->BRR = ILI9341_RST_PIN
#define ILI9341_RST_HIGH() GPIOC->BSRR = ILI9341_RST_PIN
#define ILI9341_RD_LOW() GPIOC->BRR = ILI9341_RD_PIN
#define ILI9341_RD_HIGH() GPIOC->BSRR = ILI9341_RD_PIN
#define ILI9341_RS_LOW() GPIOC->BRR = ILI9341_RS_PIN
#define ILI9341_RS_HIGH() GPIOC->BSRR = ILI9341_RS_PIN
#define ILI9341_WR_LOW() GPIOC->BRR = ILI9341_WR_PIN
#define ILI9341_WR_HIGH() GPIOC->BSRR = ILI9341_WR_PIN
void ILI9341_WriteReg(uint8_t DataHH)
{
ILI9341_CS_LOW();
ILI9341_RD_HIGH();
ILI9341_RS_LOW();
GPIOC->ODR = (GPIOC->ODR & 0xFF00) + DataHH;
ILI9341_WR_LOW();
ILI9341_WR_HIGH();
ILI9341_CS_HIGH();
}
//***********************************************************
//***********************************************************
void ILI9341_WriteData(uint8_t DataHH)
{
ILI9341_CS_LOW();
ILI9341_RD_HIGH();
ILI9341_RS_HIGH();
GPIOC->ODR = (GPIOC->ODR & 0xFF00) + DataHH;
ILI9341_WR_LOW();
ILI9341_WR_HIGH();
ILI9341_CS_HIGH();
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>