Esempio n. 1
0
/****************************************************************************
* 名称:GUI_PutString8_8()
* 功能:输出显示字符串((8*8字体,没有自动换行功能)。
* 入口参数: x		指定显示位置,x坐标
*           y		指定显示位置,y坐标
*           str		要显示的ASCII码字符串
* 出口参数:无
* 说明:操作失败原因是指定地址超出有效范围。
****************************************************************************/
void  GUI_PutString8_8(uint32 x, uint32 y, char *str)
{  while(1)
   {  if( (*str)=='\0' ) break;
      if( GUI_PutChar8_8(x, y, *str++)==0 ) break;
      x += 6;								// 下一个字符显示位置,y不变(即不换行)
   }
}
Esempio n. 2
0
void GUI_Printf(U8 ch)
{

#define AREA_NUM (1)
#define AREA_WIDTH (1024/AREA_NUM)
#define AREA_HEIGHT (600)

    if((lcd_x - (cur_area + 1)*AREA_WIDTH) > 0)
    {
        lcd_x = cur_area * AREA_WIDTH;
        lcd_y += 8;
#if CLEAN_LINE
        guiCleanLine(lcd_y);
#endif
    }
    if(lcd_y >= AREA_HEIGHT)
    {
        cur_area++;
        lcd_x = cur_area * AREA_WIDTH;
        lcd_y = 0;

        if(AREA_NUM == cur_area)
        {
            cur_area = 0;
            lcd_x = 0;
            lcd_y = 0;
#if CLEAN_LINE
            guiCleanLine(lcd_y);
#else
            GUI_Clean();
#endif
        }
    }

    if(ch == '\r')
        return;

    if(ch == '\n')
    {
        lcd_y += 8;
        lcd_x = cur_area * AREA_WIDTH;
#if CLEAN_LINE
        guiCleanLine(lcd_y);
#endif
        return;
    }

    GUI_PutChar8_8(lcd_x, lcd_y, ch);
    lcd_x += 7;

}