文档库 最新最全的文档下载
当前位置:文档库 › 数电课程设计报告 万年历

数电课程设计报告 万年历

数电课程设计报告 万年历
数电课程设计报告 万年历

北京工商大学

《数字电子技术基础》课程设计报告

学 院: 计算机与信息工程学院

专 业: 信实

生 姓

名: 薛子朦

学 号: 1004060121

课程设计题目: 1.具有运算及存储功能的计算机

2.数字万年历

设 计 时 间: 2012/12.23至2012/12.26

题目要求:一.运算存储计算机

自行设计指令,实现两个数字相加或相减的运算,指令得到

译码后控制存储器的相关元件,使数据输入目的地并用代码存在存储

器里,用0、1字符串来表示;最后运算的结果要有所表示;可参考冯

诺依曼计算机体系结构。

二.数字万年历

实现万年历数字显示功能,能显示准确的年(平年闰年)、

月(大小月)、星期、日、小时、分钟、秒,并能实现上闹钟功能。

一、设计目的

1、掌握不同集成芯片的逻辑功能及使用方法

2、掌握加法器、存储器的工作原理

3、掌握数字电子钟及万年历的组成及工作原理

4、数字电子钟及万年历的设计与制作

5、熟悉multisim 电子电路设计及仿真软件的应用

6、灵活运用课本知识解决实际问题

7、锻炼主动思考的思维方式

二、设计思路---运算、存储计算机

1.74LS283超前进位并行加法器的串接可以计算八位二进制数的加法运算

2.将输出的八位二进制数转换成三位十进制数,通过数码管显示

3.通过8421BCD 码编码器,将十进制数转化成四位二进制数

4.选择74LS283超前进位并行加法器的组合形成8421BCD 码加法器

5.编码器与74LS283加法器相接,通过 8421BCD 码加法器串接可以计算三位十进制数的加法运算,输出结果通过数码管显示

八位二进制加数

与被加数输入八位二进制数

加法运算

九位二进制数到三位

十进制BCD 码的转换

三位数码管显示输出四位数码管显示输出

三位十进制加数 与被加数输入

三位十进制BCD 码

加法运算

设计思路---数字万年历

1、设计60进制秒计数器,用来实现秒-分及分-时的计数功能

2、设计24进制时计数器,用来实现时-日的计数功能

3、设计31、30、29、28制天计数器,用来实现不同月份的月计数功能

4、设计12机制月计数器,用来实现月-年计数功能

5、设计7进制周计数器,用来实现日-周计数功能

6、设计闰年平年不同月份不同进制逻辑电路

7、设计调整时间电路

8、整合所有电路并根据演示需要增加控制开关

三、系统综述(运算、存储计算机)

控制电路是总体电路的枢纽,是控制电路开启和关闭的部分。电路的控制可

以采用多种方式,诸如开关、脉冲等。本次设计主要侧重于三位十进制数(000

到255)的输入,于是就要通过一个双掷开关来实现高低电平的输入,双掷开关

的另外两头一个接高电平5伏电压,一个接地,通过开关的开和关来实现1和0

的输入,这样就实现了电路的控制。本次设计一共用到54个双掷开关,其型号

为SPDT 。开关从下往上、从左往右依次来表示二进制数1到9的输入,其中开

关都断开表示0的输入。在如图所示的部分开关电路中,J1到J9别表示1到9,

实现了0到9的输入。

编码电路是总体电路的第二部分,其主要作用是实现十进制数到二进制数的

转换,本次设计中要用到的是10线-4线优先编码器74LS147,通过输入一个十

进制数转换到了四位二进制数,由于74LS147的输入和输出都是低电平有效,因

此输出的是四位十进制数的反码,而后面要进行计算,则此时必须将输出的四个

数接到非门,然后输出,这次设计中用到的非门为74LS05,可以实现反码的转

换。

加法电路是总电路的第三部分,也是总电路的中心环节, 74LS283是中规模

四位二进制超前进位加法器,它实现的是四位二进制数的相加,但是题目中要设

计的是12位BCD 码的相加,这样就需要用到3个加法器。BCD 码是用4位二

数字电子课设:万年历的设计

编号 北京工商大学 数字电子技术基础 《万年历的设计》 姓名 学院 班级 学号 设计时间

一、设计目的 1、熟悉集成电路的引脚安排 2、掌握芯片的逻辑功能及使用方法 3、了解数字电子钟及万年历的组成及工作原理 4、熟悉数字电子钟及万年历的设计与制作 5、熟悉multisim电子电路设计及仿真软件的应用 二、设计思路 1、设计60进制秒计数器芯片 2、设计24进制时计数器芯片 3、设计31进制天计数器芯片 4、设计12机制月计数器芯片 5、设计7进制周计数器芯片 6、设计闰年平年不同月份不同进制逻辑 三、设计过程 1、Tr_min and s 60进制计数器芯片: “秒”、“分”电路都六十进制,它由一级十进制计数器和一级六进制计数器组成,六十进制计数器的设计图如下,采用四个片74ls161N串联而成,低位芯片的抚慰信号作为下级输入信号,串接起来构成“秒”、“分”计数器芯片。

2、Tr_hour24进制计数器芯片: 24进制计数器芯片的设计图如下,时计数电路由两片74ls161串联组成。当时个位计数为4,十位计数为2时,两片74ls160N复零,从而构成24进制计数。 3、Tr_day天计数器芯片: 采用两片74ls160N和一片74ls151N串联而成,天计数器的进制受到月计数器反馈M、N影响和年计数器反馈R4的影响,在M、N不收到反馈信息的时候,天计数器为28进制,电路设计图如下:

