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

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

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

  1. ucData_2_2=0;
  2. }
  3. ucWd2Part2Update=1; //1代表更新显示,响应函数内部会清零
  4. break;
  5. case 3: //设置第3行参数
  6. ucData_2_3--;
  7. if(ucData_2_3>99) //一直减到最后,单片机C语言编译器有一个特征,0减去1会溢出变成255(0xff)
  8. {
  9. ucData_2_3=0;
  10. }
  11. ucWd2Part3Update=1; //1代表更新显示,响应函数内部会清零
  12. break;
  13. case 4: //设置第4行参数
  14. ucData_2_4--;
  15. if(ucData_2_4>99) //一直减到最后,单片机C语言编译器有一个特征,0减去1会溢出变成255(0xff)
  16. {
  17. ucData_2_4=0;
  18. }
  19. ucWd2Part4Update=1; //1代表更新显示,响应函数内部会清零
  20. break;
  21. }
  22. break;
  23. }
  24. uiVoiceCnt=const_voice_short; //按键声音触发,滴一声就停。
  25. ucKeySec=0;//响应按键服务处理程序后,按键编号清零,避免一致触发
  26. break;
  27. case 3:// 切换"光标"移动按键 对应朱兆祺学习板的S9键
  28. switch(ucWd)//在不同的窗口下,设置不同的参数
  29. {
  30. case 1: //窗口1
  31. switch(ucPart)//在窗口1下,根据不同的局部变量来设置不同的参数
  32. {
  33. case 0: //无光标显示的状态 此处的case 0可以省略
  34. break;
  35. case 1: //设置第1行参数
  36. ucPart=2; //光标切换到下一行
  37. ucWd1Part1Update=1; //更新显示原来那一行,目的是更新反显光标的状态
  38. ucWd1Part2Update=1; //更新显示下一行, 目的是更新反显光标的状态
  39. break;
  40. case 2: //设置第2行参数
  41. ucPart=3; //光标切换到下一行
  42. ucWd1Part2Update=1; //更新显示原来那一行,目的是更新反显光标的状态
  43. ucWd1Part3Update=1; //更新显示下一行, 目的是更新反显光标的状态
  44. break;
  45. case 3: //设置第3行参数
  46. ucPart=4; //光标切换到下一行
  47. ucWd1Part3Update=1; //更新显示原来那一行,目的是更新反显光标的状态
  48. ucWd1Part4Update=1; //更新显示下一行, 目的是更新反显光标的状态
  49. break;
  50. case 4: //设置第4行参数
  51. ucWd=2;//切换到第2个窗口
  52. ucPart=1; //光标返回到最上面第一行
  53. ucWd2Update=1; //窗口2整屏更新
  54. break;
  55. }
  56. break;
  57. case 2: //窗口2
  58. switch(ucPart)//在窗口2下,根据不同的局部变量来设置不同的参数
  59. {
  60. case 0: //无光标显示的状态 此处的case 0可以省略
  61. break;
  62. case 1: //设置第1行参数
  63. ucPart=2; //光标切换到下一行
  64. ucWd2Part1Update=1; //更新显示原来那一行,目的是更新反显光标的状态
  65. ucWd2Part2Update=1; //更新显示下一行, 目的是更新反显光标的状态
  66. break;
  67. case 2: //设置第2行参数
  68. ucPart=3; //光标切换到下一行
  69. ucWd2Part2Update=1; //更新显示原来那一行,目的是更新反显光标的状态
  70. ucWd2Part3Update=1; //更新显示下一行, 目的是更新反显光标的状态
  71. break;
  72. case 3: //设置第3行参数
  73. ucPart=4; //光标切换到下一行
  74. ucWd2Part3Update=1; //更新显示原来那一行,目的是更新反显光标的状态
  75. ucWd2Part4Update=1; //更新显示下一行, 目的是更新反显光标的状态
  76. break;
  77. case 4: //设置第4行参数
  78. ucWd=1;//切换到第1个窗口
  79. ucPart=1; //光标返回到最上面第一行
  80. ucWd1Update=1; //窗口1整屏更新
  81. break;
  82. }
  83. break;
  84. }
  85. uiVoiceCnt=const_voice_short; //按键声音触发,滴一声就停。
  86. ucKeySec=0;//响应按键服务处理程序后,按键编号清零,避免一致触发
  87. break;
  88. case 4: // 设置按键对应朱兆祺学习板的S13键,按一次进入设置状态,出现反显光标。再按一次推出设置状态,消除反显光标,并且强行切换到第1个窗口
  89. switch(ucWd)//在不同的窗口下,设置不同的参数
  90. {
  91. case 1://窗口1
  92. switch(ucPart)//在窗口1下,根据不同的局部变量来设置不同的参数
  93. {
  94. case

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

网站地图

Top