当前位置:文档之家› C语言日历显示课程设计报告(含源代码)

C语言日历显示课程设计报告(含源代码)

C语言日历显示课程设计报告(含源代码)
C语言日历显示课程设计报告(含源代码)

高级语言程序设计课程设计题目:

专业计算机类

班级计算机类1102

学生

学号

指导教师_______________

起止时间2012.2.13——2012.2.17

2012年2月

目录

实验报告 (3)

必做题: (3)

选做题: (8)

题目10 写一个日历显示程序 (8)

流程图:(如下) (14)

工程代码: (19)

心得体会 (24)

实验报告

必做题:

(1)编一程序对2种排序方法进行比较:交换法、选择法、插入法、冒泡法四种方法选2。具体比较方法是随机生成一组(≥300个)的100以内的整数数据,用选定的2种排序方法进行排序。纪录排序过程中数据比较和交换的次数,输出比较结果。

#include

#include

int main(void)

{

int a[300],b[300];

int i,j,temp,t;

int s=0,p=0,s1=0,p1=0;

for(i=0;i<300;i++)

{

a[i]=rand()%100;

b[i ]=a[i];

}

for(i=0;i<299;i++){

for(j=i+1;j<300;j++)

{

if(a[i]

{

temp=a[i];

a[i]=a[j];

a[j]=temp;

s++;

}

p++;

}}

printf("%d %d\n",s,p);

printf("\n");

for(i=0;i<299;i++)

{

t=i;

for(j=i+1;j<300;j++)

{

if(b[t]

t=j;

if(t!=i){

temp=b[i];

b[i]=b[t];

b[t]=temp;

s1++;

}

p1++;

}

}

printf("%d %d\n",s1,p1);

return 0;

}

运行结果:

在这个题目中选择了交换法和选择法,首先要产生300个随机数,其次要懂得两种排序法的原理,然后进行编程,同时利用循环结构。关键在于产生随机数和排序。通过比较发现交换法的交换次数比选择法少,比较的次数两者一样。

(2)写一个函数void maxMinAver(int *data, int *max, int

*min,float * ave,int size), 求一组数据的最大值、最小值和平均值,测试之。其中data指向给定数据的数组的指针,max、min、ave分别指向最大值、最小值和平均值,size是数组的大小。

要求第一个实参是数组,第2、3、4个实参都是对普通的简单变量的某种操作,最后一个实参是数组的大小。测试之

#include

void maxMinAver(int *data, int *max, int *min,float * ave,int size);

int main(void)

{

int *data,*max,*min,size;

float *ave;

maxMinAver(data,max,min,ave,size);

return 0;

}

void maxMinAver(int *data, int *max, int *min,float * ave,int size) {

int a[10];

int b,c,n,j,s=0,temp;

float d;

data=a;

max=&b;

min=&c;

ave=&d;

for(n=0;n<10;n++)

{

scanf("%d",&a[n]);

}

//交换法排序求最大最小值

for(n=0;n<9;n++)

{

for(j=n+1;j<10;j++){

if(a[n]

{

temp=a[n];

a[n]=a[j];

a[j]=temp;

}

}

}

b=a[0];

c=a[9];

//求平均数

for(n=0;n<10;n++)

{

s=s+a[n];

}

d=(float)s/10;

printf("%d %d %f",*max,*min,*ave);

}

这个题目需要利用函数调用,还要利用指针的间接引用法,设计函数将最大、最小以及平均值求出来。关键是函数调用。

选做题:

题目10 写一个日历显示程序

基本功能:

1).输入任一年将显示出该年的所有月份日期,对应的星期 2).注意闰年情况

其显示格式要求如下:

1)月份:中文英文都可以,

2)下一行显示星期,从周日到周六,中英文都可以

3)下一行开始显示日期从1号开始,并按其是周几实际情况与上面的星期数垂直对齐

当输入2004显示如下:

Input the year:2004

Input the file name:a

The calendar of the year 2004.

Januray 1 February 2

Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat

1 2 3 1 2 3 4 5 6 7

4 5 6 7 8 9 10 8 9 10 11 12 13 14

11 12 13 14 15 16 17 15 16 17 18 19 20 21

18 19 20 21 22 23 24 22 23 24 25 26 27 28

25 26 27 28 29 30 31 29

=========================== ===========================

March 3 April 4

Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat

1 2 3 4 5 6 1 2 3

7 8 9 10 11 12 13 4 5 6 7 8 9 10

14 15 16 17 18 19 20 11 12 13 14 15 16 17

21 22 23 24 25 26 27 18 19 20 21 22 23 24

28 29 30 31 25 26 27 28 29 30

=========================== ===========================

#include

int year(int p);

int riqi(int z);

int xinqi(int w,int l,int jj);

void dayin(int m,int n,int a[12],int b[12],char c[30]);

int main(void)

