c语言结构体编程时钟,C语言作业:结构体编程练习 在屏幕上模拟显示一个数字式时钟 源代码能给我的话+50,感谢...

#include

struct clock {

int hour;

int minute;

int second;

};

typedef struct clock CLOCK;

/*

函数功能:时、分、秒时间的更新

函数参数:无

函数返回值:无

*/

void Update(CLOCK *myclock) {

myclock->second++;

if (myclock->second == 60) { /*若second值为60,表示已过1分钟,则 minute值加1*/

myclock->second = 0;

myclock->minute++;

}

if (myclock->minute == 60){ /*若minute值为60,表示已过1小时,则 hour值加1*/

myclock->minute = 0;

myclock->hour++;

}

if (myclock->hour == 24) { /*若hour值为24,则hour的值从0开始计时*/

myclock->hour = 0;

}

}

/*

函数功能:时、分、秒时间的显示

函数参数:无

函数返回值:无

*/

void Display(CLOCK *myclock) { /*用回车符'\r'控制时、分、秒显示的位置*/ printf("%2d:%2d:%2d\r", myclock->hour, myclock->minute, myclock->second);

}

/*

函数功能:模拟延迟1秒的时间

函数参数:无

函数返回值:无

*/void Delay(void) {

long t;

for (t = 0; t < 290000000; t++) {

/*循环体为空语句的循环,起延时作用*

}

}

int main(){

CLOCK myclock;

long i;

myclock.hour = myclock.minute = myclock.second = 0;

/*hour,minute,second赋初值0*/

for (i = 0; i < 100000; i++) { /*利用循环结构,控制时钟运行的时间*/

Update(&myclock); /*时钟更新*/

Display(&myclock); /*时间显示*/

Delay(); /*模拟延时1秒*/

}

return 0;

}

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
模拟电子 Multisim仿真实 数字电子Multisim仿真实验Multisim仿真实例合集500例: 0音调音频放大器.ms14 1-99分钟倒计时 (1).ms10 1.6KHz输出幅度可调四种波形发生器 (2).ms10 1.6KHz输出幅度可调四种波形发生器.ms10 161210 交流接触器自锁互锁.ms10 161212 555触摸延时.ms10 161216 555多谐振荡喇叭应用.ms10 161219 交通灯控制器设计(改).ms14 161224 78XX增强型稳压输出电路.ms13 161225 八路彩灯控制器.ms10 170414 200KHz三角波3554.ms10 170414 200KHz三角波5534.ms10 170414 文氏振荡 5KHz ±5V.ms10 170415 三种波形发生器 5kHz ±5V.ms10 170417 LM723过流保护直流可调稳压电源.ms10 170417 TDA2030音调音频放大器.ms10 170621 自动打铃器(6组定时).ms10 170622 三位数密码锁.ms10 170624 速度表.ms12 170709 交通信号灯 60(5) 45(5).ms13 170923 彩灯控制器(部分).ms10 171219 八位二进制转三位十进制.ms13 171230 序列脉冲控制电子锁.ms10 171230 序列脉冲控制电子锁.ms11 171231 出租车自动计费器.ms10 171231 出租车计费器.ms10 180101 出租车计费器X 等候过程错误计费问题】.ms10 180119 过压欠压保护电路.ms10 180307 MAX16823应用.ms10 180423 信号发生器.ms10 5-12V+可调稳压电源电路(317).ms10 5-20V+可调稳压电源电路(317).ms14 50-5-30 红绿灯控制电路 (2).ms10 50-5-30 红绿灯控制电路.ms10 6路20秒声光显示计分抢答器.ms14 6路20秒声光显示计分抢答器.ms14 8位ADC应用-LM317 5-12调压显示.ms13 8路抢答器电路 (2).ms10 8路抢答器电路.ms10 BCD应用 BCD译码器.ms13 Multisim仿真—电路&模电&数电.doc Multisim模拟电路仿真实例.ppt Multisim电路实例 TL494 DC-DC应用.ms12 三种波形发生器 (2).ms10 三种波形发生器.ms10 交通灯20-3-10-3 (2).ms10 交通灯.ms10 四种波形发生器-741 (2).ms10 四种波形发生器-741.ms10 四路20秒声光显示计分抢答器 (2).ms10 四路20秒声光显示计分抢答器.ms10 基于Multisim的高频信号发生器设计.doc 定时3秒的蜂鸣器可预置的有点错的倒计时定时器.ms14 小车灯光模拟器 拔河游戏 (2).ms10 拔河游戏.ms10 数字日历设计 (2).ms10 数字日历设计.ms10 数字时钟电路带兴起显示.ms14 数字时钟电路带兴起显示.ms14 (Security copy) 数字电子仿真实验 数字电子钟仿真电路图 (2).ms10 数字电子钟仿真电路图.ms10 数字跑表 (2).ms13 数字跑表.ms13 数码管的简单控制 (2).ms13 数码管的简单控制.ms13 模拟电子仿真实验 正弦波741 (2).ms10 正弦波741.ms10 程控宽带放大器 第1章应用举例 第2章应用举例 第3章应用举例 第4章应用举例 简易洗衣机2_X (2).ms10 简易洗衣机2_X.ms10 简易电梯 (2).ms13 简易电梯.ms13 篮球30秒计时器_X (2).ms13 篮球30秒计时器_X.ms13 负反馈式音调控制电路 (2).ms12 负反馈式音调控制电路.ms12 高频电路实验Multisim版1-52.doc
目 录 第一章 选题背景 2 第二章 课程设计说明 3 1.1 课程设计目的 3 1.2 课程设计要求 4 第三章 系统方案与总体结构 4 第四章 数字时钟硬件构成 5 4.1 数字时钟框图设计 5 4.2 选用芯片简介 5 4.2.1 80C51简介 5 4.2.2 BCD 7段译码74LS47简介 10 4.2.3 3-8线译码器74LS138简介 10 4.2.4 LED数码显示器简介 11 4.3 数字时钟工作原理图 11 4.3.1 数字时钟电路总图 11 4.3.2 复位电路原理图 12 4.3.3 按键电路原理图 13 4.3.4 时钟电路原理图 13 4.3.5 LED数码管硬件电路原理图 13 第五章 数字时钟软件设计 14 第六章 数字时钟编程序 17 第七章 心得体会 25 参考文献 26 第一章 选题背景 20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的 各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电 子产品性能进一步提高,产品更新换代的节奏也越来越快。 时间对人们来说总是那么宝贵,工作的忙碌性和繁杂性容易使人忘记当前的时间。忘记 了要做的事情,当事情不是很重要的时候,这种遗忘无伤大雅。但是,一旦重要事情, 一时的耽误可能酿成大祸。 目前,单片机正朝着高性能和多品种方向发展趋势将是进一步向着CMOS化、低功耗、 小体积、大容量、高性能、低价格和外围电路内装化等几个方面发展。下面是单片机的 主要发展趋势。 单片机应用的重要意义还在于,它从根本上改变了传统的控制系统设计思想和设计方 法。从前必须由模拟电路或数字电路实现的大部分功能,现在已能用单片机通过软件方 法来实现了。这种软件代替硬件的控制技术也称为微控制技术,是传统控制技术的一次 革命。 单片机模块中最常见的是数字时钟数字时钟是一种用数字电路技术实现时、分、秒 计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更长 的使用寿命,因此得到了广泛的使用。 数字时钟是采用数字电路实现对时、分、秒数字显示的计时装置,广泛用于个人家庭 、车站、码头办公室等公共场所,成为人们日常生活中不可少的必需品,由于数字集成电 路的发展和石英晶体振荡器的广泛应用,使得数字时钟的精度,远远超过老式钟表, 钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功 能。诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯 、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以 钟表数字化为基础的。因此,研究数字时钟及扩大其应用,有着非常现实的意义。 第二章 课程设计说明 1.1 课程设计目的 课程设计是本课程教学中极为重要的实践性教学环节,它不但起着提高本课 程教学质量、水平和检验学生对课程内容掌握程度的作用,而且还将起到从理论过渡到 实践的桥梁作用。因此,必须认真组织,周密布置,积极实施,以达到下述教学目的。 1.通过课程设计,使学生进一步巩固、深化和扩充在单片机原理及相关课程方面的基本 知识、基本理论和基本技能,达到培养学生独立思考、分析和解决实际问题的能力。 2.通过课程设计,使学生养成严谨科学、严肃认真、一丝不苟和实事求是的工作作风, 达到提高学生基本素质的目的。 3.通过课程设计,让学生独立完成利用单片机实现某一实际控制系统的基本设计工作, 达到培养学生综合应用所学知识和实际查阅相关设计资料的能力的目的。 4.通过课程设计,使学生熟悉设计过程,了解设计步骤,掌握设计内容,达到培养学生 设计电路、实现软件编程和编写设计说明书能力的目的,为学生今后从事相关方面的实 际工作打下良好基础。 1.2 课程设计要求 (1)根据设计课题的技术指标和给定条件,在教师指导下,能够独立而正确地进行方 案论证和设计计算,要求概念清楚、方案合理、方法正确、步骤完整; (2)要求学生掌握单片机的设计内容、方法和步骤; (3)要求会查阅有关参考资料和手册等; (4)要求学会选择有关元件和参数; (5)要求学会绘制有关电路图和设计流程图; (6)要求学会编写设计说明书。 第三章 系统方案与总体结构 系统采用通用的80C51芯片,显示器为6个共阳极LED数码管,用1个BCD 7段译码器74LS47驱动数码管(74LS47的输入为BCD码,其输出级为集电极开路输出,可 直接驱动7段译码管,具有首尾消零等特点),用3- 8译码器74LS138的输出作为动态扫描时数码管的选通信号,因为采用了上述两个芯片, 所以在对数码管进行扫描显示时,只需要单片机的7条I/O线就能完成显示功能了。 选用P0.0--P0.3作为显示数据值的输出,连接在BCD 7段译码器74LS47

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值