官网例子中LCD_DataPortH LCD_DataPortL 的低八位是虚构出来的吗?这个咋理解呢?
STC32G12K128#defineLCD_DataPortH P6 //高8位数据口,8位模式下只使用高8位
#defineLCD_DataPortL P2 //低8位数据口,8位模式下低8位可以不接线
sbit LCD_RS = P4^5; //数据/命令切换
sbit LCD_WR = P4^2; //写控制
sbit LCD_RD = P4^4; //读控制
sbit LCD_CS = P3^4; //片选
sbit LCD_RESET = P4^3; //复位
AI8051U
//IO连接
#defineLCD_DataPortH P2 //高8位数据口,8位模式下只使用高8位
#defineLCD_DataPortL P6 //低8位数据口,8位模式下低8位可以不接线
sbit LCD_RS = P4^5; //数据/命令切换
sbit LCD_WR = P3^6; //写控制
sbit LCD_RD = P3^7; //读控制
sbit LCD_CS = P0^5; //片选
sbit LCD_RESET = P4^7; //复位
-------------------------------------------------------------------
官网例子中LCD_DataPortHLCD_DataPortL的低八位是虚构出来的吗?这个咋理解呢?
在STC32G12K128低八位LCD_DataPortL 应该是P几呢?
p6 应该和这个有关
48个引脚好像没有p6口啊,有点迷糊 //低8位数据口,8位模式下低8位可以不接线,16位模式下才需要低8位吧,8位模式只需要高8位。 8位模式只使用高8位,低8位不接
比如要发16位数据,16位并口1次就发过去了,8位并口就拆成2次发 soma 发表于 2025-2-5 19:43
//低8位数据口,8位模式下低8位可以不接线,16位模式下才需要低8位吧,8位模式只需要高8位。 ...
void LCD_Set_GPIO(void)
{
//P2口设置成推挽输出
P2M0=0xff;
P2M1=0x00;
//P0.4口设置成高阻输入,P0.5推挽输出
P0M0=0x20;
P0M1=0x10;
//P1.4,P1.5口设置成高阻输入
P1M0=0x00;
P1M1=0x30;
//P6口设置成高阻输入(8bit)
P6M0=0x00;
P6M1=0xff;
//P3.7,P3.6口设置成推挽输出
P3M0=0xc0;
P3M1=0x00;
//P4.7,P4.5口设置成推挽输出
P4M0=0xa0;
P4M1=0x00;
//P5.3口设置成推挽输出
P5M0=0x08;
P5M1=0x00;
}
官网的例子设置了p6,我没看懂这个p6是啥?
如果我要在stc32g上用这个例子的话,我必须改:
void LCD_Set_GPIO(void)
{
//P6口设置成推挽输出
P6M0=0xff;
P6M1=0x00;
//P0.4口设置成高阻输入,P0.5推挽输出
P0M0=0x20;
P0M1=0x10;
//P1.4,P1.5口设置成高阻输入
P1M0=0x00;
P1M1=0x30;
//P6口设置成高阻输入(8bit)
P6M0=0x00;
P6M1=0xff;
//P4.4,P4.2口设置成推挽输出
// P4M0=0x14;
// P4M1=0x00;
//P4.3,P4.5口设置成推挽输出
// P4M0=0x28;
P4M0=0x3C;
P4M1=0x00;
//P3.4口设置成推挽输出
P3M0=0x10;
P3M1=0x00;
}
DebugLab 发表于 2025-2-5 20:41
8位模式只使用高8位,低8位不接
比如要发16位数据,16位并口1次就发过去了,8位并口就拆成2次发 ...
电路图上不是只有8根线么?有16位模式吗? 官网的例子里有个P6端口,但是实际管脚就没有p6呢,有些糊涂。 soma 发表于 2025-2-5 19:43
//低8位数据口,8位模式下低8位可以不接线,16位模式下才需要低8位吧,8位模式只需要高8位。 ...
试验箱上那个低8位压根没用对吧? DebugLab 发表于 2025-2-5 20:41
8位模式只使用高8位,低8位不接
比如要发16位数据,16位并口1次就发过去了,8位并口就拆成2次发 ...
试验箱上那个低8位压根没用对吧?
页:
[1]
2