⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.c

📁 嵌入式系统设计与开发实例详解--基于ARM的应用(采用ARM7TDMI内核的、三星公司推出的S3C44B0X) 第二部分:guiHZK,guiMemDev,guiScale,guiWM
💻 C
字号:
#include <math.h>
#include <stddef.h>
#include "gui\core\GUI.h"

#include "Target\44b.h"
#include "Target\44blib.h"
/********************************************/
//   ARMSYS实验二十:GUI绘图和文字 
//   描述:利用GUI提供的API函数绘制图形和文字                   
/********************************************/

static void DrawScale(void) {
  int XSize = LCD_GetXSize();
  int YSize = LCD_GetYSize();
  int XMid = XSize / 2;
  
    int a;
    int c = 0;
    int r1 = 110;
    int r2 = 140;
    int rt = 100;
    int y = 180;
    int step = 15;
    int r = (r1 + r2) / 2;
    GUI_Clear();
    GUI_SetFont(&GUI_Font8x16);
    GUI_DispStringHCenterAt("Drawing a scale using GUI-functions", XMid, 0);
    GUI_SetPenSize(r2 - r1);
    GUI_SetColor(0x0000AA);
    //GUI_AA_DrawArc(XMid, y, r, r,  45, 60);
    GUI_DrawArc(XMid, y, r, r,  45, 60);
    GUI_SetColor(0x00AA00);
    //GUI_AA_DrawArc(XMid, y, r, r,  60, 90);
    GUI_DrawArc(XMid, y, r, r,  60, 90);
    GUI_SetPenSize(2);
    GUI_SetColor(GUI_WHITE);
    //GUI_AA_DrawArc(XMid, y, r1, r1, 45, 135);
    //GUI_AA_DrawArc(XMid, y, r2, r2, 45, 135);
    GUI_DrawArc(XMid, y, r1, r1, 45, 135);
    GUI_DrawArc(XMid, y, r2, r2, 45, 135);
    for (a=45; a<=135; a+=step) {
      float co = cos(a*3.1415926/180);
      float si = sin(a*3.1415926/180);
      int x1 = XMid - r1 * co;
      int y1 = y    - r1 * si;
      int x2 = XMid - (r2 - 1) * co;
      int y2 = y    - (r2 - 1) * si;
      int xt = XMid - rt * co;
      int yt = y    - rt * si;
      GUI_SetColor(GUI_WHITE);
      GUI_SetPenSize(2);
      //GUI_AA_DrawLine(x1,y1,x2,y2);
      GUI_DrawLine(x1,y1,x2,y2);
      GUI_SetColor(GUI_GREEN);
      GUI_SetFont(&GUI_Font8x8);
      GUI_DispCharAt('0' + c++, xt - 4, yt - 4);
    }
  
}
/*
  *******************************************************************
  *
  *              main()
  *
  *******************************************************************
*/
void Main(void) {

    int i=0;
  
    rSYSCFG=CACHECFG;// Using 8KB Cache//
	Port_Init();
	Uart_Init(0,115200);
	Led_Display(0xf);
	Delay(0);
    Beep(0x01);
	Uart_Select(0); //Select UART0//
	Uart_Printf("\n*************************************************************************");
	Beep(0x0);
	Uart_Printf("\n*                          立泰电子                                      *");
	Uart_Printf("\n*                     -GUI应用:绘制表盘-                                 *");
	Uart_Printf("\n*                          Version 1.10                                 *");    
	Uart_Printf("\n*                     Email:rao_dali@263.net                            *");
	Uart_Printf("\n*             UART Config--COM:115.2kbps,8Bit,NP,UART0                  *");
	Uart_Printf("\n*------------------Begin to Start Drawing,OK? (Y/N)-------------------*");
	Led_Display(0x0);

    GUI_Init();//对GUI进行初始化(包括对LCD显示的初始化)
    DrawScale();
    while(1); 

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -