基于wince的c计时器开发内容摘要:

辩论赛流程 一、 立论阶段 (一)正方一辩开篇立论, 3 分钟 (二)反方一辩开篇立论, 3 分钟 二、攻辩 阶段 (三)反方驳对方立论, 1 分 30 秒 (四)正方驳对方立论, 1 分 30 秒 三、 自由辩论 (九)自由辩论 4 分钟 四、 总结陈词 (十)反方四辩总结陈词, 3 分钟。 (十一)正方四辩总结陈词, 3 分钟。 根据上述辩论赛现实流程,我们决定使用如下流程实现辩论赛计时器设计。 5 顺计时 图 21 核心代码: …… //程序开始时候执行代码 ts =。 //读取计时开始时间 …… …… //每秒执行一次的代码 te =。 //读取当前时间 a = * 3600 + * 60 +。 b = * 3600 + * 60 +。 c = b a。 //当前时间减去开始时间 int hour = c / 3600。 int minute = (c c * hour) / 60。 int second = c hour * 3600 minute * 60。 = (minute)。 //刷新文本框上的显示 = (second)。 开始计时 记录起始时间 ts 读取当前时间 te 显示 tets 结束按钮是否按下 结束 YES NO 6 倒计时 图 22 核心代码: …… d1 = ()。 //获取剩余时间 d2 = ()。 int n = d1 * 60 + d2。 //把剩余时间转换成秒 if (n == 0) { = false。 (时间到。 )。 //到时提示 } else { n = n 1。 //减一秒 d1 = n / 60。 d2 = n % 60。 = (d1)。 //刷新显示 = (d2)。 } …… 开始计时 N=0 Sleep( 1000) N++,显示 n N=0 结束 YES NO 7 交叉计时 图 23 核心代码: …… //正方倒计时相关模块(反方与之一致) if (m1 0) { m1。 = (m1)。 } else { = 0。 = false。 (正方时间到。 )。 …… if (a == 1) { = true。 } //正反方计时相互切换 else { = true。 } …… 开始 A=1 正方倒计时 反方倒计时 如果按下 “交叉计时”, A=0 A=0 A=1 YES NO 8 3. 设计方案 本 程 序主 要运用 timer 控件 去实 现各 种方 式的 计时 ,用 到的 主要 方法 有,用于获取系统当前时间。 还用到了 timer_Tick 函数去控制刷新频率。 图 24 图 24 为程序主界面, label3 位置在程序运行时显示当前时间。 右边四个按钮分别对应辩论赛的四个环节,由于在立论和总结阶段没有双方交错计时,因而直接在主界面进行显示。 点击该两个按钮后就会在“ 0”的位置显示剩余时间。 而按“攻辩”“自由 辩论”“日常计时”按钮则会分别进入相应界面。 9 图 25 上图为攻辩 /自由辩论环节的界面,当为攻辩环节时,初始数值为 90;当为自由辩论环节时,初始数值为 “开始计时”按钮,正方率先开始倒计时;当发言方发生改变时点击“交换计时”,程序就会切换到另一方进行倒计时;点击“暂停”按钮,程 序就会暂停计时,点击“继续”进行恢复。 当某一方时间为0 时就会弹出提示框进行提示。 10 图 26 上图为“日常计时”模块的界面设计图,可用于日常的顺计时和倒计时。 11 USB 线成功的链接实验箱上 WinCE 系统与 PC 机上的 XP 系统 12 够顺利运行在 WinCE 环境下 13 14 经过多次测试,结果显示该应用程序能够在本学期应用过的各个版本的 WinCE 系统上正确运行,具有良好的可移植性。 实验结果表明,本设计能正确执行辩论赛计时和日常计时的功能。 马文化 嵌入式系统设计与开发 科学出版社 (1) 连好网线,设好 IP (2)建立超级链接: 15 (3)下载 ( 以。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。