4、Tr_week周计数器芯片: 周计数器由一块74ls161N构成一个七进制计数器,原理与秒、分、时计数器相似,电路设计图如下 5、Tr_month月计数器芯片: 采用两片74160N和两片74HC151D_2V串联而成,月计数器的反馈信息M、N影响

数字电子钟课程设计实验报告

中北大学 信息与通信工程学院 通信工程专业 《电子线路及系统》课程设计任务书2016/2017 学年第一学期 学生姓名:张涛学号: 李子鹏学号: 课程设计题目:数字电子钟的设计 起迄日期:2017年1月4日~2017年7月10日 课程设计地点:科学楼 指导教师:姚爱琴 2017年月日 课程设计任务书

中北大学 信息与通信工程学院 通信工程专业 《电子线路及系统》课程设计开题报告2016/2017 学年第一学期 题目:数字电子钟的设计 学生姓名:张涛学号: 李子鹏学号:

指导教师:姚爱琴 2017 年 1 月 6 日 中北大学 信息与通信工程学院 通信工程专业 《电子线路及系统》课程设计说明书2016/2017 学年第二学期 题目:数字电子钟的设计 学生姓名:张涛学号: 李子鹏学号: 指导教师:姚爱琴 2017 年月日

目录 1 引言 (6) 2 数字电子钟设计方案 (6) 2.1 数字计时器的设计思想 (6) 2.2数字电路设计及元器件参数选择 (6) 2.2.2 时、分、秒计数器 (7) 2.2.3 计数显示电路 (8) 2.2.5 整点报时电路 (10) 2.2.6 总体电路 (10) 2.3 安装与调试 (11) 2.3.1 数字电子钟PCB图 (11) 3 设计单元原理说明 (11) 3.1 555定时器原理 (12) 3.2 计数器原理 (12) 3.3 译码和数码显示电路原理 (12) 3.4 校时电路原理 (12) 4 心得与体会 (12) 1 引言 数字钟是一种用数字电子技术实现时,分,秒计时的装置,具有较高的准确性和直观性等各方面的优势,而得到广泛的应用。此次设计数字电子钟是为了了解数字钟的原理,在设计数字电子钟的过程中,用数字电子技术的理论和制作实践相结合,进一步加深数字电子技术课程知识的理解和应用,同时学会使用Multisim电子设计软件。 2数字电子钟设计方案 2.1 数字计时器的设计思想 要想构成数字钟,首先应选择一个脉冲源——能自动地产生稳定的标准时间脉冲信号。而脉冲源产生的脉冲信号地频率较高,因此,需要进行分频,使得高频脉冲信号变成适合于计时的低频脉冲信号,即“秒脉冲信号”(频率为1Hz)。经过分频器输出的秒脉冲信号到计数器中进行计数。由于计时的规律是:60秒=1分,60分=1小时,24小时=1天,就需要分别设计60进制,24进制计数器,并发出驱动信号。各计数器输出信号经译码器、驱动器到数字显示器,是“时”、“分”、“秒”得以数字显示出来。 值得注意的是:任何记时装置都有误差,因此应考虑校准时间电路。校时电路一般

数电课设报告1

通过20进制计数器的输出端的E、D信号控制移位寄存器的S0和S1及其CLR'端真值表

七、附录 555的内部结构 555定时器电路是一块介于模与数字电路的一种混合电路,由于这种特殊的地位,故5 55定时电路在报警电路、控制电路得到了广泛的应用。下图为555的内部电路,从图上可以看出,其仅有两个比较器、一个触发器、一个倒相器、放电管和几个电阻构成,由于比较器电路是一个模拟器,而触发器电路为数字电路,故其为混合器件。 555为一8脚封装的器件,其各引脚的名称和作用如下: 1脚—GND,接地脚 2脚—TL,低电平触发端 3脚—Q,电路的输出端 4脚—/R D,复位端,低电平有效 5脚—V_C,电压控制端 6脚—TH,阈值输入端 7脚—DIS,放电端 8脚—V CC,电源电压端,其电压范围为:3~18V 555的功能描述

上图中当V_C不外接电压时,三个电阻对电源电压进行分压,每个电阻上的压降为1/3 V CC,则两个比较器的同相端的输出电压分别为:1/3CC,2/3V CC。从图上可以看出,其555的工作可分为下列3种情况加以讨论: 1.当触发输入端TL输入电压低于1/3V CC而阈值输入端电压大于2/3V CC时,其下面比较器输出为高电平,触发器输出高电平; 2.当触发输入端TL输入电压高于1/3V CC,而阈值输入端电压小于2/3V CC时,其两个比较器输出皆为低电平,触发器输出保持不变; 3.当触发输入端TL输入电压高于1/3V CC而阈值输入端电压大于2/3V CC时,其上面比较器输出为高电平,触发器输出低电平。 当然你在上面讨论时可同时对放电管进行讨论其状态,这里没有讨论,详情可能见有关资料,从上面的讨论,可列出下列表格: 输入输出 TH TL/RD Q放电管状态 ××00导通>2/3V CC>1/3V CC10导通 <2/3V CC>1/3V CC1保持不变保持不变 >2/3V CC>1/3V CC10导通 <2/3V CC<1/3V CC11截止 一、芯片名称:同步可预置带清零二进制计数器 二、74LS163芯片的引脚图和引脚说明:

Java万年历课程设计报告

杭州师范大学钱江学院课程设计 题目万年历 学院钱江学院 专业信电分院计算机科学与技术 班级计算机1101 姓名崔伊平 指导教师王李冬 2013 年9 月20 日

