欢迎来到天天文库
浏览记录
ID:24058621
大小:48.00 KB
页数:3页
时间:2018-11-12
《基于windowsce系统的模拟时钟设计》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、基于WindowsCE系统的模拟时钟设计【】本文介绍了一种基于oveTo(x1,y1)和LineTo(x2,y2)实现指针的连接并实时显示。为了让模拟时钟看起来更加平滑美观,本文设计每2分钟,时针移动1度;每10秒钟,分针移动1度;秒针则是每秒移动一格即6度。因此要计算时分秒针的坐标位置,还需在校正后角度的三角函数正余弦数组中加入一定的数组元素,构成新的三角函数正余弦数组:(1)时针的取值只有1~12这12个数字,本文设计每2分钟,时针移动1度。此处用读取的分钟数和小时数来计算时针的顶点和终点坐标。设读取系统时间的小时数为st.inute,时针移动的度数为H。由于S3C2440系统时间采用2
2、4小时制,当读取系统小时数小于等于12,则H=st.inute/2;当系统小时数大于12,则H=(st.inute/2。若得到的H=360,则取H为0;若H360,则H取式中算出的值。将算出的H代入下列公式,即可算出时针的顶点和终点坐标。其中x和y为表盘圆心坐标,下同。(2)分针的取值是60个数字,本设计为每10秒分针移动1度。用读取的分钟数和秒钟数来计算分针的顶点和终点坐标。设读取的分钟数为st.inute,秒钟数为st.。由于要使得每10秒分针移动1度,因此计算时要加上st.=st.inute*6+st.=360,则取M为0。将算出的M代入下列公式,即可算出分针的顶点和终点坐标。(3)秒
3、针的取值亦为60个数字,本设计为每过1秒钟,秒针移动1格。设读取系统的秒钟数为st.wSecond,秒针移动的度数为S。S=st.wSecond*6,当计算出的S=360时,S取0;否则取计算出的值。将算出的S代入下列公式,即可算出秒针的顶点和终点坐标。时钟指针画法流程图:见图2。绘制指针的核心代码:程序界面设计结构为上方显示模拟钟,下方显示数字钟和时间调整按钮。本设计程序在一个显示界面下实现了模拟钟、数字钟和时间调整的功能。程序运行效果如图3所示。指针和刻度颜色可根据个人喜好设定,笔者设置为黑色。5.结语本文的设计在WindowsCE操作系统下,实现了模拟钟的全部显示功能,同时还具有数字钟
4、的显示和时间调整功能。编译形成的可执行文件,可用于智能、PDA、带触屏的开发板等具有WindowsCE系统的微型设备中,对嵌入式初学者也有很大的帮助。
此文档下载收益归作者所有