{

int n,s;

int m,qq,xx;

printf("Input the year:");

scanf("%d",&n);

s=year(n);

int a[12] = {1,2,3,4,5,6,7,8,9,10,11,12};

int b[12]={31,s,31,30,31,30,31,31,30,31,30,31};

//printf("%d",b[1]);

char c[]="sun mon tue wed thr fri sat";

printf("The calendar of the year %d\n",n);

m=riqi(n);

//printf("%d\n",m);

dayin(m,n,a,b,c);

return 0;

}

//判断输入的那一年是否是闰年

int year(int p)

{

if(p%4 != 0)

{

return 28;

}

if(p%4 == 0)

{

if(p%100 == 0)

{

if(p%400 == 0)

{

return 29;

}

return 28;

}

return 29;

}

}

//求输入那一年的1月1日式星期几/*参照1997年1月1日*/

int riqi(int z)

{

int d;

int days=(z-1997)*365;

int i = (z- 1997)/4;

days=days+i*1;

/*1997年1月1日是星期三*/

d=days%7+1;

d=(d+2)%7;

if(d == 0)d = 7;

return d;

}

//从2月开始到12月每个月份的的1号是星期几int xinqi(int w,int l,int jj)

{

int ss;

int qi;

int b[12]={31,28,31,30,31,30,31,31,30,31,30,31};

ss=year(l);

b[1]=ss;

qi=(b[jj-1]%7+(w-1)+1)%7;

return qi;

}

void dayin(int m,int n,int a[12],int b[12],char c[30]) {

int i,r,v,xx,j,qq;

for(i=0;i<12;i++)

{

printf("%d\n",a[i]);

printf ("%s\n",c);

if(i==0){

if(m==7)

m=0;

for(xx=0;xx<3*m+m*1;xx++)

{

printf(" ");

}

printf("1");

for(r=2;r<=7-m;r++){

printf("%4d",r);

}

printf("\n");

}

else

{

qq=xinqi(m,n,i);

m=qq;

// printf("%d\\\\\\\\",m);

for(xx=0;xx<3*m+m*1;xx++)

{

printf(" ");

}

printf("1");

for(r=2;r<=7-m;r++)

{

printf("%4d",r);

}

printf("\n");

}

for(j=r,v=1;j<=b[i];j++,v++)

{

printf("%-4d",j);

if(v%7==0)

printf("\n"); }

printf("\n==========================");

printf("\n");

}

}

运行结果:

这个程序要求输入任意年能打印出该年的一月到十二月的日历表;因此需要年份,月份,日期;但如上程序是以1997的1月1日(星期三)为参照,因此只能查询1997年以后的年份日历(包括1997年)。

流程图:(如下)

主流程图:

分层流程图:

模块流程图:dayin:

year:

Start

(p%4!=0)

return

(p%100==0)

(p%400==0)

return

return

end

return

(p%4==0) xinqi:

工程代码:

1.main.c :

#include

#include"li.h"

int main(void)

{

int n,s;

int m,qq,xx;

printf("Input the year:");

scanf("%d",&n);

s=year(n);

int a[12] = {1,2,3,4,5,6,7,8,9,10,11,12};

int b[12]={31,s,31,30,31,30,31,31,30,31,30,31};

//printf("%d",b[1]);

char c[]="sun mon tue wed thr fri sat";

printf("The calendar of the year %d\n",n);

m=riqi(n);

//printf("%d\n",m);

dayin(m,n,a,b,c);

return 0;

}

2.ri.c:

//判断输入的那一年是否是闰年int year(int p)

{

if(p%4 != 0)

{

return 28;

}

if(p%4 == 0)

{

if(p%100 == 0)

{

if(p%400 == 0)

{

return 29;

}

return 28;

}

return 29;

}

}

数电EDA课程设计电子日历

燕山大学 EDA课程设计报告书 电子日历 姓名:王斌 班级:05级电子信息工程3班 学号:050104020064 日期:2007/11/05——2007/11/14 一、设计题目:电子日历 二、设计要求:

1.能显示年,月,日,星期; 2.例如: 01.11.08. 6,星期日显示8; 3.年月日,星期可调; 4.不考虑闰年 三.设计思路: 为实现本电路得功能,采取模块电路设计方法,本电路系统主要包括以下三三大模块:. 1: 电子日历记数模块 2: 中间控制模块 3: 译码器显示模块 由于不同的月份,决定了不同的天数,因此须设计反馈电路,协调月日的关系,通过不同的月选择相应的天数:比如二月二十八天,十二月三十一天,……..这是利用真值表列出逻辑表达式,从而画出电路图如图1: 仿真图如下: 四、设计过程: 一、电子日历记数模块 1、实现星期计时: 为实现星期计时模块,计到星期日时,显示“8”,采用一般的计数器难以实现,

即可通过四个jk触发器设计而成。其电路图如下: 仿真图如下: 2、实现天数计时: 由于不同的月份,决定了不同的天数,因此须设计三个独立完成计数的计数器电路,如日计数器周期性的(28,30或31)向月计数器进位调月日的关系,即通过三个选择端(c28,c30,c31),同一时刻只能有一个有效,由其中的任一个有效端来控制相应日计数器。其电路原理图

