memdev_autodev.c
来自「嵌入式实时操作系统uc/OS-II于s3c2410的开发测试程序2源代码」· C语言 代码 · 共 259 行 · 第 1/3 页
C
259 行
return 225 - 0.006 * tDiff ; } tDiff -= 15000; if (tDiff < 7500) { return 225 - 90 + 0.012 * tDiff ; } tDiff -= 7000; return 225;}/********************************************************************* Drawing routine**********************************************************************/static void Draw(void * p) { PARAM * pParam = (PARAM *)p; /* Fixed background */ if (pParam->AutoDevInfo.DrawFixed) { GUI_ClearRect (80,50 + bmScaleR140.YSize, 90 + bmScaleR140.XSize - 1, 150); GUI_DrawBitmap(&bmScaleR140, 80, 50); } /* Moving needle */ GUI_SetColor(GUI_WHITE); GUI_AA_FillPolygon(pParam->aPoints, countof(aNeedle), MAG * 150, MAG * 180); /* Fixed foreground */ if (pParam->AutoDevInfo.DrawFixed) { GUI_SetTextMode(GUI_TM_TRANS); GUI_SetColor(GUI_RED); GUI_SetFont(&GUI_Font24B_ASCII); GUI_DispStringHCenterAt("RPM / 1000", 150, 110); }}/********************************************************************* Shows a scale with a needle using a banding memory device**********************************************************************/void DemoScale(void) { int Cnt=0; int tDiff=0; PARAM Param; /* Parameters for drawing routine */ GUI_AUTODEV AutoDev; /* Object for banding memory device */ /* Show message */ GUI_SetColor(GUI_WHITE); GUI_SetBkColor(GUI_BLACK); GUI_Clear(); GUI_SetFont(&GUI_Font8x16); GUI_DispStringHCenterAt("Scale using GUI_AUTODEV-object", 160, 0); /* Enable high resolution for antialiasing */ GUI_AA_EnableHiRes(); GUI_AA_SetFactor(MAG); /* Create GUI_AUTODEV-object */ GUI_MEMDEV_CreateAuto(&AutoDev); /* Show needle for a fixed time */ while (tDiff < 24000) { /* Get value to display an calculate polygon for needle */ Param.Angle = GetAngle(tDiff)* DEG2RAD; GUI_RotatePolygon(Param.aPoints, aNeedle, countof(aNeedle), Param.Angle); GUI_MEMDEV_DrawAuto(&AutoDev, &Param.AutoDevInfo, &Draw, &Param);// GUI_Delay(100); Cnt++; tDiff+=50; Delay(10); } /* Display milliseconds / picture */ GUI_SetColor(GUI_WHITE); GUI_SetFont(&GUI_Font8x16); GUI_DispStringHCenterAt("Milliseconds / picture:", 140, 180); GUI_SetTextAlign(GUI_TA_CENTER); GUI_SetTextMode(GUI_TM_NORMAL); GUI_DispNextLine(); GUI_GotoX(160); GUI_DispFloatMin((float)tDiff / (float)Cnt, 2); /* Delete GUI_AUTODEV-object */ GUI_MEMDEV_DeleteAuto(&AutoDev);}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?