初级会员

- 积分
- 132
- 金钱
- 132
- 注册时间
- 2018-8-25
- 在线时间
- 33 小时
|
5金钱
硬件引脚链接如下:[mw_shl_code=c,true]GPIOA.5 --> D00
GPIOA.6 --> D01
GPIOA.7 --> D02
GPIOB.0 --> D03
GPIOB.1 --> D04
GPIOE.7 --> D05
GPIOE.8 --> D06
GPIOE.9 --> D07
GPIOE.10 --> D08
GPIOE.11 --> D09
GPIOE.12 --> D10
GPIOE.13 --> D11
GPIOE.14 --> D12
GPIOE.15 --> D13
GPIOB.10 --> D14
GPIOB.11 --> D15[/mw_shl_code]
问题?调用DATAOUT_one()可以正常显示,调用DATAOUT_two()却不能正常显示?
[mw_shl_code=c,true]void DATAOUT_one(u16 cmd_data)
{
/* 以下代码液晶屏可以正常显示 */
GPIO_WriteBit(GPIOA, LCD_PIN_DL_00, (cmd_data >> 0x00) & 0x01); /* 取低8位中的低3位 */
GPIO_WriteBit(GPIOA, LCD_PIN_DL_01, (cmd_data >> 0x01) & 0x01);
GPIO_WriteBit(GPIOA, LCD_PIN_DL_02, (cmd_data >> 0x02) & 0x01);
GPIO_WriteBit(GPIOB, LCD_PIN_DL_03, (cmd_data >> 0x03) & 0x01); /* 取低8位中的中2位 */
GPIO_WriteBit(GPIOB, LCD_PIN_DL_04, (cmd_data >> 0x04) & 0x01);
GPIO_WriteBit(GPIOE, LCD_PIN_DL_05, (cmd_data >> 0x05) & 0x01); /* 取低8位中的高3位 */
GPIO_WriteBit(GPIOE, LCD_PIN_DL_06, (cmd_data >> 0x06) & 0x01);
GPIO_WriteBit(GPIOE, LCD_PIN_DL_07, (cmd_data >> 0x07) & 0x01);
GPIO_WriteBit(GPIOE, LCD_PIN_DL_08, (cmd_data >> 0x08) & 0x01); /* 取高8位中的低6位 */
GPIO_WriteBit(GPIOE, LCD_PIN_DL_09, (cmd_data >> 0x09) & 0x01);
GPIO_WriteBit(GPIOE, LCD_PIN_DL_10, (cmd_data >> 0x0A) & 0x01);
GPIO_WriteBit(GPIOE, LCD_PIN_DL_11, (cmd_data >> 0x0B) & 0x01);
GPIO_WriteBit(GPIOE, LCD_PIN_DL_12, (cmd_data >> 0x0C) & 0x01);
GPIO_WriteBit(GPIOE, LCD_PIN_DL_13, (cmd_data >> 0x0D) & 0x01);
GPIO_WriteBit(GPIOB, LCD_PIN_DL_14, (cmd_data >> 0x0E) & 0x01); /* 取高8位中的高2位 */
GPIO_WriteBit(GPIOB, LCD_PIN_DL_15, (cmd_data >> 0x0F) & 0x01);
}
void DATAOUT_two(u16 cmd_data)
{
/* 以下代码却不能正常显示液晶屏,连屏幕都不亮,请问这是为何? */
GPIOA->ODR = ((GPIOA->ODR & 0xFFF8) | (cmd_data & 0x0007)); /* 取低8位中的低3位 */
GPIOB->ODR = ((GPIOB->ODR & 0xFFE7) | (cmd_data & 0x0018)); /* 取低8位中的中2位 */
GPIOE->ODR = ((GPIOE->ODR & 0xFF1F) | (cmd_data & 0x00E0)); /* 取低8位中的高3位 */
GPIOE->ODR = ((GPIOE->ODR & 0xC0FF) | (cmd_data & 0x3F00)); /* 取高8位中的低6位 */
GPIOB->ODR = ((GPIOB->ODR & 0x3FFF) | (cmd_data & 0xC000)); /* 取高8位中的高2位 */
}[/mw_shl_code]
|
|