3、实现月份及年份计时: 由用两个74160采用整体同步置数分别构成100进制和12进制计数器,分别完成年,月的计数功能。然后将两者依次异步连接,每隔12个月,月计数器向年计数器进一位,从而实现年月的周期性计数。 月份计数器电路原理图如下: 年份计数器电路图如下:

集成电路课程设计报告

课程设计 班级: 姓名: 学号: 成绩: 电子与信息工程学院 电子科学系

CMOS二输入与非门的设计 一、概要 随着微电子技术的快速发展,人们生活水平不断提高,使得科学技术已融入到社会生活中每一个方面。而对于现代信息产业和信息社会的基础来讲,集成电路是改造和提升传统产业的核心技术。随着全球信息化、网络化和知识经济浪潮的到来,集成电路产业的地位越来越重要,它已成为事关国民经济、国防建设、人民生活和信息安全的基础性、战略性产业。 集成电路有两种。一种是模拟集成电路。另一种是数字集成电路。本论文讲的是数字集成电路版图设计的基本知识。然而在数字集成电路中CMOS与非门的制作是非常重要的。 二、CMOS二输入与非门的设计准备工作 1.CMOS二输入与非门的基本构成电路 使用S-Edit绘制的CMOS与非门电路如图1。 图1 基本的CMOS二输入与非门电路

2.计算相关参数 所谓与非门的等效反相器设计,实际上就是根据晶体管的串并联关系,再根据等效反相器中的相应晶体管的尺寸,直接获得与非门中各晶体管的尺寸的设计方法。具体方法是:将与非门中的VT3和VT4的串联结构等效为反相器中的NMOS 晶体管,将并联的VT 1、VT 2等效PMOS 的宽长比(W/L)n 和(W/L)p 以后,考虑到VT3和VT4是串联结构,为保持下降时间不变,VT 3和VT 4的等线电阻必须减小为一半,即他们的宽长比必须为反相器中的NMOS 的宽长比增加一倍,由此得到(W/L)VT3,VT4=2(W/L)N 。 因为考虑到二输入与非门的输入端IN A 和IN B 只要有一个为低电平,与非门输出就为高电平的实际情况,为保证在这种情况下仍能获得所需的上升时间,要求VT 1和VT 2的宽长比与反相其中的PMOS 相同,即(W/L)VT1,VT2=(W/L)P 。至此,根据得到的等效反向器的晶体管尺寸,就可以直接获得与非门中各晶体管的尺寸。 如下图所示为t PHL 和t PLH ,分别为从高到低和从低到高的传输延时,通过反相器的输入和输出电压波形如图所示。给其一个阶跃输入,并在电压值50%这一点测量传输延迟时间,为了使延迟时间的计算简单,假设反相器可以等效成一个有效的导通电阻R eff ,所驱动的负载电容是C L 。 图2 反相器尺寸确定中的简单时序模型 对于上升和下降的情况,50%的电都发生在: L eff C R 69.0=τ 这两个Reff 的值分别定义成上拉和下拉情况的平均导通电阻。如果测量t PHL 和t PLH ,可以提取相等的导通电阻。 由于不知道确定的t PHL 和t PLH ,所以与非门中的NMOS 宽长比取L-Edit 软件中设计规则文件MOSIS/ORBIT 2.0U SCNA Design Rules 的最小宽长比及最小长度值。 3.分析电路性质 根据数字电路知识可得二输入与非门输出AB F =。使用W-Edit 对电路进行仿真后得到的结果如图4和图5所示。

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.功能模块图

显示年历C课程设计报告

目录 一、设计任务,目的与要求.............................错误!未指定书签。 1.设计内容: ................................................错误!未指定书签。 2.设计目的: ................................................错误!未指定书签。 3.设计要求: ................................................错误!未指定书签。 二、概要设计 .....................................................错误!未指定书签。 1.需求分析: ................................................错误!未指定书签。 2.设计流程: (3) 1设计要求:...........................................错误!未指定书签。 2总体设计:...........................................错误!未指定书签。 三、运行结果及分析.........................................错误!未指定书签。 1.程序运行测试: ........................................错误!未指定书签。 2.进入程序菜单: ........................................错误!未指定书签。 3.1号键功能: .............................................错误!未指定书签。 3.2号键功能: .............................................错误!未指定书签。 4.3号键功能: .............................................错误!未指定书签。 5.0号键功能: .............................................错误!未指定书签。 四、源代码 (6) 一、设计任务,目的与要求 1.设计内容: 年历显示功能要求:

单片机课程设计 电子日历时钟显示器设计