目录 一.概述 (1) 二.总体方案设计 (2) 三.详细设计 (3) 四.最终输出 (7) 五.课程设计总结 (8) 参考文献 (9)

一、概述 1.课程设计的目的 通过显示年日历程序的设计,培养学生综合利用java语言进行程序设计的能力,加强函数的运用及学生对软件工程方法的初步认识,提高软件系统分析能力和程序文档建立、归纳总结的能力。 通过本项课程设计,可以培养独立思考、综合运用所学有关相应知识的能力,能更好的巩固《java语言程序设计》课程学习的内容,掌握工程软件设计的基本方法,强化上机动手编程能力,闯过理论与实践相结合的难关!更加了解了java语言的好处和其可用性! 2.课程设计的要求 2.1 输入查询的年份与月份,单击“更新”按扭,则可得到相应的日历。本实验是对图形用户界面,布局管理器的综合运用。要掌握APPLET容器中添加组件的方法,理解JAVA 的事件处理机制,编写独立的运行窗口。 2.2 输出形式 使用独立的运行窗口进行显示。界面主要由两部分组成——查询输入部分和结果显示部分。查询输入部分包括两个文本域,一个用于输入年份:一个用于选择月份:一个更新按扭,用来触发查询事件。

二总体方案设计 1.程序开发环境 a.开发环境:eclipse b.系统环境:windows xp/7 c.设计工具:Microsoft office 2003 2.整体流程图 图1 流程图 3.功能模块图

数电课程设计-温度计实验报告(提交版)

一、设计项目名称 温度采集显示系统硬件与软件设计 二、设计内容及要求 1,根据设计要求,完成对单路温度进行测量,并用数码管显示当前温度值系统硬件设计,并用电子CAD软件绘制出原理图,编辑、绘制出PCB印制版。 要求: (1)原理图中元件电气图形符号符合国家标准; (2)整体布局合理,注标规范、明确、美观,不产生歧义。 (3)列出完整的元件清单(标号、型号及大小、封装形式、数量) (4) 图纸幅面为A4。 (4)布局、布线规范合理,满足电磁兼容性要求。 (5)在元件面的丝印层上,给出标号、型号或大小。所有注释信息(包括标号、型号及说明性文字)要规范、明确,不产生歧义。 2.编写并调试驱动程序。 功能要求: (1)温度范围0-100℃。 (2)温度分辨率±1℃。 (3)选择合适的温度传感器。 3.撰写设计报告。 提示:可借助“单片机实验电路板”实现或验证软件、硬件系统的可靠性。 温度传感器 摘要:温度的检测与控制是工业生产过程中比较典型的应用之一,随着传感器在生产和生活中的更加广泛的应用,利用新型单总线式数字温度传感器 实现对温度的测试与控制得到更快的开发,随着时代的进步和发展,单 片机技术已经普及到我们生活,工作,科研,各个领域。一种数字式温 度计以数字温度传感器DS18B20作感温元件,它以单总线的连接方式, 使电路大大的简化。传统的温度检测大多以热敏电阻为传感器,这类传 感器可靠性差,测量温度准确率低且电路复杂。因此,本温度计摆脱了 传统的温度测量方法,利用单片机STC89C52对传感器进行控制。这样

易于智能化控制。 关键词:数字测温;温度传感器DS18B20;单片机STC89C52; 一.概述 传感器从功能上可分为雷达传感器、电阻式传感器、电阻应变式传感器、压阻式传感器、热电阻传感器、温度传感器、光敏传感器、湿度传感器、生物传感器、位移传感器、压力传感器、超声波测距离传感器等,本文所研究的是温度传感器。 温度传感器是最早开发,应用最广泛的一类传感器。温度传感器是利用物质各种物理性质随温度变化的规律把温度转换为电量的传感器。这些呈现规律性变化的物理性质主要有半导体。温度传感器是温度测量仪表的核心部分,品种繁多。 随着科学技术的发展,测温系统已经被广泛应用于社会生产、生活的各个领域,在工业、环境监测、医疗、家庭多方面均有应用。从而使得现代温度传感器的发展。微型化、集成化、数字化正成为发展的一个重要方向。 二.硬件设计 1.DS18B20 DS1820 单线数字温度计特性 ? 独特的单线接口仅需一个端口引脚进行通讯 ? 简单的多点分布应用 ? 无需外部器件 ? 可通过数据线供电 ? 零待机功耗 ? 测温范围-55~+125℃,以 0.5℃递增 ? 温度以 9 位数字量读出 ? 温度数字量转换时间 200ms (典型值) ? 用户可定义的非易失性温度报警设置 ? 报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件 ? 应用包括温度控制、工业系统、消费品、温度计或任何热感测系统 DS1820温度传感器外观图(a )和引脚图(b ) ①引脚1接地 ②引脚2数字信号输入/输出 ③引脚3接高电平5V 高电平

数电实验-实验报告-实验六

实验一 TTL与非门的参数测试 一、实验目的 ·掌握用基本逻辑门电路进行组合逻辑电路的设计方法。 ·通过实验,验证设计的正确性。 二、实验原理 1.组合逻辑电路的分析: 所谓组合逻辑电路分析,即通过分析电路,说明电路的逻辑。 通常采用的分析方法是从电路的输入到输出,根据逻辑符号的功能逐级列出逻辑函数表达式,最好得到表示输出与输入之间的关系的逻辑函数式。然后利用卡诺图或公式化简法将得到的函数化简或变换,是逻辑关系简单明了。为了使电路的逻辑功能更加直观,有时还可以把逻辑函数式转化为真值表的形式。 2.逻辑组合电路的设计: 根据给出的实际逻辑问题,求出实现这一逻辑功能的最简单电路,陈伟组合逻辑电路的设计。 3.SSI设计:设计步骤如下: ①逻辑抽象;分析时间的因果关系,确定输入和输出变量。 ②定义逻辑状态的含义:以二值逻辑0、1表示两种状态。 ③列出真值表 ④写出逻辑表达式,并进行化简,根据选定器件进行转换。 ⑤画出逻辑电路的连接图。 ⑥实验仿真,结果验证。 三、实验仪器及器件 数字万用表1台

