1.用C语言设计秒表程序
int main()
{ char m;
struct tm time;
time.hours=time.minutes=time.seconds=0;
printf("Now, press 's' key to begin the clock。\n");
m=getch();
if(m=='s'||m=='S')
while(1)
{
while(!kbhit()) {
update(&time);
display(&time);}
m=getch();
if(m=='s'||m=='S')break;
else{ printf("Only 's' or 'S' can be inputed!!");}
}
}
把main函数改成这样看看行不行
2.基于80C51的电子钟设计与仿真设计的毕业论文
基于AT89S51单片机的数字电子钟设计 论文编号:JD983 论文字数:14560,页数:39 摘要:本文介绍了一款基于AT89S51单片机数字钟的设计,通过多功能数字钟的设计思路,详细叙述了系统硬件、软件的具体实现过程。
论文重点阐述了数字钟硬件中MCU模块、语音模块、时钟模块和相关控制模块等的模块化设计与制作;软件同样采用模块化的设计,包括中断模块、闹钟模块、语音模块、时间调整模块设计,并采用简单流通性强的C语言编写实现。本设计实现了时间与闹钟的修改功能、语音播报功能、年、月、日和星期的显示功能。
并且通过对比实际的时钟,查找出了误差的来源,确定了调整误差的方法,尽可能的减少误差,使得系统可以达到实际数字钟的允许误差范围内。 关键词:AT89S51单片机;数字钟;语音播报 The design of digital electronic clock base on SCM of AT89S51 Abstract:This paper introduced the design of digital clock based on SCM of AT89S51, the specific process of how the system hardware and software achieved were detailed description through the design of multifunction digital clock. The modular design and production, which consisted of MCU module, voice module,clock module and the associated control module, were mainly recounted;As well as hardware designing,software design use the same method, consists suspension module,alarm clock module, voice module, time adjust module, and that use the C language to achieve because of its simple and strong negotiability. In this design the functions of time and alarm clock run and change, voice broadcast,functions of the year, month, day and week display have been achieved. And by comparing the actual clock, find out the source of the error and determined the method of adjusting error, reduce errors as much as possibly, so this system can achieve a practical digital clock with error within the permissible range. Key words :AT89S51 microcontroller; Digital clock; Voice Broadcast 目 录 第1章 绪论 1 1.1 课题背景 1 1.2 课题意义 1 1.3 数字钟的应用 2 1.4 本章小结 2 第2章 整体设计方案 3 2.1 单片机的选择 3 2.2 单片机的基本结构 5 2.3 本章小结 6 第3章 数字钟的硬件设计 7 3.1 最小系统设计 7 3.2 数字钟的外围电路设计 9 3.2.1 时钟电路 9 3.2.2 LCD显示电路 11 3.2.3 语音录放电路 13 3.2.4 电源电路 13 3.2.5 相关控制电路 14 3.3 本章小结 16 第4章 数字钟的软件设计 17 4.1 系统软件设计内容 17 4.2 主程序 18 4.3 时钟设置子程序 20 4.4 中断子程序 23 4.5 LCD显示子程序 24 4.3 本章小结 24 第5章 调试与功能说明 26 5.1 硬件调试 26 5.2 系统性能测试与功能说明 28 5.2.1 系统时钟误差分析 28 5.2.2 软件调试问题及解决 29 5.3 系统PCB图 30 5.4 本章小节 30 结论 31 致谢 32 参考文献 33 附录1 34 附录2 35以上回答来自: /42-6/6041.htm。
3.哪位有基于单片机24小时电子钟毕业设计啊
代做毕业设计 专业代做电子通讯专业毕业设计 承接项目分类:自动控制模拟、家用智能控制、时钟年历计数器、仪器仪表测量、有(无)线通信 自动控制模拟 设计 1、单片机电子报警密码锁设计 2、多路抢答器的设计 3、广告流水灯设计 4、简易智能寻迹小车设计 5、掌声控制开关的设计 6、水温控制与报警器的设计 7、闪烁彩灯的设计 8、单片机交通灯自动化控制的设计 9、步进电机单片机驱动器设计 A、单片机实现电梯控制系统 B、作息时刻表的设计 C、音乐弹奏器的设计 D、LED显示屏控制电路设计 E、小功率开关稳压电源设计与实现 家用智能控制 设计 1、单片机实现简单音乐发生器 2、模拟自然风控制器的设计 3、油烟机自动开关控制器的设计 4、家庭用多路定时电子开关 5、无线门铃的设计 6、LCD时钟温度计设计 7、单片机实现电子密码锁 时钟年历计数器 设计 1、数字电子日历 2、篮球竞赛计时器设计 3、单片机电子日历设计 4、单片机电子时钟设计 5、电子秒表与时钟的设计 6、语音报时的电子钟设计 7、电子时钟的设计 8、基于单片机的数字温度计设计 9、出租车计价器设计与实现 仪器仪表测量 设计 1、单片机控制电压电流显示电路 2、空气湿度控制器的设计 3、数字显示温度计的设计 5、DS18B20的单片机测温系统设计 6、语音报警系统单片机系统设计 7、单片机多路数据采集系统 8、数字频率计设计 无线、通信 设计 1、单片机实现485总线现场检测系统 2、红外多路控制发射/接收系统设计 3、无线多路遥控调频发射/接收系统设计 4、无线遥控彩灯 5、单片机实现点对多点的数据传输 一律采用淘宝和拍拍支付方式,买家先下第一个订单,并付款、确认:支付硬件制作费和论文定金200元。
然后做好以后,再下一个订单:卖家 将电路实物、纸质论文通过快递发货给买家,买家收货无误后,确认付余下款。最后,卖家将论文WORD档、电路图、源代码通过QQ或Email发给 买家。
4.基于51单片机的电子秒表设计
这个是 数码管显示计数器程序。
稍加更改 既满足要求 要精确定时,必须使用自装载方式。这里我们使用T2定时器,让它工作在16bit自动装载方式,这时,有另一个位置专门装着16位预装载值,T2溢出时,预装载值立即被置入。
这就保证了精确定时。 但是,即使是16位定时器,最长的溢出时间也就几十毫秒,要定时一秒,就需要一个变量来保存溢出的次数,积累到了多少次之后,才执行一次操作。
这样就可以累加到1秒或者更长的时间才做一次操作了。 T2定时器有个特殊的地方,它进入中断后,需要自己清除溢出标记,而51的其他定时器是自动清除的。
请参考51单片机相关书籍。 如果使用T2定时器实现1秒精确定时 下面我们就来计算: 仿真器的晶振是22118400HZ,每秒钟可以执行1843200个机器周期。
而T2每次溢出最多65536个机器周期。我们尽量应该让溢出中断的次数最少,这样对主程序的干扰也就最小。
选择每秒中断24次,每次溢出1843200/24=76800个机器周期,超出65536,无效。 选择每秒中断30次,每次溢出1843200/30=61440个机器周期 选择每秒中断32次,每次溢出1843200/32=57600个机器周期 选择每秒中断36次,每次溢出1843200/36=51200个机器周期 选择每秒中断40次,每次溢出1843200/40=46080个机器周期 从上面可以看到我们可以选择方式有很多,但是最佳的是每秒中断30次,每次溢出61440个机器周期。
也就是赋定时器T2初值65536-61440=4096,换成十六进制就是0x1000。 从上面的计算也可以看出晶振2118400Hz的好处,它可以整除的倍数多,要准确定时非常方便。
更常见的应用是在串口波特率上,使用22118400HZ可以输出最多准确的标准波特率。 如果是其他频率的晶振 按照上面的方法计算即可 ******************************************************************/ #include