目录 1.题目设计要求 (1) 2.开发平台简介 (1) 3.系统硬件设计 (2) 3.1设计原理 (2) 3.2器件的功能与作用 (2) 3.2.1 MCS51单片机AT89C51 (2) 3.2.2复位电路 (3) 3.2.3晶振电路 (4) 3.2.4 DS1302时钟模块 (4) 3.2.5 引脚功能及结构 (4) 3.2.6 DS1302的控制字节 (5) 3.2.7 数据输入输出(I/O) (5) 3.2.8 DS1302的寄存器 (6) 3.2.9 液晶显示LCD1602 (6) 3.2.10 串行时钟日历片DS1302 (8) 4.系统软件设计 (10) 4.1程序流程 (10) 4.2程序代码 (10) 5.系统仿真调试 (20) 5.1仿真原理图设计 (20) 5.2仿真运行过程 (21) 5.3仿真运行结果 (21) 6.总结 (21) 7.参考文献 (22)

1.题目设计要求 通过串行日历时钟芯片DS1302生成当前日期和是时间,通过IO口传输到AT89c52芯片中,然后再将AT89c52接收到的数据输出到LCD上。要求LCD上显示的日期和时间与当前系统时间保持一致。 2.开发平台简介 2.1系统仿真平台Proteus Proteus软件是由英国Labcenter Electronics公司开发的EDA工具软件,已有近20年的历史,在全球得到了广泛应用。Proteus软件的功能强大,它集电路设计、制版及仿真等多种功能于一身,不仅能够对电工、电子技术学科涉及的电路进行设计,还能够对微处理器进行设计和仿真,并且功能齐全,界面多彩。和我们手头其他的电路设计仿真软件,他最大的不同即它的功能不是单一的。另外,它独特的单片机仿真功能是任何其他仿真软件都不具备的。 2.2软件开发平台Keil C Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部分组合在一起。Keil C51生成的目标代码效率之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。

《数字电路课程设计》

实验三旋转灯光电路与追逐闪光灯电路 一、实验目的 1.熟悉集成电路CD4029、CD4017、74LS138的逻辑功能。 2.学会用74LS04、CD4029、74LS138组装旋转灯光电路。 3. 学会用CD4069、CD4017组装追逐闪光灯电路。 二、实验电路与原理 1.旋转灯光电路: 图3-1 旋转灯光电路 将16只发光二极管排成一个圆形图案,按照顺序每次点亮一只发光二极管,形成旋转灯光。实现旋转灯光的电路如图3-1所示,图中IC1、R1、C1组成时钟脉冲发生器。IC2为16进制计数器,输出为4位二进制数,在每一个时钟脉冲作用下输出的二进制数加“1”。计数器计满后自动回“0”,重新开始计数,如此不断重复。 输入数据的低三位同时接到两个译码器的数据输入端,但是否能有译码器输出取决于使能端的状态。输入数据的第四位“D”接到IC3的低有效使能端G2和IC4的高有效使能端G1,当4位二进制数的高位D为“0”时,IC4的G1为“0”,IC4的使能端无效,IC4无译码输出,而IC3的G2为“0”,IC3使能端全部有效,低3位的CBA数据由IC3译码,输出D=0时的8个输出,即低8位输出(Y0~Y7)。当D为“1”时IC3的使能端处于无效状态,IC3无译码输出;IC4的使能端有效,低3位CBA数据由IC4译码,输出D=1时的8个输出,即高8位输出(Y8~Y15)。 由于输入二进制数不断加“1”,被点亮的发光二极管也不断地改变位置,形成灯光地“移动”。改变振荡器的振荡频率,就能改变灯光的“移动速度”。

注意:74LS138驱动灌电流的能力为8mA,只能直接驱动工作电流为5mA的超高亮发光二极管。若需驱动其他发光二极管或其他显示器件则需要增加驱动电路。 2. 追逐闪光灯电路 图 3-2 追 逐 闪 光 灯 电 路 ( 1) . CD 401 7 的 管 脚功能 CD4017集成电路是十进制计数/时序译码器,又称十进制计数/脉冲分频器。它是4000系列CMOS数字集成电路中应用最广泛的电路之一,其结构简单,造价低廉,性能稳定可靠,工艺成熟,使用方便。它与时基集成电路555一样,深受广大电子科技工作者和电子爱好者的喜爱。目前世界各大通用数字集成电路厂家都生产40171C,在国外的产品典型型号为CD4017,在我国,早期产品的型号为C217、C187、CC4017等。 (2)CD4017C管脚功能 CMOSCD40171C采用标准的双列直插式16脚塑封,它的引脚排列如图3-3(a)所示。 CC4017是国标型号,它与国外同类产品CD4017在逻辑功能、引出端和电参数等方面完全相同,可以直接互换。本书均以CD40171C为例进行介绍,其引脚功能如下: ①脚(Y5),第5输出端;②脚(Y1),第1输出端,⑧脚(Yo),第0输出端,电路清零 时,该端为高电平,④脚(Y2),第2输出端;⑤脚(Y6),第6输出端;⑥脚(Y7),第7输出端;⑦脚(Y3),第3输出端;⑧脚(Vss),电源负端;⑨脚(Y8),第8输出端,⑩脚(Y4),第4输出端;11脚(Y9),第9输出端,12脚(Qco),级联进位输出端,每输入10个时钟脉冲,就可得一个进位输出脉冲,因此进位输出信号可作为下一级计数器的时钟信号。13脚(EN),时钟输入端,脉冲下降沿有效;14脚(CP),时钟输入

