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

📄 lcm_disp.c

📁 DP_51PRO实验仪图形液晶显示实验。先在屏幕上的随机位置显示随机数字(0--9)
💻 C
字号:
/***********************************************************************
* 文件名:LCM_DISP.C
* 功能:DP_51PRO实验仪图形液晶显示实验。先在屏幕上的随机位置显示随机数字(0--9),
*      然后调用画直线函数以屏幕中心为中点画对称的直线,最后显示一个简单的窗口。
***********************************************************************/
#include  "CONFIG.H"

/***********************************************************************
* 名称:DelayS()
* 功能:长软件延时。
* 入口参数:delayno	延时时间控制
***********************************************************************/
void  DelayS(uint16 delayno)
{  uint16  i;

   for(; delayno>0; delayno--)
   {  for(i=0; i<1000; i++);  
   }
}



/***************************************************************
* 名称:main()
* 功能:主函数,初始化图形液晶模块,在屏幕上的随机位置显示随机数字(0--9),
*      然后调用画直线函数以屏幕中心为中点画对称的直线,最后显示一个简单
*      的窗口。
***************************************************************/ 
void  main(void)
{  uint8  i;
   uint8  bak;

   while(1)
   {  LCM_DispIni();				// 初始化图形液晶模块
      /* 提示加载程序,即显示"Load..." */
      LCM_DispStr(6, 3, "Load" );
      for(i=0; i<5; i++)
      {  LCM_DispChar(6, i+7, '.');
         DelayS(10);
      }

      /* 数字显示演示 */
      srand(168);				// 初始化随机种子
      LCM_DispClr();					
      for(i=0; i<250; i++)
      {  uint8  x, y;

         x = rand()&0x07;			// 取得随机显示位置
         y = rand()&0x0f;
         bak = rand()%10 + '0';			// 取利随机显示数字'0'--'9'
         LCM_DispChar(x, y, bak);
         DelayS(2);
      }

#define	CENTER_X	64
#define CENTER_Y	32 
      /*  直线演示。由于直线要基于中心点,具有对称性,所以只要取出第一个点,
          即可推出这条直线。这样做同样达到不同角度的目的。
      */
      LCM_DispClr();
      for(i=0; i<250; i++)
      {  uint8  x0, y0;
         uint8  x1, y1;
    
         /* 取第一个点坐标 */
         x0 = rand()&0x7f;			// 取得随机起点
         y0 = rand()&0x3f;

         /* 计算出中心对称点 */
         x1 = 2*CENTER_X - x0;
         y1 = 2*CENTER_Y - y0;

         Line(x0, y0, x1, y1, 1);
         DelayS(5);
      }

      /* 画窗口演示 */
      LCM_DispClr();	
      Rectangle(0, 0,  127, 63, 1);		// 显示窗口
      HLine(0, 10, 127, 1);
      RLine(10, 0, 10, 1);
      Line(0, 0, 10, 10, 1);
      Line(10, 0, 0, 10, 1);
      RLine(120, 10, 63, 1);			// 显示滚动条
      RectangleFill(120, 20, 127, 30, 1);
      LCM_DispStr(4, 4, "DP-51PRO" );		// 在窗口中显示内容
      LCM_DispStr(5, 1, "www.zlgmcu.com" );			
      DelayS(1500);
   } // end of while(1) ...
}

⌨️ 快捷键说明

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