(數組被intialised用一串字符)我想在C51上的LCD打印多維字符數組(凱爾)
我也得到一個錯誤說「數據段太大」當我使陣列更大。如何將數組從「CODE」複製到「XDATA」?或者這不是問題?
編輯:當我這樣調用函數時,lcd會跳過數組中的元素[i] []並打印下一個元素[i]。
任何幫助,我會非常感激。
unsigned char piece [4] [8];
lcd_msg_write(piece[0]); //rank
lcd_write(SecondLine);
lcd_msg_write(piece[1]);
lcd_write(SecondLine);
lcd_msg_write(piece[2]);
lcd_write(SecondLine);
lcd_msg_write(piece[3]);
lcd_write(SecondLine);
void lcd_msg_write(char * ptr2)
{
int x;
RS = 1;
for (x=0; x<8;x++)
lcd_write(*ptr2++); //write till end of string reached
RS = 0;
}
void lcd_write(unsigned char display_data)//LCD 1 {
EN = 1;
P0 = display_data;
EN = 0;
delay_5msec(); //delay to allow write operation to complete
}