Java日历记事本课程设计报告

Java日历记事本课程设计报告 在设计日历记事本时,需要编写6个JAVA源文件:、、、、和 效果图如下 . CalendarWindow类 import .*; import .*; import .*; import .*; public class CalendarWindow extends JFrame implements ActionListener,MouseListener,FocusListener{ int year,month,day; CalendarMessage calendarMessage; CalendarPad calendarPad; NotePad notePad;

JTextField showYear,showMonth; JTextField[] showDay; CalendarImage calendarImage; String picturename; Clock clock; JButton nextYear,previousYear,nextMonth,previousMonth; JButton saveDailyRecord,deleteDailyRecord,readDailyRecord; JButton getPicture; File dir; Color backColor= ; public CalendarWindow(){ dir=new File("./dailyRecord"); (); showDay=new JTextField[42]; for(int i=0;i<;i++){ showDay[i]=new JTextField(); showDay[i].setBackground(backColor); showDay[i].setLayout(new GridLayout(3,3)); showDay[i].addMouseListener(this); showDay[i].addFocusListener(this); } calendarMessage=new CalendarMessage(); calendarPad=new CalendarPad(); notePad=new NotePad(); Calendar calendar=(); (new Date()); year=; month=+1; day=; (year); (month); (day); (calendarMessage); (showDay); (year,month,day); (); doMark(); calendarImage=new CalendarImage(); (new File("")); clock=new Clock(); JSplitPane splitV1=new JSplitPane,calendarPad,calendarImage); JSplitPane splitV2=new JSplitPane,notePad,clock); JSplitPane splitH=new JSplitPane,splitV1,splitV2);

数电课程设计题目汇总..

数电课程设计题目选 一、设计并制作一数字式温度计 〖基本要求〗采用电桥法,利用PT~100热电阻对0~200℃测温范围进行测量并送LED 数码管显示,要求测量分辨率为0.1℃,数据测量间隔时间为5秒。 〖提高要求〗1)针对不同的铂热电阻讨论不同的温度信号测量办法 2)利用电路对测温电路进行非线性校正,提高测温精度(电路非线性校正和EPROM 查表法非线性校正两种方法) 3)讨论误差的形成因素和减少误差的措施 4)进行简单的温度开关控制 〖参考原理框图〗系统参考原理框图如下: 〖主要参考元器件〗 MCl4433(1),LM324(1),七段数码管(4),CD4511(1),MC1413(1),铂热电阻使用普通 精密电位器代替。 二、十二小时电子钟 〖基本要求〗利用基本数字电路制作小时电子钟,要求显示时分秒;并能实现校时和校分的功能。 〖提高要求〗1)针对影响电子钟走时精度的因素提出改进方案 2)增加日期显示 3)实现倒计时功能 4)整点报时(非语音报时) 5)定时功能 〖参考原理框图〗: 〖主要参考元器件〗:CD4060,74LS74,74LS161,74LS248 电桥电路 供电电路 时钟电路 放大电路 A/D 转换 显示电路 时校 分校 秒校 24进制时计数器 单次或连续的脉冲 60进制分计数器 分频器 60进制秒计数器 译码电路 晶体振荡器 显示电路 译码电路 显示电路 显示电路 译码电路

三、电平感觉检测仪 〖基本要求〗:采用光电式摇晃传感器,其检测范围为±90℃,每摇晃一度传感器就输出一个脉冲信号给计数单元,在给定时间内测量到的脉冲数目就能表明该人的电平感觉,测试时采用头戴式传感器、闭上双目,单脚立地:保持静止,开始测试。定时时间为1分钟 〖提高要求〗 〖参考原理、框图〗: 〖主要参考元器件〗CD4060,555,74LS74 四、便携式快速心律计 基本要求〗利用数字电路制作一便携式快速心律计,用于在较短时间内测量脉搏跳动速率:并使用LED 显示。 〖提高要求〗1)提高测量精度的方法 2)设计能比较准确测量1S 内心跳的电路 〖参考原理框图〗 〖主要参考元器件〗CD4060,4528,4518;4511,14526 五、数字式定时开关 〖基本要求〗设计并制作一数字式定时开关,此开关采用BCD 拨盘预置开关时间,其最大定时时间为9秒,计数时采用倒计时的方式并通过一位LED 数码管显示。此开关预置时间以后通过另一按钮控 制并进行倒计时,当时间显示为0时,开关发出开关信号,输出端呈现高电平,开关处于开态,再按按钮时,倒计时又开始。计时时间到驱动扬声器报警。 〖提高要求〗 l)输出部分加远距离(100m)继电器进行控制 2)延长定时时间 3)探讨提高定时精度的方法 〖参考原理框图〗 外部操作开关 〖主要参考元器〗:CC4511,CC14522,CD4060 传感器 基准时间产生电路 倍频器 放大与整形 控制电路 计数译码 显 示电 路 秒脉冲发生器 计时器 译码显示 控制电路 报警电路

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