多功能电路实验箱1台 四、实验内容 1.设计5421BCD 码转换为8421BCD 码(用双输入端与非门实现)。 四位自然二进制码 5421BCD码 B3 B2 B1 B0 D3 D2 D1 D0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 1 0 0 0 1 0 0 0 1 1 0 0 1 1 0 1 0 0 0 1 0 0 0 1 0 1 0 1 0 1 0 1 1 0 0 1 1 0 0 1 1 1 0 1 1 1 1 0 0 0 1 0 1 1 1 0 0 1 1 1 1 0 1 0 伪码 1 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1 根据5421BCD 码与8421BCD 码真值表可得 2.设A 、B 、C 、D 代表四位二进制变量,函数X=8A-4B+2C+D ,试设计一个组合逻辑电路,判断当函数值介于4

C语言万年历设计报告

C语言课程 设计报告题目:编写万年历系统 年级: 专业: 班级: 姓名: 学号:

目录 第1章设计目的 第2章需求分析 第3章概要设计 第4章源程序清单 第5章执行结果 1)登陆界面 2)显示当前日月历 3)显示具体日期信息 第6章程序问题调试与课程设计心得

第1章设计目的 设计目的(实验要求): 1.模仿现实生活中的挂历. 2.当前页以系统当前日期的月份为准显示当前月的每一天(显示出日及对应的星期几). 3.当系统日期变到下一月时,系统自动翻页到下一月. 第2章需求分析 (1)程序运行时,首先给出菜单选项和输入提示: (2)用户可以通过主菜单选择不同选项。输入1,通过输入当前日期可显示当前月的日历;输入2,通过输入具体日期(中间以空格分开)可显示该日具体信息;输入3,则退出查询系统。

