//================寫命令=======================
void LcdSt7565_WriteCmd(uchar cmd)
{
uchar i,j;
LCD_CS = 0; //片選打開
LCD_RS = 0; //選擇寫數(shù)據(jù)(送顯示) AO
LCD_RW = 0; //時鐘置零 SCK
for(i=0;i<8;i++)
{
j = cmd; //變量賦值為需要的數(shù)據(jù)
LCD_RW = 0; //時鐘置低位
LCD_RD = cmd & 0x80; //舍棄低八位 SDA
LCD_RW = 1; //上升沿寫數(shù)據(jù)
cmd = j << 1; //數(shù)據(jù)左移一位
}
LCD_CS = 1; //片選置高
_nop_(); //延時一下
LCD_RS = 1; //釋放讀寫端口
LCD_RD = 1; //釋放數(shù)據(jù)端口 SDA
}
//===================寫數(shù)據(jù)(顯示數(shù)據(jù))=========================
void LcdSt7565_WriteData(uchar dat)
{
uchar i,j;
LCD_CS = 0; //片選打開
LCD_RS = 1; //選擇寫數(shù)據(jù)(送顯示) AO
LCD_RW = 0; //時鐘置零 SCK
for(i=0;i<8;i++)
{
j = dat; //變量賦值為需要的數(shù)據(jù)
LCD_RW = 0; //時鐘置低位
LCD_RD = dat & 0x80; //舍棄低八位 SDA
LCD_RW = 1; //上升沿寫數(shù)據(jù)
dat = j << 1; //數(shù)據(jù)左移一位
}
LCD_CS = 1; //片選置高
LCD_RS = 0; //讀寫置低
_nop_(); //延時一下
LCD_RS = 1; //釋放讀寫端口
LCD_RD = 1; //釋放數(shù)據(jù)端口 SDA
}
其他不用動就可以 端口可以自定義