数字电子技术课程设计报告设计题目:数字日历

班级:计算机1202 数字电子技术课程设计报告 课程设计任务书

I 数字电子技术课程设计报告 要摘 每页显示一日信用于记载日期等相关信息。日历是一种日常使用的出版物,有多每页显示全年信息的叫年历。息的叫日历,每页显示一个月信息的叫月历,种形式,如挂历、座台历、年历卡等,如今又有电子日历。逢年过节,往往会送亲友日历已显亲情友情可日历在现代社会中是很重要在设计日历倒计而纸制日历对森林保护不利,因此设计电子日历意义重大。的。时器时,采用了模块化的思想,使得设计简单、易懂。本设计能进行月、日、星期的的计数,在社会生活中具有实际的应用价值。 关键字:日历

II 数字电子技术课程设计报告 目录 课程设计任务书............................................................................................................. I 摘要........................................................................................................................... II 1.概述 (1) 2.课程设计任务及要求 (1) 2.1 设计任务 (1) 2.2 设计要求 (1) 3.理论设计 (1) 3.1方案论证 (2) 3.2 系统设计 (2) 3.2.1结构框图及说明 (2) 3.2.2系统原理图及工作原理 (3) 3.3 单元电路设计 (5) 3.3.1单元电路工作原理 (5) 3.3.2元件参数选择 (10) 4. 软件仿真................................................................................................................. 11 4.1 仿真电路图 (11) 4.2 仿真过程 (12) 4.3 仿真结果 (12) 5.安装调试................................................................................................................... 13 5.1安装调试过程 (13)

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,

课程设计(数字日历钟表的设计)

课程设计说明书(论文) 课程名称:课程设计1 设计题目:数字日历钟表的设计 院系: 班级: 设计者: 学号: 设计时间:2013-6-19

哈尔滨工业大学 哈尔滨工业大学课程设计任务书 姓名:院(系): 专业:班号: 任务起至日期:2013 年 5 月日至2013 年 6 月19 日 课程设计题目:数字日历钟的设计 已知技术参数和设计要求: 1.数码管显示:秒、分、时(可同时显示,也可轮换显示) 2.能够设置时间,“设置按键”数量不限,以简单合理易用为好。 3.误差:1 秒/天(报告中要论述分析是否满足要求) 扩展(优秀必作) 1.设置校准键:当数字钟显示在“整点±30 秒”范围时,按动“校准键”,数字钟即刻被调整到整点,消除了±30 秒的误差。 2.加上“星期”显示(可以预置),并可以对其进行设置。 其他要求: 1.按动员老师的要求、课程设计报告规范进行设计 2.不允许使用时数字钟表、日历专用IC 电路。 3.可以使用通用器件:模拟、数字、单片机、EPLD、模块电路等。 4.设计方法不限。

工作量: 1. 查找资料 2. 设计论证方案 3. 具体各个电路选择、元器件选择和数值计算 4. 具体说明各部分电路图的工作原理 5. 绘制电路原理图 6. 绘制印刷电路图 7. 元器件列表 8. 编写调试操作 9. 打印论文 工作计划安排: 1. 查阅资料: 2. 方案论证 3. 设计、分析、计算、模拟调试、仿真、设计原理 4. 撰写报告:课程设计要求、方案论证、原理论述(原理框图、原理图)、分析、计算、仿真, PCB 图的设计,误差分析、总结,参考文献等 5. 上交课程设计论文2013-6-19 同组设计者及分工:

集成电路课程设计(CMOS二输入及门)

) 课程设计任务书 学生姓名:王伟专业班级:电子1001班 指导教师:刘金根工作单位:信息工程学院题目: 基于CMOS的二输入与门电路 初始条件: 计算机、Cadence软件、L-Edit软件 要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求) & 1、课程设计工作量:2周 2、技术要求: (1)学习Cadence IC软件和L-Edit软件。 (2)设计一个基于CMOS的二输入的与门电路。 (3)利用Cadence和L-Edit软件对该电路进行系统设计、电路设计和版图设计,并进行相应的设计、模拟和仿真工作。 3、查阅至少5篇参考文献。按《武汉理工大学课程设计工作规范》要求撰写设计报告书。全文用A4纸打印,图纸应符合绘图规范。 时间安排: 布置课程设计任务、选题;讲解课程设计具体实施计划与课程设计报告格式的要求;课程设计答疑事项。 | 学习Cadence IC和L-Edit软件,查阅相关资料,复习所设计内容的基本理论知识。 对二输入与门电路进行设计仿真工作,完成课设报告的撰写。 提交课程设计报告,进行答辩。 指导教师签名:年月日系主任(或责任教师)签名:年月日