第3章概要设计 1.菜单选择界面可通过下面所示函数时现; 主要思路: 通过while语句与swich…case以及if条件语句实现菜单的循环功能和不同选 项的功能实现。 闰年与平年的判断: 代码如下: void main() { int year,month,day,a,b; while(1) { printf("\n\n\n\n"); printf(" **********************************************************\n\n"); printf(" * * \n");

printf(" Welcome to enter calendar system \n"); printf(" * * \n\n"); printf(" **********************************************************\n\n\n" ); printf(" 1 The month of current date 2 Date 3 Exit\n"); printf(" please import your choose<1~3>,press Enter to define: "); scanf("%d",&b); switch(b) { case 1: printf("\n Please import the year,month and day which you want to check,the year,month and day separation by blank space: "); scanf("%d%d%d",&year,&month,&day); a=x3(year,month,1); if(a==0) { printf("Error!Please import again.\n"); break;} yueli(year,month,day); break; case 2: printf("\n Please import the year,month and day which you want to check, the year,month and day separation by blank space: "); scanf("%d%d%d",&year,&month,&day); a=x3(year,month,day); if(a==0) { printf("Error!Please import again.\n"); break;} rili(year,month,day); break; case 3: exit(0); default: printf("Error!Please import again.\n\n"); } }

Java课程设计-万年历

河北科技大学课程设计报告 号:学生姓名:学 专业班级:程序设计课程设计Java课程名称:学期学年第 2 2 015 学年学期: 2 014 — 指导教师:刘伟月年 2 0

的?.................................................................. ................................1?? 2.需求分................................................................... .........析................................1? 3.总体设计................................................................... ........................................1? 4.详细设计................................................................... ........................................1?

5.软件测试................................................................... . (10) 6.课程设计总结................................................................... ................................11. 一、课程设计目的(1)熟练使用java语言编写程序,解决实际问题。? (2)初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能;? (3)学会自己调试程序的方法并掌握一定的技巧。 二、需求分析本程序的要求为: 1.使用图形用户界面;? 2.本程序能够实现日期与星期的查询。 ?三、总体设计(1)可以通过图形界面显示日历。? (2)能以月历形式显示日期与星期。? (3)支持用户自己输入年份,可以通过上一年,下一年等按钮来选择年份和月份。? ?四、详细设计1.总天数的算法:首先用if语句判断定义年到输入年之间每一年是否为闰年,是闰年,该年的总天数为366,否则,为365。 ,0若是取余得几既为星期几,7使总天数除以输出月份第一天为星期几的算法:2. 则为星期日。? 3.算出输出月份第一天为星期几的算法:算出输出月份第一天为星期几后,把该日期以前的位置用空格补上,并总该日起一次输出天数直到月底,该月中的天数加上该月一日为星期几的数字再除以7得0换行,即可完整的输出该月的日历。? 4.查询年份必须为四位有效数字,否则不予显示。 程序源代码: import import import import import import; import import import ; import ; import import import java.awt.*; import import java.text.*; import ;

数电课程设计报告数字钟的设计

数电课程设计报告数字钟的设计

数电课程设计报告 第一章设计背景与要求 设计要求 第二章系统概述 2.1设计思想与方案选择 2.2各功能块的组成 2.3工作原理 第三章单元电路设计与分析 3.1各单元电路的选择 3.2设计及工作原理分析 第四章电路的组构与调试 4.1遇到的主要问题 4.2现象记录及原因分析 4.3解决措施及效果 4.4功能的测试方法,步骤,记录的数据 第五章结束语 5.1对设计题目的结论性意见及进一步改进的意向说明5.2总结设计的收获与体会 附图(电路总图及各个模块详图) 参考文献

第一章设计背景与要求 一.设计背景与要求 在公共场所,例如车站、码头,准确的时间显得特别重要,否则很有可能给外出办事即旅行袋来麻烦。数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确度和直观性,且无机械装置,具有更长的使用寿命,因此得到了广泛的使用。数字钟是一种典型的数字电路,包括了组合逻辑电路和时序电路。 设计一个简易数字钟,具有整点报时和校时功能。 (1)以四位LED数码管显示时、分,时为二十四进制。 (2)时、分显示数字之间以小数点间隔,小数点以1Hz频率、50%占空比的亮、灭规律表示秒计时。 (3)整点报时采用蜂鸣器实现。每当整点前控制蜂鸣器以低频鸣响4次,响1s、停1s,直到整点前一秒以高频响1s,整点时结束。 (4)才用两个按键分别控制“校时”或“校分”。按下校时键时,是显示值以0~23循环变化;按下“校分”键时,分显示值以0~59循环变化,但时显示值不能变化。 二.设计要求 电子技术是一门实践性很强的课程,加强工程训练,特别是技能的培养,对于培养学生的素质和能力具有十分重要的作用。在电子信息类本科教学中,课程设计是一个重要的实践环节,它包括选

电子万年历课程设计

烟台南山学院单片机课程设计题目电子万年历 姓名: 所在学院:烟台南山学院 所学专业:自动化 班级: 学号: 指导教师: 完成时间:

摘要 单片机作为当今领域应用广泛的电子器件,以其极高的性能价格比,受到人们的重视和关注,应用很广、发展很快。单片机体积小、重量轻、抗干扰能力强、环境要求不高、价格低廉、可靠性高、灵活性好、开发较为容易。由于具有上述优点,在我国,单片机已广泛地应用在工业自动化控制、自动检测、智能仪器仪表、家用电器、电力电子、机电一体化设备等各个方面,而51单片机是各单片机中最为典型和最有代表性的一种。以AT89C51芯片为核心,辅以必要的电路,设计了一个简易的电子时钟,它由5V直流电源供电,通过数码管能够准确显示时间,日期,调整时间,日期,从而到达学习、设计、开发软、硬件的能力。 时钟电路在计算机系统中起着非常重要的作用,是保证系统正常工作的基础。在一个单片机应用系统中,时钟有两方面的含义:一是指为保障系统正常工作的基准振荡定时信号,主要由晶振和外围电路组成,晶振频率的大小决定了单片机系统工作的快慢;二是指系统的标准定时时钟,即定时时间,它通常有两种实现方法:一是用软件实现,即用单片机内部的可编程定时/计数器来实现,但误差很大,主要用在对时间精度要求不高的场合;二是用专门的时钟芯片实现,在对时间精度要求很高的情况下,通常采用这种方法,典型的时钟芯片有:DS1302,DS12887,X1203等都可以满足高精度的要求。本设计由单片机AT89C51芯片和LED数码管为核心,运用DS1302时钟芯片,辅以必要的电路,构成了一个单片机电子时钟。

1 绪论 (1) 2 总体方案设计与论证 (2) 2.1数字时钟方案 (2) 2.2显示方案 (3) 3 硬件系统的方案设计 (4) 3.1 系统框图 (4) 3.2 单片机的选择 (4) 3.3 时钟电路DS1302 (7) 3.4 时钟电路及复位电路 (9) 3.5 驱动电路 (9) 3.6 显示电路 (10) 3.7 按键接口 (11) 4 软件系统设计 (12) 4.1 时间信息获取程序 (12) 4.2 显示程序 (12) 5 系统调试 (13) 5.1 系统调试 (13) 5.2 时钟显示 (13) 5.3 DS1302的调试 (13) 5.4 按键电路调试 (13) 6 总结 (14) 参考文献 (15) 附录:系统程序 (16)

数字电子技术课程设计报告

一、设计任务及要求 通过对《数字电子技术》课程的学习,让同学掌握《数字电子技术》课程的基本理论以及方法,加深学生对理论知识的理解,同时积极有效的提高了学生的动手能力,独立思考和解决问题的能力,创新思维能力、协调能力,以及团结合作、互帮互助的优良传统。为了充分体现这些精神和能力,所以让同学独立自主的制造一个数字时钟,故,对同学设计的数字时钟进行如下要求: 时钟显示功能,能够以十进制显示“时”,“分”,“秒”。 二、设计的作用、目的 (1).在同学掌握《数字电子技术》课程的基本理论以及方法的基础上,加深学生对理论知识的理解,同时积极有效的提高了学生的动

手能力,独立思考和解决问题的能力,创新思维能力、协调能力,以及团结合作、互帮互助的优良传统。 (2).掌握组合逻辑电路、时序逻辑电路及数字逻辑电路系统的设计、安装、测试方法;进一步巩固所学的理论知识,提高运用所学知识分析和解决实际问题的能力。 (3). 熟悉集成电路的引脚安排,掌握各芯片的逻辑功能及使用方法了解面包板结构及其接线方法,了解数字钟的组成及工作原理,熟悉数字钟的设计与制作。 (4). 掌握数字钟的设计、调试方法。 三、设计过程 1.方案设计与论证 数字钟的逻辑结构主要包括有六十进制计数器、二十四进制计数器(其中包括六十进制计数器和二十四进制计数器均由十进制计数器74LS160接成)、动态显示译码器、LED数码管显示环节、555定时器(可以提供一个比较精确的1Hz的时钟脉冲),时间设置环节可以提供时间的初始设置,动态显示译码器提供将BCD代码(即8421码)译成数码显示管所需要的驱动信号,使LED数码管用十进制数字显示出BCD代码所表示的数值。 数字钟电路系统的组成框图:

万年历设计

面向对象技术实验报告 (万年历)

1.实验目的 掌握一种编程工具和面向对象程序设计的基本思想和方法,培养我们学生综合利用某种语言进行程序设计的能力,培养我们学生利用系统提供的功能进行创新设计的能力,培养我们学生充分利用计算机的功能和特点分析实际问题及解决实际问题的能力。 为我们提供一个综合运用所学知识解决实际问题的机会,增强我们学生的实践动手能力和工程实践能力,并培养和锻炼我们学生的自学创新能力。 为了能更好地了解C++语言,因此开设了此次课程设计,程序设计教学课程的目的不是为了单独的课堂学习,而是要让我们学生掌握程序设计的基本思想及方法。一方面,在课程设计过程中,可以明确的指导为什么而学,还能对所学知识得到应用,更重要的是可以让我们学生掌握一些基本函数的用法,从而不在对编程序感到茫然,经过设计,可以让我们熟悉简单程序的设计方法和编写,对程序设计及该门课程设计语言的应用得到理解。 2.功能简介 万年历,输入年份,可以显示出这一年的每个月份和所对应的星期天,可以查询每一天.

3.流程图 4.代码 #include #include using namespace std; int i,c,day,year,k,a[50]; void f1(int x) //大月 { for( i=0;i<50;i++) a[i]=33; for(i=k-1;i>=0;i--) a[i]='\000'; //1号前均为空格 for(i=k;i<31+k;i++) a[i]=a[i-1]+1; }

void f2(int x) //小月 { for( i=0;i<50;i++) a[i]=33; for(i=k-1;i>=0;i--) a[i]='\000'; for(i=k;i<30+k;i++) a[i]=a[i-1]+1; } void f3(int x) //闰年二月 { for( i=0;i<50;i++) a[i]=33; for(i=k-1;i>=0;i--) a[i]='\000'; for(i=k;i<29+k;i++) a[i]=a[i-1]+1; } void f4(int x) //非闰年二月 { for( i=0;i<50;i++) a[i]=33; for(i=k-1;i>=0;i--) a[i]='\000'; for(i=k;i<28+k;i++) a[i]=a[i-1]+1; } void g(int y[],int z) // 输出日历表 { cout<<"日"<<'\t'<<"一"<<'\t'<<"二"<<'\t'<<"三"<<'\t'<<"四"<<'\t'<<"五"<<'\t'<<"六"<

课程设计万年历的设计52503328

课程设计万年历的设计52503328

兰州理工大学 计算机与通信学院 2014年秋季学期 面向对象课程设计 题目:万年历的设计

序言 《面向对象的程序设计》是计算机专业一门重要的专业基础课。此次课程设计的目的是以面向对象程序设计语言为基础,通过完成一些具有一定难度的课程设计题目的编写、调试、运行工作,进一步掌握面向过程和面向对象程序设计的基本方法和编程技巧,巩固所学理论知识,使理论与实际相结合。从而提高自我分析问题、解决问题的能力。通过课程设计,学生在下述各方面的能力应该得到锻炼: (1)进一步巩固、加深学生所学专业课程《C++语言程序设计》的基本理论知识,理论联系实际,进一步培养学生综合分析问题、解决问题的能力。 (2)全面考核学生所掌握的基本理论知识及其实际业务能力,从而达到提高学生素质的最终目的。 (3)利用所学知识,开发小型应用系统,掌握运用C++语言编写调试应用系统程序,训练独立开发应用系统,进行数据处理的综合能力。 (4)对于给定的设计题目,如何进行分析,理清思路,并给出相应的数学模型。 (5)掌握面向对象的程序设计方法。 (6)进一步掌握在集成环境下如何调试程序、修改程序和程序的测试。

目录 摘要 (2) 第一章系统总体设计 (3) 一.理论说明 (3) 二.流程图说明 (4) 1.总体流程说明图 (4) 2.部分流程说明图 (4) 第二章系统详细设计 (7) 一.主要组成部分 (7) 二.源程序 (9) 第三章系统测试 (34) 四软件使用说明书 (40) 一.系统运行环境 (40) 二.系统操作提示 (40) 总结 (41) 参考文献 (42) 致谢 (42)

数电课程设计

一、数字电子钟 1.设计目得 (1)培养数字电路得设计能力。 (2)掌握数字电子钟得设计、组装与调试方法。 2.设计内容及要求 (1)设计一个数字电子钟电路。要求: ①按24小时制直接显示“时”、“分”、“秒”。 ②当电路发生走时误差时具有校时功能。 ③具有整点报时功能,报时音响为4低1高,即在59分51秒、53秒、55秒、57秒输出500Hz信号,在59分59秒时输出1000 Hz信号,音响持续时间为1秒,最后一响结束时刻正好为整点。 (2)用中小规模集成电路组成电子钟,并在实验仪上进行组装、调试。 (3)画出各单元电路图、整机逻辑框图与逻辑电路图,写出设计、实验总结报告。 (4)选作部分:①闹钟系统。②日历系统。 3.数字电子钟基本原理及设计方法 数字电子钟得逻辑框图如图1411所示。它由振荡器、分频器、计数器、译码器、显示器、校时电路与整点报时电路组成。振荡器产生得脉冲信号经过分频器作为秒脉冲,秒脉冲送入计数器计数,计数结果通过“时”、“分”、“秒”译码器显示时间。有得数字电子钟还加有定时响铃、日历显示等其它功能,需增加相应得辅助电路。 图1411 数字电子钟得基本逻辑框图 (1)振荡分频电路 振荡器就是数字电子钟内部用来产生时间标准“秒”信号得电路。构成振荡器得电路很多,图1412(a)就是RC环形多谐振荡器,其振荡周期T≈2、2RC。作为时钟,最主要得就是走时准确,这就要求振荡器得频率稳定。要得到频率稳定得信号,需要采用石英晶体振荡器。石英晶体振荡器电路如图1412(b)所示,这种电路得振荡频率只取决于石英晶体本身得固有频率。 图1412 振荡器

(a)RC环形多谐振荡器 (b)石英晶体多谐振荡器 由于石英晶体振荡器产生得频率很高,要得到秒信号,需采用分频电路。例如,振荡器输出4 MHz信号,先经过4分频变成1 MHz,再经过6次10分频计数器,便可得到1Hz得方波信号作为秒脉冲。 (2)计数器 把秒脉冲信号送入秒计数器个位得CP输入端,经过6级计数器,分别得到“秒”个位、十位,“分”个位、十位,以及“时”个位、十位得计时。“秒”、“分”计数器为60进制,“时”计数器为24进制。 24进制计数器如图1413所示。当“时”个位计数器输入端CP来到第10个触发脉冲时,该计数器归零,进位端Q D5向“时”十位计数器输出进位信号。当第24个“时”脉冲(来自“分”计数器输出得进位信号)到来时,十位计数器得状态为0010,个位计数器得状态位0100,此时“时”十位计数器得Q B6与“时”个位计数器得Q C5输出为1。两者相与后送到两计数器得清零端R0A与R0B,通过74LS90内部得R0A与R0B与非后清零,完成24进制计数。同理可构成60进制计数器。 CP 来自分计数器 的进位信号 图1413 24进制计数器 (3)译码显示电路 译码驱动器采用8421 BCD码七段译码驱动器74LS48,显示器采用共阴极数七段数码显示器,有关74LS48与七段显示器得使用方法前面已经作了介绍,这里不再赘述。 (4)校时电路 当数字电子钟出现走时误差时,需要对时间进行校准。实现校时电路得方法很多,如图1414所示电路即可作为时计数器或分计数器得校时电路。 图1414 校时电路 现设用该电路作为分计数器得校时电路,图中采用RS触发器作为无抖动开关。通过开关K得接入位置,可以选择就是将“1 Hz信号”还就是将“来自秒计数器得进位信号”送至分计数器得CP端。当开关K置于B端时,RS触发器得输出、,“来自秒计数器得进位信号”被送至分计数器得CP端,分计数器正常工作;需要校正分计数器时,将开关K置于A端,这时RS触发器得输出、,“1 Hz信号”被送至分计数器得CP端,分计数器在“1Hz信号”得作用下快速计数,直至正确得时间,再将开关K置于B端,达到了校准时间得目得。 (5)整点报时电路 电路得设计要求在差10 s为整点时开始每隔1 s鸣叫一次,每次持续时间为1 s,共鸣叫5次,前4次为低音500 Hz,最后一次为高音1 kHz。因为分计数器与秒计数器从59分51秒计数到59分59秒得过程中,只有秒个位计数器计数,分十位、分个位、秒十位计数器得状态不变,分别为Q D4Q C4Q B4Q A4=0101,Q D3Q C3Q B3Q A3=1001,Q D2Q C2Q B2Q A2=0101,所以Q C4=Q A4=Q D3=Q A3=Q C2=Q A2=1不变。设Y1=Q C4Q A4Q D3Q A3Q C2Q A2,又因为在51、53、55、57秒时Q A1=1,Q D1=0,输出500Hz信号f2;59秒时Q A1=1,Q D1=1,输出1kHz信号f1,由此可写出整点报时电路得逻辑表达式为:

数字电路课程设计总结报告

数字电路课程设计总结报告题目:交通灯控制器 班级:08通信工程1班 学号:0810618125 姓名:廖小梅 指导老师:张红燕 日期:2010年12月

目录 1、设计背景 2、设计任务书 3、设计框图及总体描述 4、各单元设计电路设计方案与原理说明 5、测试过程及结果分析 6、设计、安装、调试中的体会 7、对本次课程设计的意见及建议 8、附录 9、参考文献 10、成绩评定表格

一、设计背景 随着经济的快速发展,城市交通问题日益凸显严重,尤其在城市街道的十字叉路口,极其容易发生交通问题,为了保证交通秩序和人们的安全,一般在每条街上都有一组红、黄、绿交通信号灯。交通灯控制电路自动控制十字路口的红、黄、绿交通灯。交通灯通过的状态转换,指挥车辆行人通行,保证车辆行人的安全,实现十字路口交通管理自动化。 二、设计任务书 1、设计一个十字路口的交通灯控制电路,要求南北方向(即 A车道)和东西方向(即B车道)两条交叉道路上的车辆 交替运行,每次通行时间都为30秒; 2、在绿灯转红灯时,先由绿灯转为黄灯,黄灯亮6秒后,再 由黄灯转为红灯,此时另一方向才由红灯转为绿灯,车辆 才开始通行。 三、设计框图及总体描述 1、分析系统的逻辑功能,画出其框图 交通灯控制系统的原理框图如图1所示。它主要由控制器、定时器、译码器和秒脉冲信号发生器等部分组成。秒脉冲发生器是该系统中定时器和控制器的标准时钟信号源,译码器输出两组信号灯的控制信号,经驱动电路后驱动信号灯工作,控制器是系统的主要部分,由它控制定时器和译码器的工作。

图1交通灯控制系统原理框图 在图中, T30: 表示甲车道或乙车道绿灯亮的时间间隔为30秒,即车辆正常通行的时间间隔。定时时间到,T30 =1,否则,T30 =0。 T6:表示黄灯亮的时间间隔为6秒。定时时间到,T6=1,否则,T6=0。 S T:表示定时器到了规定的时间后,由控制器发出状态转换信号。 由它控制定时器开始下个工作状态的定时。 交通系统的车道信号灯的工作状态转换如下所述: 状态1:A车道绿灯亮,B车道红灯亮。表示A车道上的车辆允许通行,B车道禁止通行。绿灯亮满规定的时间隔T30时, 控制器发出状态信号S T,转到下一工作状态。 状态2:A车道黄灯亮,B车道红灯亮。表示A车道上未过停车线的车辆停止通行,已过停车线的车辆继续通行,B车 道禁止通行。黄灯亮足规定时间间隔TY时,控制器发 出状态转换信号S T,转到下一工作状态。 状态3:A车道红灯亮,B车道黄灯亮。表示A A车道禁止通行,B车道上的车辆允许通行绿灯亮满规定的时间间隔T30 时,控制器发出状态转换信号S T,转到下一工作状态。

万年历C++课程设计报告

徐州师范大学科文学院本科生课程设计 课程名称:计算机程序设计实训 题目:万年历的设计 专业班级:电子信息工程08电信 学生姓名: 学生学号: 日期:2010/12/20 指导教师:姜芳艽 科文学院教务部印制

指导教师签字: 年月日

目录 摘要...................................................错误!未定义书签。 Abstract ...................错误!未定义书签。 1 绪论...................................................错误!未定义书签。 课题的设计......................................................................... 错误!未定义书签。 课题的背景……………………………………………………………………….错误!未定义书签。 课题的目的………………………………………………………………………..错误!未定义书签。 课题的意义………………………………………………………………………..错误!未定义书签。 2 设计方案简述 ..................................................... 错误!未定义书签。 设计总体规划..................................................................... 错误!未定义书签。 实现的功能………………………………………………………………………..错误!未定义书签。 结构模块分析……………………………………………………………………...错误!未定义书签。 3 详细设计 ............................................................. 错误!未定义书签。 设计思路............................................................................. 错误!未定义书签。 设计语言…………………………………………………………………………..错误!未定义书签。 设计程序流程图…………………………………………………………………..错误!未定义书签。 模块详细设计....................................................................... 错误!未定义书签。 大月和小月的定义………………………………………………………………..错误!未定义书签。 闰年与非闰年二月的定义………………………………………………………..错误!未定义书签。 日历表的输出……………………………………………………………………..错误!未定义书签。 4 设计结果及分析.................................................. 错误!未定义书签。 软件测试............................................................................... 错误!未定义书签。 设计成果............................................................................... 错误!未定义书签。 5 总结..................................................错误!未定义书签。 参考文献 ................................................................. 错误!未定义书签。

Java万年历课程设计报告

Java课程设计 设计题目:万年历 系别:计算机科学与工程学院 专业:信息管理与信息系统 学号: 1100340116 姓名:岑少兵 指导教师:汪华澄 时间: 2013-6-29

目录 摘要 (3) 系统功能结构图 (3) 1 系统模块设计 (4) 1.1 需求设计 (4) 1.2 开发和运行环境 (4) 1.3 功能设计 (4) 2 万年历详细设计思路 (4) 2.1 程序设计思路 (5) 2.2 程序运行主界面 (5) 2.3 流程图 (6) 3 各模块功能实现及代码说明 (6) 3.1 MainFramel类 (6) 3.2 Lunar类 (14) 3.3 national类 (22) 3.4 SetClock类 (26) 4 小结 (34) 5 参考文献 (34)

基于Myeclipse的万年历 摘要:万年历是日常生活中不可或缺的小工具,用万年历我们可以准确地查到当前,以后或是过去的日期,极大地方便了我们的生活。在万年历上添加了显示本地时间以后会更加准确地显示时间。无论是对于我们学生还是上班族或是自由职业者需要经常查看和查找万年历来规划自己将要做得一些事情,或是回忆在过去的时间里已经做过的事情,使之更加有利于提升我们的学习或是工作进度。 系统功能结构图:主要描述系统要实现的各个模块的功能。

1系统模块设计 1.1需求分析 本程序的要求为:1.使用图形用户界面 2.能够实现日期与星期的查询 3.能够显示农历 4.能够查看世界时间 5.能够添加闹钟 1.2 开发和运行环境 开发工具:Myeclipse 运行环境: windows 7 1.3功能设计 本程序要构建的万年历程序,其功能有以下几个方面: (1)通过 (2)提供年份、月份的下拉形式菜单来选择年份和月份。 (3)通过Lunar类实现农历日期。 (4)通过national类实现世界时间。 (5)能以月历形式显示日期与星期。 (6)通过SetClock类来实现闹钟功能。 (7)通过点击世界时间按钮查询世界时间 (8)通过点击闹钟按钮设置闹钟 (9)显示系统当前时间和日期。 (10)显示作者信息。 2万年历详细设计思路 2.1程序设计思路 1. 总天数的算法:首先用if语句判断定义年到输入年之间每一年是否为闰年,是闰年,该年的总天数为366,否则,为365。然后判断输入的年是否为定义年,若是,令总天数S=1,

相关文档
相关文档 最新文档