请问下,我用这个8080时序的程序用试验箱点亮屏幕没有问题,我自己设计的一款板子,数据口试用的P1口,CS,RS,WR,RD用的P3口,复位脚没有变,初始化也改了对应的脚位,为什么没显示呢,我还要更改其他地方吗?
tomsmiss 发表于 2025-9-4 10:06
请问下,我用这个8080时序的程序用试验箱点亮屏幕没有问题,我自己设计的一款板子,数据口试用的P1口,CS,R ...
这个程序是用的硬件TFT,8位数据只支持P2,其他功能引脚也只能从四组组合中选一种。
你要是用P1,只能软件模拟了。
参考例程
37.1-2.4寸ILI9341驱动TFT显示屏实验程序-带触摸功能,IO模拟I8080接口程序
C_wolf 发表于 2025-9-4 11:31
这个程序是用的硬件TFT,8位数据只支持P2,其他功能引脚也只能从四组组合中选一种。
好的好的,感谢指导
tomsmiss 发表于 2025-9-4 16:08
好的好的,感谢指导
没事,你要是想用到P2P功能,只能用硬件的,那就得重新设计电路了
C_wolf 发表于 2025-9-4 18:31
没事,你要是想用到P2P功能,只能用硬件的,那就得重新设计电路了
void LCD_write(u8 DATA)
{
LCM_CS = 0;
LCM_WR = 0;
// LCD_DataPortH = HVAL;
// LCD_DataPortL = LVAL;
P1=DATA;
LCM_WR = 1;
LCM_CS = 1;
}
u16 LCD_read(void)
{
u16 d;
LCM_CS = 0;
LCM_RD = 0;
delay_us(1); //delay 1 us
// d = LCD_DataPortH;
// d = (d<<8)|LCD_DataPortL;
d =P1;
LCM_RD = 1;
LCM_CS = 1;
return d;
}
void LCD_WR_REG(u8 Reg)
{
LCM_RS=0;
#if LCD_USE8BIT_MODEL
LCD_write(Reg&0xFF);
#else
LCD_write((Reg>>8)&0xFF,Reg&0xFF);
#endif
}
void LCD_WR_DATA(u8 Data)
{
LCM_RS=1;
#if LCD_USE8BIT_MODEL
LCD_write(Data&0xFF);
#else
LCD_write((Data>>8)&0xFF,Data&0xFF);
#endif
}
void LCD_WR_REG_DATA(u8 Reg, u16 dat)
{
LCD_WR_REG(Reg);
LCD_WR_DATA((u8)(dat>>8));
LCD_WR_DATA((u8)dat);
}
void LCD_WR_DATA_16Bit(u16 dat)
{
LCD_WR_DATA((u8)(dat>>8));
LCD_WR_DATA((u8)dat);
}
这个改成软件模拟的了,屏是亮了,就是没内容,这是什么问题呢?能出个模拟的程序不
tomsmiss 发表于 2025-9-5 18:18
void LCD_write(u8 DATA)
{
LCM_CS = 0;
用你自己的板子,配合你的硬件设计,修改37.1程序的管脚配置。
先把37.1程序在你板子上跑起来
C_wolf 发表于 2025-9-6 12:53
用你自己的板子,配合你的硬件设计,修改37.1程序的管脚配置。
先把37.1程序在你板子上跑起来 ...
37.1的程序跑起来没有问题,可以跑,数据口用的P1
tomsmiss 发表于 2025-9-8 10:57
37.1的程序跑起来没有问题,可以跑,数据口用的P1
软件模拟的用不了P2P功能显示图片。
只能先读取FLASH数据到XDATA,再把XDATA数据通过软件模拟来显示。
换硬件吧,重新设计电路,否则体现不出芯片的优越性啊,用着没意义。
C_wolf 发表于 2025-9-8 11:48
软件模拟的用不了P2P功能显示图片。
只能先读取FLASH数据到XDATA,再把XDATA数据通过软件模拟来显示。
好嘞,在新设计了
好帖