目录 # 摘要 (2) 绪论…....………………………………………….………………….. ..3 一、设计要求 (4) 二、设计原理 (4) 三、设计思路 (4) 3.1、非门电路 (4) 3.2、二输入与非门电路 (6) 、二输入与门电路 (8) } 四、二输入与门电路设计 (9) 4.1、原理图设计 (9) 4.2、仿真分析 (10) 4.3、生成网络表 (13) 五、版图设计........................ (20) 、PMOS管版图设计 (20) 、NMOS管版图设计 (22) 、与门版图设计 (23)

数字日历电路设计数字电子技术课程设计报告word精品

数字电子技术课程设计报告设计题目:数字日历 班级:计算机1202

设计目的: 1. 进一步熟悉中、小规模数字集成电路的工作原理及使用方法。 2. 掌握小型数字系统的设计、组装与调试方法。 设计内容: 用常用的中、小规模数字集成电路设计一个小型数字系统,自行设计、完成系统的功能。 设计要求: 1. 理论设计部分 ⑴独立完成系统的原理设计。说明系统实现的功能,应达到技术指标,进行方案论证,确定设计方案。 ⑵画出电路图,说明各部分电路的工作原理,初步选定所使用的各种器件的主要参数及型号,列出元器件明细表。 ⑶系统中包含的中、小规模集成电路的种类至少在六种以上。 2. 模拟仿真 ⑴根据理论设计用multisim 10在计算机上进行仿真。验证所设计方案的正确性。⑵分析电路的工作原理,写出仿真报告。 3. 安装调试部分 ⑴实现所设计的小型数字系统,并进行单元测试和系统调试,完成系统功能。 ⑵若系统出现故障,排除系统故障,分析并记录系统产生故障的原因,并将此部分内容写在

报告中。 摘要 日历是一种日常使用的出版物,用于记载日期等相关信息。每页显示一日信息的叫日历,每页显示一个月信息的叫月历,每页显示全年信息的叫年历。有多种形式,如挂历、座台历、年历卡等,如今又有电子日历。 逢年过节,往往会送亲友日历已显亲情友情可日历在现代社会中是很重要的。而纸制日历对森林保护不利,因此设计电子日历意义重大。在设计日历倒计时器时,采用了模块化的思想,使得设计简单、易懂。本设计能进行月、日、星 期的的计数,在社会生活中具有实际的应用价值。 关键字:日历

目录 课程设计任务书.............................................................. 1...摘要........................................................................... II 1. 概述..................................................................... 1.1 2. 课程设计任务及要求...................................................... 1. 2.1设计任务............................................................ 1. 2.2设计要求............................................................ 1. 3理论设计.................................................................. 1.. 3.1方案论证............................................................ 2. 3.2系统设计............................................................ 2. 3.2.1结构框图及说明 (2) 3.2.2系统原理图及工作原理 (3) 3.3单元电路设计........................................................ 5. 3.3.1单元电路工作原理 (5) 3.3.2元件参数选择 (10) 4. 软件仿真 (11) 4.1仿真电路图 (11) 4.2仿真过程 (12) 4.3仿真结果 (12) 5. 安装调试................................................................ .13 5.1安装调试过程....................................................... 1.3 5.2安装调试结果....................................................... 1.4 5.3故障分析........................................................... 1.5 6. 结论 (16) 7. 使用仪器设备清单 (17) 8. 参考文献................................................................ 1.7

日历设计实验报告

佛山科学技术学院 《可视化编程技术》课程设计报告 时钟日历设计 学生姓名: 学号: 年级专业: 指导老师: 学院: 广东★佛山 提交日期:2014年6月 目录 1. 前言 (2) 2.概要设计 (3) 2.1 开发环境 (3) 2.2 时钟日历功能 (3) 2.3 界面设计 (3) 2.4 类的框架结构图 (4) 3. 详细设计 (5) 3.1 使用的java类的说明 (5) 3.2 类的主要方法 (6) 3.2.1 设置3个按钮 (6) 3.2.2 日历、时钟、界面的绘制 (7) 3.2.3 导入素材文件 (10) 3.2.4 设计总体认识 (11) 4. 运行结果 (11) 5. 测试分析 (11) 5.1 程序运行情况 (11) 5.2 程序异常处理 (12) 6. 源程序....................................................................................13 参考文献.......................................................................................23 设计总结 (24) 摘要:该程序是一个图形界面的简单的java时钟日历,具有良好的界面。该程序可以自 动获取系统日期和时间。还可以翻看万年历,在点选日期的时候会有音效。程序中还有个会 移动的图形条,在右侧则有一个时钟图形,会跟着实时时间动。下方三个按钮可以播放一个 声音,play则播放一次,loop则循环播放, stop则停止播放声音。 关键字:java、日历类、时钟类、声音类、方法、事件 1 前言 随着科学技术的不断发展,计算机已经成为我们工作学习和生活中不可缺少的工具。文 本编辑器是个人计算机最司空见惯的应用程序了,在学习了java语言之后,我决定使用java 语言编写一个简单的计算器,可以实现简单的运算功能,满足日常基本的工作学习和娱乐需 要。 java是由sun公司开发的新一代纯面向对象的网络编程语言。其目标是建立一种在任意 种机器、任一种操作系统的网络环境中运行的软件,实行所谓的“程序写一次,到处运行” 的目标。正因为如此,java已成为当今internet上最流行、最受欢迎的一种程序开发语言。

