微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 第78节:多个窗口里移动光标设置参数的液晶屏菜单程序

第78节:多个窗口里移动光标设置参数的液晶屏菜单程序

时间:11-22 来源:互联网 点击:

  1. (3,16,Hz1616_er,0,2,16,0);
  2. display_lattice(4,16,Hz1616_hang,0,2,16,0);
  3. display_lattice(8,0,Hz1616_er,0,2,16,0); //二窗口三行
  4. display_lattice(9,0,Hz1616_chuang,0,2,16,0);
  5. display_lattice(10,0,Hz1616_kou,0,2,16,0);
  6. display_lattice(11,0,Hz1616_san,0,2,16,0);
  7. display_lattice(12,0,Hz1616_hang,0,2,16,0);
  8. display_lattice(8,16,Hz1616_er,0,2,16,0); //二窗口四行
  9. display_lattice(9,16,Hz1616_chuang,0,2,16,0);
  10. display_lattice(10,16,Hz1616_kou,0,2,16,0);
  11. display_lattice(11,16,Hz1616_si,0,2,16,0);
  12. display_lattice(12,16,Hz1616_hang,0,2,16,0);
  13. }
  14. if(ucWd2Part1Update==1) //窗口2的第1行局部更新显示变量,里面放一些经常需要刷新显示的内容
  15. {
  16. ucWd2Part1Update=0; //及时清零,避免一直更新
  17. if(ucPart==1) //被选中
  18. {
  19. ucCursorFlag=1; //反显 显示
  20. }
  21. else //没被选中
  22. {
  23. ucCursorFlag=0; //正常 显示
  24. }
  25. if(ucData_2_1>=10) //有2位数以上
  26. {
  27. ucAnyNumber_10=ucData_2_1/10;//十位
  28. }
  29. else //否则显示空
  30. {
  31. ucAnyNumber_10=10;//在下面的转换函数中,代码10表示空字模
  32. }
  33. ucAnyNumber_1=ucData_2_1%10/1;//个位
  34. p_ucAnyNumber_10=number_to_matrix(ucAnyNumber_10); //把数字转换成字模首地址
  35. p_ucAnyNumber_1=number_to_matrix(ucAnyNumber_1); //把数字转换成字模首地址
  36. insert_buffer_to_canvas(2,0,p_ucAnyNumber_10,ucCursorFlag,1,16);//把十的字模插入画布
  37. insert_buffer_to_canvas(3,0,p_ucAnyNumber_1,ucCursorFlag,1,16);//把个的字模插入画布
  38. display_lattice(5,0,ucCanvasBuffer,0,4,16,0); //显示整屏的画布,最后的参数0是偏移量
  39. }
  40. if(ucWd2Part2Update==1) //窗口2的第2行局部更新显示变量,里面放一些经常需要刷新显示的内容
  41. {
  42. ucWd2Part2Update=0; //及时清零,避免一直更新
  43. if(ucPart==2) //被选中
  44. {
  45. ucCursorFlag=1; //反显 显示
  46. }
  47. else //没被选中
  48. {
  49. ucCursorFlag=0; //正常 显示
  50. }
  51. if(ucData_2_2>=10) //有2位数以上
  52. {
  53. ucAnyNumber_10=ucData_2_2/10;//十位
  54. }
  55. else //否则显示空
  56. {
  57. ucAnyNumber_10=10;//在下面的转换函数中,代码10表示空字模
  58. }
  59. ucAnyNumber_1=ucData_2_2%10/1;//个位
  60. p_ucAnyNumber_10=number_to_matrix(ucAnyNumber_10); //把数字转换成字模首地址
  61. p_ucAnyNumber_1=number_to_matrix(ucAnyNumber_1); //把数字转换成字模首地址
  62. insert_buffer_to_canvas(2,0,p_ucAnyNumber_10,ucCursorFlag,1,16);//把十的字模插入画布
  63. insert_buffer_to_canvas(3,0,p_ucAnyNumber_1,ucCursorFlag,1,16);//把个的字模插入画布
  64. display_lattice(5,16,ucCanvasBuffer,0,4,16,0); //显示整屏的画布,最后的参数0是偏移量
  65. }
  66. if(ucWd2Part3Update==1) //窗口2的第3行局部更新显示变量,里面放一些经常需要刷新显示的内容
  67. {
  68. ucWd2Part3Update=0; //及时清零,避免一直更新
  69. if(ucPart==3) //被选中
  70. {
  71. ucCursorFlag=1; //反显 显示
  72. }
  73. else //没被选中
  74. {
  75. ucCursorFlag=0; //正常 显示
  76. }
  77. if(ucData_2_3>=10) //有2位数以上
  78. {
  79. ucAnyNumber_10=ucData_2_3/10;//十位
  80. }
  81. else //否则显示空
  82. {
  83. ucAnyNumber_10=10;//在下面的转换函数中,代码10表示空字模
  84. }
  85. ucAnyNumber_1=ucData_2_3%10/1;//个位
  86. p_ucAnyNumber_10=number_to_matrix(ucAnyNumber_10); //把数字转换成字模首地址
  87. p_ucAnyNumber_1=number_to_matrix(ucAnyNumber_1); //把数字转换成字模首地址
  88. insert_buffer_to_canvas(2,0,p_ucAnyNumber_10,ucCursorFlag,1,16);//把十的字模插入画布
  89. insert_buffer_to_canvas(3,0,p_ucAnyNumber_1,ucCursorFlag,1,16);//把个的字模插入画布
  90. display_lattice(13,0,ucCanvasBuffer,0,4,16,0); //显示整屏的画布,最后的参数0是偏移量
  91. }
  92. if(ucWd2Part4Update==1) //窗口2的第4行局部更新显示变量,里面放一些经常需要刷新显示的内容
  93. {
  94. ucWd2Part4Update=0; //及时清零,避免一直更新
  95. if(ucPart==4) //被选中
  96. {
  97. ucCursorFlag=1; //反显 显示
  98. }
  99. else //没被选中
  100. {
  101. ucCursorFlag=0; //正常 显示
  102. }
  103. if(ucData_2_4>=10) //有2位数以上
  104. {
  105. ucAnyNumber_10=ucData_2_4/10;//十位
  106. }
  107. else //否则显示空
  108. {

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top