经过反复分析,找到了问题所在,主要是函数的指针问题。我是将准备显示的字符串数组通过指针传递给显示处理的函数:
LCD_write_ASCII(12,0,(uint8_t *)"AVR128DA48");
这在pic和其他单片机中能正常运行,而在AVR的单片机中却不能正常运行,只能直接指定字库数组的下标:
LCD_write_ASC_SIN(12,0,65);
LCD_write_ASC_SIN(18,0,86);
LCD_write_ASC_SIN(24,0,82);
LCD_write_ASC_SIN(30,0,49);
LCD_write_ASC_SIN(36,0,50);
LCD_write_ASC_SIN(42,0,56);
LCD_write_ASC_SIN(48,0,68);
LCD_write_ASC_SIN(54,0,65);
LCD_write_ASC_SIN(60,0,52);
LCD_write_ASC_SIN(66,0,56);
这样才能逐个显示出字符。
|