电子万年历课程设计

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

摘要 单片机作为当今领域应用广泛的电子器件,以其极高的性能价格比,受到人们的重视和关注,应用很广、发展很快。单片机体积小、重量轻、抗干扰能力强、环境要求不高、价格低廉、可靠性高、灵活性好、开发较为容易。由于具有上述优点,在我国,单片机已广泛地应用在工业自动化控制、自动检测、智能仪器仪表、家用电器、电力电子、机电一体化设备等各个方面,而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)

CMOS模拟集成电路课程设计

电子科学与技术系 课程设计 中文题目:CMOS二输入与非门的设计 英文题目: The design of CMOS two input NAND gate 姓名:张德龙 学号: 1207010128 专业名称:电子科学与技术 指导教师:宋明歆 2015年7月4日

CMOS二输入与非门的设计 张德龙哈尔滨理工大学电子科学与技术系 [内容摘要]随着微电子技术的快速发展,人们生活水平不断提高,使得科学技术已融入到社会生活中每一个方面。而对于现代信息产业和信息社会的基础来讲,集成电路是改造和提升传统产业的核心技术。随着全球信息化、网络化和知识经济浪潮的到来,集成电路产业的地位越来越重要,它已成为事关国民经济、国防建设、人民生活和信息安全的基础性、战略性产业。 集成电路有两种。一种是模拟集成电路。另一种是数字集成电路。本次课程设计将要运用S-Edit、L-edit、以及T-spice等工具设计出CMOS二输入与非门电路并生成spice文件再画出电路版图。 [关键词]CMOS二输入与非门电路设计仿真

目录 1.概述 (1) 2.CMOS二输入与非门的设计准备工作 (1) 2-1 .CMOS二输入与非门的基本构成电路 (1) 2-2.计算相关参数 (2) 2-3.电路spice文件 (3) 2-4.分析电路性质 (3) 3、使用L-Edit绘制基本CMOS二输入与非门版图 (4) 3-1.CMOS二输入与非门设计的规则与布局布线 (4) 3-2.CMOS二输入与非门的版图绘制与实现 (5) 4、总结 (6) 5、参考文献 (6)

1.概述 本次课程设计将使用S-Edit画出CMOS二输入与非门电路的电路图,并用T-spice生成电路文件,然后经过一系列添加操作进行仿真模拟,计算相关参数、分析电路性质,在W-edit中使电路仿真图像,最后将电路图绘制电路版图进行对比并且做出总结。 2.CMOS二输入与非门的设计准备工作 2-1 .CMOS二输入与非门的基本构成电路 使用S-Edit绘制的CMOS与非门电路如图1。 图1 基本的CMOS二输入与非门电路 1

数字日历电路设计EDA实训

成绩 批阅教师 日期 桂林电子科技大学 实训报告 2016-2017学年第1学期 学院海洋信息工程学院 课程EDA综合实训 姓名钟朝林

学号 1416030218 指导老师覃琴 日期2016/12/29 实训题目:数字日历电路的设计 1 概述 1.1 设计要求 1.1.1 设计任务 设计并制作一台数字日历。 1.1.2 性能指标要求 ①用EDA实训仪的I/O设备和PLD芯片实现数字日历的设计。 ②数字日历能够显示年、月、日、时、分和秒。 ③用EDA实训仪上的8只八段数码管分两屏分别显示年、月、日和时、分、秒,即在一定时间段内显示年、月、日(如20080101),然后在另一时间段内显示时、分、秒(如00123625),两个时间段能自动倒换。 ④数字日历具有复位和校准年、月、日、时、分、秒的按钮,但校年和校时同用一个按钮,即在显示年、月、日时用此按钮校年,在显示时、分、秒时则用此按钮校时,依此类推。 1.2 总体设计基本原理及框图 1.2.1 基本原理 日历主要由年月日模块、时分秒模块、控制模块、显示模块、校时模块组成。采 用3个公用按钮j1、j2、和j3完成时分秒或年月日的校时,用8只七段数码管分 时完成时分秒或年月日的显示。设计电路的计时器模块(jsq24)用于完成一天 的24小时计时;年月日模块接收计时器模块送来的“天”脉冲进行计数,得到 日月年的显示结果,控制模块产生控制信号k,控制数码显示器显示年月日,还 是时分秒,或者自动轮流显示;校时选择模块在k信号的控制下,选择将j1、j2 和j3这3个校时按钮产生的信号是送到计时器模块的校秒、校分和校时输入端, 还是送到年月日模块的校天、校月、校年输入端;显示选择模块在k信号的控制 下,选择是将计时器模块的时、分、秒状态信号,还是将年月日模块的年、月、 日状态信号送到数码管显示器显示。 1.2.2 总体框图

相关主题
文本预览
相关文档 最新文档